platform/kernel/linux-3.10.git
9 years agoARM: dts: add dt node for sss module for exynos5250/5420
Naveen Krishna Chatradhi [Mon, 17 Mar 2014 22:38:04 +0000 (07:38 +0900)]
ARM: dts: add dt node for sss module for exynos5250/5420

This patch adds the device tree node for SSS module
found on Exynos5420 and Exynos5250

Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: use macros in clock bindings for exynos5420
Andrzej Hajda [Wed, 26 Feb 2014 00:53:30 +0000 (09:53 +0900)]
ARM: dts: use macros in clock bindings for exynos5420

The patch replaces magic numbers with macros defined in DT header
in exynos5420 clock bindings.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Tomasz Figa <t.figa@samsung.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add I2S nodes to exynos5420
Sachin Kamat [Sun, 23 Feb 2014 23:47:28 +0000 (08:47 +0900)]
ARM: dts: Add I2S nodes to exynos5420

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add ADMA node to exynos5420
Sachin Kamat [Sun, 23 Feb 2014 23:47:28 +0000 (08:47 +0900)]
ARM: dts: Add ADMA node to exynos5420

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Re-organize RTC status for exynos5420
Sachin Kamat [Sun, 23 Feb 2014 23:47:28 +0000 (08:47 +0900)]
ARM: dts: Re-organize RTC status for exynos5420

Some boards might not have RTC xtal, so RTC shouldn't really be
enabled by default. Enable it in the required board files.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: update watchdog device nodes for exynos5250 and exynos5420
Leela Krishna Amudala [Sat, 15 Feb 2014 16:58:29 +0000 (01:58 +0900)]
ARM: dts: update watchdog device nodes for exynos5250 and exynos5420

In EXYNOS5 series SoCs, PMU has registers to enable/disable mask/unmask
watchdog timer which is not the case with s3c series SoCs so, there is a
need to have different compatible names for watchdog to handle these pmu
registers access.

Hence this patch removes watchdog node from Exynos5.dtsi common file and
make it separate by updating existing node in Exynos5250 and adding new node
to Exynos5420. This patch also makes the watchdog node enabled by default

Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add pmu sysreg node to exynos5250 and exynos5420
Leela Krishna Amudala [Sat, 15 Feb 2014 16:57:56 +0000 (01:57 +0900)]
ARM: dts: Add pmu sysreg node to exynos5250 and exynos5420

This patch adds pmusysreg node to exynos5250 and exynos5420 dtsi files to
handle PMU register accesses in a centralized way using syscon driver

Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: exynos5420: add input clocks to audss clock controller
Andrew Bresticker [Wed, 25 Sep 2013 21:12:52 +0000 (14:12 -0700)]
ARM: dts: exynos5420: add input clocks to audss clock controller

Specify the remaining input clocks (pll_ref, pll_in, and sclk_pcm_in)
for the AudioSS clock controller.

Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Acked-by: Mike Turquette <mturquette@linaro.org>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
9 years agoARM: dts: Add device nodes for TMU blocks for exynos5420
Naveen Krishna Chatradhi [Fri, 20 Dec 2013 20:59:49 +0000 (05:59 +0900)]
ARM: dts: Add device nodes for TMU blocks for exynos5420

Exynos5420 SoC has per core thermal management unit.
5 TMU channels 4 for CPUs and 5th for GPU.

This patch adds the device tree nodes to the DT device list.

Nodes carry the misplaced second base address and the second
clock to access the misplaced base address.

Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: add pwm DT nodes to Exynos5250 and Exynos5420
Leela Krishna Amudala [Wed, 18 Dec 2013 17:41:02 +0000 (02:41 +0900)]
ARM: dts: add pwm DT nodes to Exynos5250 and Exynos5420

Add the device-tree binding for the PWM controller to Exynos5250 and Exynos5420

Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Signed-off-by: Olof Johansson <olofj@chromium.org>
Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add SPI nodes to the exynos5420 device tree file
Leela Krishna Amudala [Wed, 18 Dec 2013 17:36:37 +0000 (02:36 +0900)]
ARM: dts: Add SPI nodes to the exynos5420 device tree file

Add SPI device tree nodes to Exynos5420 SoC

Signed-off-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Reviewed-by: Andrew Bresticker <abrestic@chromium.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add DMA controller node info on Exynos5420
Padmavathi Venna [Wed, 18 Dec 2013 17:32:41 +0000 (02:32 +0900)]
ARM: dts: Add DMA controller node info on Exynos5420

This patch adds dma controller node info on Exynos5420.
Exynos5420 has adma for audio IPs. As adma clk is dependent
on audss clk provider that will be added later.

Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add hs-i2c nodes to exynos5420
Sachin Kamat [Wed, 11 Dec 2013 22:01:11 +0000 (07:01 +0900)]
ARM: dts: Add hs-i2c nodes to exynos5420

Added high speed I2C nodes to Exynos5420 DT file.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: populate cpu node entries to 8 cpus for exynos5420
Chander Kashyap [Sun, 1 Dec 2013 22:49:59 +0000 (07:49 +0900)]
ARM: dts: populate cpu node entries to 8 cpus for exynos5420

Exynos5420 is octa-core SoC from Samsung.
Hence populate all the CPU node entries.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoclocksource: mct: extend mct to support 8 local interrupts for Exynos5420
Chander Kashyap [Sun, 1 Dec 2013 22:48:23 +0000 (07:48 +0900)]
clocksource: mct: extend mct to support 8 local interrupts for Exynos5420

Exynos5420 is octa-core SoC from Samsung. Hence extend exynos-mct clocksource
driver to support 8 local interrupts.

Also extend dts entries for 8 interrupts.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add device nodes for GScaler blocks for exynos5420
Leela Krishna Amudala [Sun, 20 Oct 2013 20:59:06 +0000 (05:59 +0900)]
ARM: dts: Add device nodes for GScaler blocks for exynos5420

Adds G-Scaler device nodes to the DT device list

Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add dwmmc DT nodes for exynos5420 SOC
Yuvaraj Kumar C D [Sun, 20 Oct 2013 20:57:00 +0000 (05:57 +0900)]
ARM: dts: Add dwmmc DT nodes for exynos5420 SOC

This patch adds the mmc device tree node entries for exynos5420 SOC.
Exynos5420 has a different version of DWMMC controller,so a new
compatible string is used to distinguish it from the prior SOC's.

Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: add dt nodes for hdmi subsystem for exynos5420
Rahul Sharma [Mon, 7 Oct 2013 21:49:46 +0000 (06:49 +0900)]
ARM: dts: add dt nodes for hdmi subsystem for exynos5420

Add hdmi and mixer device tree nodes for Exynos 5420 SoC.

Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: add i2c device nodes for Exynos5420
Andrew Bresticker [Mon, 7 Oct 2013 21:49:46 +0000 (06:49 +0900)]
ARM: dts: add i2c device nodes for Exynos5420

This adds device-tree nodes for the i2c busses on Exynos
5420 platforms.

Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: add ADC device tree node for exynos5420/5250
Naveen Krishna Chatradhi [Sun, 25 Aug 2013 17:44:30 +0000 (02:44 +0900)]
ARM: dts: add ADC device tree node for exynos5420/5250

Add ADC device tree node for exynos5420 and exynos5250

Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add RTC DT node to Exynos5420 SoC
Vikas Sajjan [Sun, 25 Aug 2013 17:28:05 +0000 (02:28 +0900)]
ARM: dts: Add RTC DT node to Exynos5420 SoC

Adds RTC DT node to Exynos5420 SoC

Signed-off-by: Vikas Sajjan <vikas.sajjan@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: add audio clock controller for exynos5420
Andrew Bresticker [Sun, 18 Aug 2013 19:58:38 +0000 (04:58 +0900)]
ARM: dts: add audio clock controller for exynos5420

This adds device-tree bindings for the audio subsystem clock controller
on Exynos 5420.

Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/57712
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Correct the /include entry on exynos5420 dtsi file
Padmavathi Venna [Sun, 18 Aug 2013 19:56:33 +0000 (04:56 +0900)]
ARM: dts: Correct the /include entry on exynos5420 dtsi file

This patch corrects the /include to #include on exynos5420

Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add MFC node for exynos 5420
Arun Kumar K [Sun, 18 Aug 2013 19:43:01 +0000 (04:43 +0900)]
ARM: dts: Add MFC node for exynos 5420

The patch adds MFC nodes for exynos 5420.

Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add DP controller DT node to exynos5420 SoC
Vikas Sajjan [Wed, 14 Aug 2013 08:15:06 +0000 (17:15 +0900)]
ARM: dts: Add DP controller DT node to exynos5420 SoC

Adds DP controller DT node to exynos5420 SoC

Signed-off-by: Vikas Sajjan <vikas.sajjan@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add FIMD DT node to exynos5420 DTS files
Vikas Sajjan [Wed, 14 Aug 2013 08:08:33 +0000 (17:08 +0900)]
ARM: dts: Add FIMD DT node to exynos5420 DTS files

Adds FIMD DT node to exynos5420 based SMDK. Also adds display-timimg
information node.

Signed-off-by: Vikas Sajjan <vikas.sajjan@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add basic PM domains for EXYNOS5420
Yadwinder Singh Brar [Wed, 14 Aug 2013 08:08:32 +0000 (17:08 +0900)]
ARM: dts: Add basic PM domains for EXYNOS5420

Add DT nodes for gsc, isp, mfc, disp, mau, g2d and msc PM domains.

Signed-off-by: Yadwinder Singh Brar <yadi.brar@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Remove '0x's from Exynos5420 DTS file
Lee Jones [Mon, 5 Aug 2013 18:04:59 +0000 (03:04 +0900)]
ARM: dts: Remove '0x's from Exynos5420 DTS file

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: add pinctrl support to EXYNOS5420
Leela Krishna Amudala [Wed, 19 Jun 2013 13:16:06 +0000 (22:16 +0900)]
ARM: dts: add pinctrl support to EXYNOS5420

Add the required pin configuration support to EXYNOS5420
using pinctrl interface.

Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Acked-by: Tomasz Figa <t.figa@samsung.com>
Tested-by : Sunil Joshi <joshi@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Add initial device tree support for EXYNOS5420
Chander Kashyap [Tue, 18 Jun 2013 15:29:35 +0000 (00:29 +0900)]
ARM: dts: Add initial device tree support for EXYNOS5420

Add initial device tree nodes for EXYNOS5420 SoC and SMDK5420 board.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: exynos5: add system register property
YoungJun Cho [Thu, 17 Jul 2014 09:01:27 +0000 (18:01 +0900)]
ARM: dts: exynos5: add system register property

This patch adds sysreg property to fimd device node
which is required to use I80 interface.

Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoARM: dts: SAMSUNG: Add aliases of UART nodes
Tomasz Figa [Thu, 26 Jun 2014 11:24:35 +0000 (13:24 +0200)]
ARM: dts: SAMSUNG: Add aliases of UART nodes

This patch adds alias entries for UART nodes of all SoCs using
samsung-uart compatible UART controllers, so that the dependency on
probe order is removed and deterministic device naming is assured.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
9 years agoARM: dts: update watchdog device nodes for exynos5250 and exynos5420
Leela Krishna Amudala [Sat, 15 Feb 2014 16:58:29 +0000 (01:58 +0900)]
ARM: dts: update watchdog device nodes for exynos5250 and exynos5420

In EXYNOS5 series SoCs, PMU has registers to enable/disable mask/unmask
watchdog timer which is not the case with s3c series SoCs so, there is a
need to have different compatible names for watchdog to handle these pmu
registers access.

Hence this patch removes watchdog node from Exynos5.dtsi common file and
make it separate by updating existing node in Exynos5250 and adding new node
to Exynos5420. This patch also makes the watchdog node enabled by default

Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Fix missing spaces after labels for exynos
Tomasz Figa [Wed, 18 Dec 2013 18:17:54 +0000 (03:17 +0900)]
ARM: dts: Fix missing spaces after labels for exynos

For consistency with other device tree nodes, this patch adds missing
spaces after node labels.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Move dwmmc nodes from exynos5.dtsi to exynos5250.dtsi
Yuvaraj Kumar C D [Sun, 20 Oct 2013 20:47:14 +0000 (05:47 +0900)]
ARM: dts: Move dwmmc nodes from exynos5.dtsi to exynos5250.dtsi

Exynos5 series SOC's 5250 and 5420 have different versions of
DWMMC controller.So there is a new compatible string to distinguish
between them.So these nodes should be moved out of Exynos5 series
common device tree source to SOC specific device tree source.

Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Fix the RTC DT node name for Exynos5250
Vikas Sajjan [Sun, 25 Aug 2013 17:28:05 +0000 (02:28 +0900)]
ARM: dts: Fix the RTC DT node name for Exynos5250

Fixes the RTC DT node name for Exynos5250 as per the DT node naming
convention.

Signed-off-by: Vikas Sajjan <vikas.sajjan@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Update DP controller DT Node for Exynos5 based SoCs
Vikas Sajjan [Wed, 14 Aug 2013 08:15:00 +0000 (17:15 +0900)]
ARM: dts: Update DP controller DT Node for Exynos5 based SoCs

Moves the properties of DP controller to exynos5.dtsi which are common
across exynos5 SoCs like Exynos5250 and Exynos5420.

The PHY DP Node is based on Jingoo Han's <jg1.han@samsung.com> patch
at https://patchwork.linuxtv.org/patch/19189/

Signed-off-by: Vikas Sajjan <vikas.sajjan@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: Update FIMD DT node for Exynos5 SoCs
Vikas Sajjan [Wed, 14 Aug 2013 08:08:32 +0000 (17:08 +0900)]
ARM: dts: Update FIMD DT node for Exynos5 SoCs

Moves the properties of FIMD DT node which are common across Exynos5 based
SoCs like Exynos5250 and Exynos5420 to exynos5.dtsi

Signed-off-by: Vikas Sajjan <vikas.sajjan@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoARM: dts: fork out common EXYNOS5 nodes
Chander Kashyap [Tue, 18 Jun 2013 15:29:34 +0000 (00:29 +0900)]
ARM: dts: fork out common EXYNOS5 nodes

In preparation of adding support for EXYNOS5420, which has many
peripherals similar to EXYNOS5250, a new common EXYNOS5 device tree
source file is created out of the exising EXYNOS5250 device tree
source file. Only the common nodes required for basic boot up on
EXYNOS5420 based boards are moved into this new file and the rest
of the common nodes would be moved subsequently.

EXYNOS5440 SoC is quite different from EXYNOS5250 and EXYNOS5420.
Hence it is not possible to reuse "exynos5.dtsi" for EXYNOS5440.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agodrm/exynos: add support for exynos5420 mixer
Rahul Sharma [Wed, 19 Jun 2013 12:51:08 +0000 (18:21 +0530)]
drm/exynos: add support for exynos5420 mixer

Add support for exynos5420 mixer IP in the drm mixer driver.

Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Acked-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agodrm/exynos: enable support for exynos5420 hdmi device
Rahul Sharma [Sun, 20 Apr 2014 10:21:17 +0000 (15:51 +0530)]
drm/exynos: enable support for exynos5420 hdmi device

Enable support for hdmi for exynos5420 hdmiphy. Add
compatible string in the of_match table. Also added
hdmiphy configuration values for exynos5420.

Signed-off-by: Rahul Sharma <Rahul.Sharma@samsung.com>
Signed-off-by: Shirish S <s.shirish@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoi2c: exynos5: remove extra line and fix an assignment
Naveen Krishna Ch [Thu, 26 Jun 2014 05:14:58 +0000 (10:44 +0530)]
i2c: exynos5: remove extra line and fix an assignment

This patch does the following in exynos5_i2c_message_start() function
1. Fixes an assignment
   As, "i2c_auto_conf" is initialized to '0' at the beginning of the
   function and HSI2C_READ_WRITE is defined as (1u << 16)

   Using "|=" for the first assignment is more readable.

2. Removes an extra line

Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: exynos5: remove an unnecessary read of FIFO_STATUS register
Naveen Krishna Ch [Thu, 26 Jun 2014 05:14:57 +0000 (10:44 +0530)]
i2c: exynos5: remove an unnecessary read of FIFO_STATUS register

This patch removes an extra read of FIFO_STATUS register in the interrrupt
service routine. Which is read again before the actual use.

Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: exynos5: Properly use the "noirq" variants of suspend/resume
Doug Anderson [Wed, 25 Jun 2014 16:39:20 +0000 (09:39 -0700)]
i2c: exynos5: Properly use the "noirq" variants of suspend/resume

The original code for the exynos i2c controller registered for the
"noirq" variants.  However during review feedback it was moved to
SIMPLE_DEV_PM_OPS without anyone noticing that it meant we were no
longer actually "noirq" (despite functions named
exynos5_i2c_suspend_noirq and exynos5_i2c_resume_noirq).

i2c controllers that might have wakeup sources on them seem to need to
resume at noirq time so that the individual drivers can actually read
the i2c bus to handle their wakeup.

NOTE: I took the original review feedback from Wolfram and added
poweroff, thaw, freeze, restore.

This patch has only been compile-tested since I don't have all the
patches needed to make my machine using this i2c driver actually
suspend/resume.

Signed-off-by: Doug Anderson <dianders@chromium.org>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: remove unnecessary OOM messages
Jingoo Han [Tue, 13 May 2014 01:51:58 +0000 (10:51 +0900)]
i2c: remove unnecessary OOM messages

The site-specific OOM messages are unnecessary, because they
duplicate the MM subsystem generic OOM message. For example,
k.alloc and v.alloc failures use dump_stack().

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Jean Delvare <jdelvare@suse.de>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Felipe Balbi <balbi@ti.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: exynos5: add support for HSI2C on Exynos5260 SoC
Naveen Krishna Ch [Mon, 28 Apr 2014 08:59:58 +0000 (14:29 +0530)]
i2c: exynos5: add support for HSI2C on Exynos5260 SoC

HSI2C module on Exynos5260 differs from current modules in
following ways:
1.  HSI2C on Exynos5260 has fifo_depth of 16bytes
2.  Module needs to be reset as a part of init sequence.

Hence, Following changes are involved.
1. Add a new compatible string and Updates the Documentation dt bindings.
2. Introduce a variant struct to support the changes in H/W
3. Reset the module during init. Thus, bringing the module back
to default state irrespective of what firmware did with it.

Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: exynos5: remove unnecessary cast of void pointer
Jingoo Han [Tue, 11 Mar 2014 01:22:59 +0000 (10:22 +0900)]
i2c: exynos5: remove unnecessary cast of void pointer

Remove unnecessary cast of void pointer, because 'algo_data' of
'struct i2c_adapter' is a void pointer. Casting the void pointer
is redundant. The conversion from void pointer to any other
pointer type is guaranteed by the C programming language.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Reviewed-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: exynos5: add CONFIG_PM_SLEEP to suspend/resume functions
Jingoo Han [Tue, 11 Mar 2014 01:21:57 +0000 (10:21 +0900)]
i2c: exynos5: add CONFIG_PM_SLEEP to suspend/resume functions

Add CONFIG_PM_SLEEP to suspend/resume functions to fix the following
build warning when CONFIG_PM_SLEEP is not selected. This is because
sleep PM callbacks defined by SIMPLE_DEV_PM_OPS are only used when
the CONFIG_PM_SLEEP is enabled.

  warning: 'exynos5_i2c_suspend_noirq' defined but not used [-Wunused-function]
  warning: 'exynos5_i2c_resume_noirq' defined but not used [-Wunused-function]

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: delete non-required instances of include <linux/init.h>
Paul Gortmaker [Tue, 21 Jan 2014 21:22:54 +0000 (16:22 -0500)]
i2c: delete non-required instances of include <linux/init.h>

None of these files are actually using any __init type directives
and hence don't need to include <linux/init.h>.  Most are just a
left over from __devinit and __cpuinit removal, or simply due to
code getting copied from one driver to the next.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agotreewide: Fix typos in printk
Masanari Iida [Sun, 8 Dec 2013 15:22:53 +0000 (00:22 +0900)]
treewide: Fix typos in printk

Correct spelling typo in various part of kernel

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
9 years agoi2c: exynos5: Remove incorrect clk_disable_unprepare
Sachin Kamat [Wed, 6 Nov 2013 09:39:18 +0000 (15:09 +0530)]
i2c: exynos5: Remove incorrect clk_disable_unprepare

clk_disable_unprepare in remove causes an imbalance and hence gives
the below crash on module remove. While at it also remove some
duplicate code from probe.

/ $ rmmod i2c-exynos5
[    6.996374] ------------[ cut here ]------------
[    6.999523] WARNING: CPU: 2 PID: 1137 at drivers/clk/clk.c:842 clk_disable+0x18/0x24()
[    7.007403] Modules linked in: i2c_exynos5(-)
[    7.011747] CPU: 2 PID: 1137 Comm: rmmod Not tainted 3.12.0-next-20131105-00083-g16f4799-dirty #21
[    7.020696] [<c0014e0c>] (unwind_backtrace+0x0/0xf4) from [<c0011784>] (show_stack+0x10/0x14)
[    7.029190] [<c0011784>] (show_stack+0x10/0x14) from [<c037acd4>] (dump_stack+0x7c/0xb0)
[    7.037255] [<c037acd4>] (dump_stack+0x7c/0xb0) from [<c001e0ac>] (warn_slowpath_common+0x6c/0x88)
[    7.046190] [<c001e0ac>] (warn_slowpath_common+0x6c/0x88) from [<c001e164>] (warn_slowpath_null+0x1c/0x24)
[    7.055818] [<c001e164>] (warn_slowpath_null+0x1c/0x24) from [<c02dcde4>] (clk_disable+0x18/0x24)
[    7.064670] [<c02dcde4>] (clk_disable+0x18/0x24) from [<bf0002d4>] (exynos5_i2c_remove+0x1c/0x34 [i2c_exynos5])
[    7.074736] [<bf0002d4>] (exynos5_i2c_remove+0x1c/0x34 [i2c_exynos5]) from [<c02274a8>] (__device_release_driver+0x58/0xb0)
[    7.085836] [<c02274a8>] (__device_release_driver+0x58/0xb0) from [<c0227b88>] (driver_detach+0xac/0xb0)
[    7.095291] [<c0227b88>] (driver_detach+0xac/0xb0) from [<c02271c0>] (bus_remove_driver+0x4c/0xa0)
[    7.104227] [<c02271c0>] (bus_remove_driver+0x4c/0xa0) from [<c00725dc>] (SyS_delete_module+0x124/0x194)
[    7.113682] [<c00725dc>] (SyS_delete_module+0x124/0x194) from [<c000e2e0>] (ret_fast_syscall+0x0/0x30)
[    7.122957] ---[ end trace 23bb6e4e0bf52196 ]---

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agoi2c: exynos5: add High Speed I2C controller driver
Naveen Krishna Ch [Wed, 16 Oct 2013 05:30:42 +0000 (11:00 +0530)]
i2c: exynos5: add High Speed I2C controller driver

Adds support for High Speed I2C driver found in Exynos5 and
later SoCs from Samsung.

Driver only supports Device Tree method.

Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Taekgyun Ko <taeggyun.ko@samsung.com>
Reviewed-by: Simon Glass <sjg@google.com>
Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
Signed-off-by: Andrew Bresticker <abrestic@google.com>
[wsa: rebased to v3.12-rc4 (no of_i2c.h anymore)]
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
9 years agodrm/exynos: add support for apb mapped phys in hdmi driver
Rahul Sharma [Fri, 9 May 2014 06:34:18 +0000 (15:34 +0900)]
drm/exynos: add support for apb mapped phys in hdmi driver

Previous SoCs have hdmi phys which are accessible through
dedicated i2c lines. Newer SoCs have Apb mapped hdmi phys.
Hdmi driver is modified to support apb mapped phys.

Signed-off-by: Rahul Sharma <Rahul.Sharma@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agosched: replace INIT_COMPLETION with reinit_completion
Wolfram Sang [Thu, 14 Nov 2013 22:32:01 +0000 (14:32 -0800)]
sched: replace INIT_COMPLETION with reinit_completion

For the casual device driver writer, it is hard to remember when to use
init_completion (to init a completion structure) or INIT_COMPLETION (to
*reinit* a completion structure).  Furthermore, while all other
completion functions exepct a pointer as a parameter, INIT_COMPLETION
does not.  To make it easier to remember which function to use and to
make code more readable, introduce a new inline function with the proper
name and consistent argument type.  Update the kernel-doc for
init_completion while we are here.

Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org> (personally at LCE13)
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
9 years agoARM: EXYNOS: Fix core ID used by platsmp and hotplug code
Tomasz Figa [Tue, 15 Jul 2014 17:59:18 +0000 (02:59 +0900)]
ARM: EXYNOS: Fix core ID used by platsmp and hotplug code

When CPU topology is specified in device tree, cpu_logical_map() does
not return core ID anymore, but rather full MPIDR value. This breaks
existing calculation of PMU register offsets on Exynos SoCs.

This patch fixes the problem by adjusting the code to use only core ID
bits of the value returned by cpu_logical_map() to allow CPU topology to
be specified in device tree on Exynos SoCs.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
9 years agoARM: EXYNOS: Add generic cpu power control functions for exynos SoCs
Leela Krishna Amudala [Thu, 15 May 2014 19:23:24 +0000 (04:23 +0900)]
ARM: EXYNOS: Add generic cpu power control functions for exynos SoCs

Add generic cpu power control functions for exynos based
SoCS for cpu power up/down and to know the cpu status.

Signed-off-by: Leela Krishna Amudala <leela.krishna@linaro.org>
Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoclocksource: mct: extend mct to support 8 local interrupts for Exynos5420
Chander Kashyap [Sun, 1 Dec 2013 22:48:23 +0000 (07:48 +0900)]
clocksource: mct: extend mct to support 8 local interrupts for Exynos5420

Exynos5420 is octa-core SoC from Samsung. Hence extend exynos-mct clocksource
driver to support 8 local interrupts.

Also extend dts entries for 8 interrupts.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoclocksource: exynos_mct: use (request/free)_irq calls for local timer registration
Chander Kashyap [Tue, 18 Jun 2013 15:29:35 +0000 (00:29 +0900)]
clocksource: exynos_mct: use (request/free)_irq calls for local timer registration

Replace the (setup/remove)_irq calls for local timer registration with
(request/free)_irq calls. This generalizes the local timer registration API.
Suggested by Mark Rutland.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agoserial: samsung: select EXYNOS specific driver data if ARCH_EXYNOS is defined
Chander Kashyap [Tue, 18 Jun 2013 15:29:34 +0000 (00:29 +0900)]
serial: samsung: select EXYNOS specific driver data if ARCH_EXYNOS is defined

All EXYNOS4/5 SoCs share a common driver data in the samsung serial
driver. Hence, let the driver data inclusion be based on ARCH_EXYNOS
instead of SOC specific definition.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed by: Girish K S <ks.giri@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agopinctrl: exynos: add exynos5420 SoC specific data
Leela Krishna Amudala [Wed, 19 Jun 2013 13:16:26 +0000 (22:16 +0900)]
pinctrl: exynos: add exynos5420 SoC specific data

Add Samsung EXYNOS5420 SoC specific data to enable pinctrl
support for all platforms based on EXYNOS5420.

Signed-off-by: Leela Krishna Amudala <l.krishna@samsung.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Acked-by: Tomasz Figa <t.figa@samsung.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by : Sunil Joshi <joshi@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agommc: dw_mmc: move the platform specific init call 17/32017/2
Yuvaraj Kumar C D [Fri, 30 Aug 2013 15:12:19 +0000 (00:12 +0900)]
mmc: dw_mmc: move the platform specific init call

Current platform specific private data initialization call
dw_mci_exynos_priv_init() can be used to do platform specific
initialization of SMU and others in future. So the drv_data->init
call has moved to dw_mci_probe().

Change-Id: I02dbf3360a283d7a25e171e1f97832c01837d5d1
Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
Tested-by: Alim Akhtar <alim.akhtar@samsung.com>
Tested-by: Jaehoon Chung <jh80.chung@samsung.com>
Acked-by: Seungwon Jeon <tgih.jun@samsung.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
9 years agommc: dw_mmc: exynos: configure SMU in exynos5420 16/32016/2
Yuvaraj Kumar C D [Fri, 30 Aug 2013 15:12:35 +0000 (00:12 +0900)]
mmc: dw_mmc: exynos: configure SMU in exynos5420

Exynos5420 Mobile Storage Host controller has Security Management
Unit (SMU) for channel 0 and channel 1 (mainly for eMMC).
This time, SMU configuration is set for non-encryption mode.

Change-Id: I405651fd5aee1c572d39e05400a048bf724be4ad
Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com>
Tested-by: Jaehoon Chung <jh80.chung@samsung.com>
Acked-by: Seungwon Jeon <tgih.jun@samsung.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
9 years agommc: dw_mmc: exynos: move the exynos private init 15/32015/2
Yuvaraj Kumar C D [Fri, 30 Aug 2013 15:11:57 +0000 (00:11 +0900)]
mmc: dw_mmc: exynos: move the exynos private init

Currently platform specific private data initialization is done by
dw_mci_exynos_priv_init and dw_mci_exynos_parse_dt. As we already have
separate platform specific device tree parser dw_mci_exynos_parse_dt,
move the dw_mci_exynos_priv_init code to dw_mci_exynos_parse_dt.
We can use the dw_mci_exynos_priv_init to do some actual platform
specific initialization of SMU and etc.

Change-Id: Iad20178598423b69d029e33ee1e3d77a76fbd888
Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
Tested-by: Alim Akhtar <alim.akhtar@samsung.com>
Tested-by: Jaehoon Chung <jh80.chung@samsung.com>
Acked-by: Seungwon Jeon <tgih.jun@samsung.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
9 years agommc: dw_mmc: exynos: Add a new compatible string for exynos5420 14/32014/2
Yuvaraj Kumar C D [Fri, 24 May 2013 10:04:32 +0000 (15:34 +0530)]
mmc: dw_mmc: exynos: Add a new compatible string for exynos5420

The Exynos5420 has a DWMMC controller which is different from prior
versions.This patch adds a new compatible string for Exynos5420.

Change-Id: I9191ebc65d2e308a43980a81d4a2b0c48c771ca0
Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
9 years agoirqchip: exynos-combiner: remove hard-coded irq_base value 13/32013/2
Chander Kashyap [Sun, 20 Oct 2013 21:01:40 +0000 (06:01 +0900)]
irqchip: exynos-combiner: remove hard-coded irq_base value

Replace irq_domain_add_simple with "irq_domain_add_linear" in order to use
linear irq domain, and to remove hardcoded irq_base_value.

Change-Id: I2b8235d77f6545ac24b41d3bce8f24c60d829a39
Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
9 years agosensorhub: remove unnecessary kfree during driver shutdown 62/31762/1 accepted/tizen/common/20141215.134117 accepted/tizen/mobile/20141216.083708 accepted/tizen/tv/20141217.085627 accepted/tizen/wearable/20141217.085804 submit/tizen/20141215.004633
Seung-Woo Kim [Tue, 9 Dec 2014 12:53:53 +0000 (21:53 +0900)]
sensorhub: remove unnecessary kfree during driver shutdown

The ssp_data pointer is allocated with devm_kzalloc, so freeing it
is not necessary.

Change-Id: Idd26ba71e9c343d61e7b5aa01b21a2f2c3ae9b00
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agodma-buf/dmabuf-sync: disable dmabuf sync module 05/31505/1
Inki Dae [Fri, 5 Dec 2014 11:44:32 +0000 (20:44 +0900)]
dma-buf/dmabuf-sync: disable dmabuf sync module

This module has a resource free bug so this patch disables
dmabuf sync module until the bug is fixed.

Change-Id: Ic84c88e3d5dbead1c25bf4b238b8ef5f51045099
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agomisc: modem_if: replace memcpy for string to strncpy to fix overflow 92/31492/1
Seung-Woo Kim [Fri, 5 Dec 2014 10:23:57 +0000 (19:23 +0900)]
misc: modem_if: replace memcpy for string to strncpy to fix overflow

The memcpy with string source and size larger than string length
causes data overflow. So this patch replaces memcpy to strncpy to
fix data overflow.

Change-Id: Ibc326bdf0a1235c67013576ab9d8f170e8711344
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agoregulator: core: Fix regualtor_ena_gpio_free not to access pin after freeing 53/31453/1
Seung-Woo Kim [Thu, 4 Dec 2014 09:19:19 +0000 (18:19 +0900)]
regulator: core: Fix regualtor_ena_gpio_free not to access pin after freeing

After freeing pin from regulator_ena_gpio_free, loop can access
the pin. So this patch fixes not to access pin after freeing.

Change-Id: I690860751e45b1513fb9171bba1c0bb7e89c0446
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agoinput: keyboard: mcs_touchkey: add sentinel into array of of_device_id 74/31374/1
Seung-Woo Kim [Thu, 4 Dec 2014 11:19:30 +0000 (20:19 +0900)]
input: keyboard: mcs_touchkey: add sentinel into array of of_device_id

Without sentinel, of_match_node() to array causes out-of-bound
memory access. So this patch adds sentinel into array.

Change-Id: Icfe3d8c2fdb0faa006f413e7c080b6d713eab08c
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agosensorhub: Add size check before setting message
Seung-Woo Kim [Tue, 2 Dec 2014 13:35:48 +0000 (22:35 +0900)]
sensorhub: Add size check before setting message

User can send wrong message size, so before setting message value,
the size should be checked to prevent buffer overflow.

Change-Id: Ia3ebdbd45b357054b6fad05c7f251a0b770172db
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agoinput: touchscreen: mms128: fix allocation size for conf data 03/31203/1
Seung-Woo Kim [Tue, 2 Dec 2014 12:48:24 +0000 (21:48 +0900)]
input: touchscreen: mms128: fix allocation size for conf data

The data in config_fw has header, data blocks and end block. The
data count in the config_fw is the number of data blocks except
end block. Without considering end block, this causes buffer
overflow. So this patch fixes allocation size considering end block.

Change-Id: I053e251a21ba8befb03a1db233e4e2d9dbf1b795
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agodmxdev: don't use before checking file->private_data 34/27934/2
Mauro Carvalho Chehab [Wed, 3 Sep 2014 17:32:26 +0000 (14:32 -0300)]
dmxdev: don't use before checking file->private_data

As reported by smatch:
drivers/media/dvb-core/dmxdev.c:1091 dvb_demux_poll() warn: variable dereferenced before check 'dmxdevfilter' (see line 1088)

This was introduced by changeset d102cac8097c.

We need to test before using it.

Change-Id: I4e51d508c466b915338bd0a88a7afb49f4dbeb4d
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Signed-off-by: Changbing Xiong <cb.xiong@samsung.com>
9 years agos5p-jpeg: Fix possible NULL pointer dereference in s_fmt 14/31014/1
Jacek Anaszewski [Fri, 28 Nov 2014 13:08:07 +0000 (14:08 +0100)]
s5p-jpeg: Fix possible NULL pointer dereference in s_fmt

Some formats are not supported in encoding or decoding
mode for given type of buffer (e.g. V4L2_PIX_FMT_JPEG
is supported on output buffer only while in decoding
mode). Make S_FMT failing if not suitable format
is found.

Change-Id: I35c94e38b1b11e2c379f4b2e1f61eedab2bc0a9d
Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
9 years agomfd: sec-core: fix build break 13/31013/1
Marek Szyprowski [Fri, 28 Nov 2014 13:28:33 +0000 (14:28 +0100)]
mfd: sec-core: fix build break

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I5c074dce7e89cbe8ba93872f4edce97431e864cc

9 years agocpufreq: exynos: fix potential initialization error due to signed vs. unsigned comparison 10/31010/1
Marek Szyprowski [Fri, 28 Nov 2014 12:56:08 +0000 (13:56 +0100)]
cpufreq: exynos: fix potential initialization error due to signed vs. unsigned comparison

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Ia9ce7abb542b7dd82a9bc9b23e94728b57f95e59

9 years agomfd: sec-core: fix potential NULL ptr dereference 09/31009/1
Marek Szyprowski [Fri, 28 Nov 2014 12:50:26 +0000 (13:50 +0100)]
mfd: sec-core: fix potential NULL ptr dereference

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I26aec009f6b61c077c6de1a96cca7a5132851dbf

9 years agoASoC: samsung: Add NULL check in i2s.c 56/30156/3
Sachin Kamat [Fri, 24 Jan 2014 10:53:22 +0000 (16:23 +0530)]
ASoC: samsung: Add NULL check in i2s.c

'res' could be NULL from one of the operations above (line 1243). Thus
check 'res' for NULL before releasing the region to avoid null pointer
dereference.

Change-Id: Iade84bccdfb1858c55ccf4cc5ef5ece3d51d9e00
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
9 years agoASoC: samsung: dma: Fix the memory resource leakage issue 41/30141/2
Huang Chao [Wed, 12 Nov 2014 03:44:32 +0000 (11:44 +0800)]
ASoC: samsung: dma: Fix the memory resource leakage issue

After we use kzalloc to allocate memory and make chan point
to this block resource, then dma_request_slave_channel will
overwrite the pointer chan, which can result to memory leak
where chan points to.

Change-Id: Ie659df4e1855abc3f57ac3c54e97a6a448dac26e
Signed-off-by: Huang Chao <chao7.huang@samsung.com>
9 years agodma-buf/dmabuf-sync: fix referece dropping 37/30937/2 accepted/tizen/common/20141127.143546 accepted/tizen/mobile/20141201.013959 submit/tizen/20141127.130559
Inki Dae [Thu, 27 Nov 2014 11:09:08 +0000 (20:09 +0900)]
dma-buf/dmabuf-sync: fix referece dropping

Cancel fence free worker if there is no any task or dma device.
And do not drop a reference of dmabuf at fence free worker,
which is over-dropping.

Change-Id: Ib7378d4efc68a8f7ee7a161296f6a9c0e78f77a7
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoinput: keyboard: mcs_touchkey: use strcpy for assign device name 07/30907/2
Beomho Seo [Thu, 27 Nov 2014 02:36:33 +0000 (11:36 +0900)]
input: keyboard: mcs_touchkey: use strcpy for assign device name

This patch use strcpy() for assign input device name.

Change-Id: I2d363de2b0fe88d771ed71a861f7880a73dc6dac
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
9 years agoexynos: fimc-is: Support for V4L2 controls 72/30072/2
Beata Michalska [Fri, 25 Jul 2014 14:45:58 +0000 (16:45 +0200)]
exynos: fimc-is: Support for V4L2 controls

Add support for FIMC ISP and SCALERC v4l2 controls

Change-Id: I360597cbaed60a24f3184df3c5617f868fd02749
Signed-off-by: Beata Michalska <b.michalska@samsung.com>
9 years agoexynos: fimc-is: Internal buffer list cleanup 71/30071/2
Beata Michalska [Wed, 23 Jul 2014 13:34:25 +0000 (15:34 +0200)]
exynos: fimc-is: Internal buffer list cleanup

As the driver maintaines separate buffer lists per each
video device which are beyond control of v4l2/vb2
framework, those lists should be properly handled
and cleared once the buffers are no longer
available. The changes introduced allow controlling
state of each queued buffer and removing it from
internal buffer lists when needed.

Signed-off-by: Beata Michalska <b.michalska@samsung.com>
Change-Id: I4dea7df3910d6836edee1387c5a1147649043b81

9 years agoARM: dts: exynos3250-rinato: support for FIMC-IS 70/30070/2
Beata Michalska [Wed, 5 Nov 2014 14:58:31 +0000 (15:58 +0100)]
ARM: dts: exynos3250-rinato: support for FIMC-IS

Signed-off-by: Beata Michalska <b.michalska@samsung.com>
Change-Id: Idf7390055df5c6760986daa59e46d0fc9bb32812

9 years agoexynos3: fimc-is: Add support for FIMC IS on Exynos3250 69/30069/2
Beata Michalska [Mon, 14 Jul 2014 17:32:39 +0000 (19:32 +0200)]
exynos3: fimc-is: Add support for FIMC IS on Exynos3250

The changes introduced provide support for FIMC-IS
subsystem avalilable on Exynos3250.
They cover the differences in both: the hardware itself
as well as the subtle discrepancies between the firmwares
controlling the FIMC IS on both SoCs.
Regarding the above mentioned firmware variations:
the initial driver has been extended with a simplified
interface handling those variations thus living the core
driver independent of the actual firmware version.
Missing code paths have been added to cover handling some of
the most probable failures/errors.

Signed-off-by: Beata Michalska <b.michalska@samsung.com>
Change-Id: Ie07312013a6a0ee14b88803360f0832d0ad4038d

9 years agoexynos5: fimc-is: Code cleanup 68/30068/2
Beata Michalska [Mon, 14 Jul 2014 14:19:04 +0000 (16:19 +0200)]
exynos5: fimc-is: Code cleanup

- Code cleanup for Exynos5/3 media device driver
- Proper locking for vb2 buffers for both FIMC ISP
  and FIMC SCC v4l2 subdevices
- Improved handling VIDIOC_REQBUFS ioctl

Signed-off-by: Beata Michalska <b.michalska@samsung.com>
Change-Id: If7ee3f7861678169c2c0f0fc217d3507b3e3d4fc

9 years agoexynos: fimc-lite: Capture frame end event notification 67/30067/2
Beata Michalska [Mon, 14 Jul 2014 12:47:09 +0000 (14:47 +0200)]
exynos: fimc-lite: Capture frame end event notification

This patch adds notifying v4l2 subdevs upon capture
frame end event.

Signed-off-by: Beata Michalska <b.michalska@samsung.com>
Change-Id: Id3e81b4692a6f2cfc91ffde7050a3ae6db719971

9 years agoexynos: mipi-csis: Fix clock handling for exynos3250 66/30066/2
Beata Michalska [Mon, 14 Jul 2014 12:27:29 +0000 (14:27 +0200)]
exynos: mipi-csis: Fix clock handling for exynos3250

In case of Exynos3250 only gate clock is required
thus all the remaining mipi-csis clocks are considered
as optional.

Signed-off-by: Beata Michalska <b.michalska@samsung.com>
Change-Id: Ibadffe49739add39f156737cbb723b24a5dd4ff5

9 years agoexynos: mipi-csis: Fix handling csis events/errors 65/30065/2
Beata Michalska [Tue, 4 Mar 2014 09:37:09 +0000 (10:37 +0100)]
exynos: mipi-csis: Fix handling csis events/errors

Particular interrupt source mask should specify
each and every possible event/error reflecting the
s5pcsis_events table content.

Change-Id: I3149364cf219d8ec2c13297a8890537585ae77ca
Signed-off-by: Beata Michalska <b.michalska@samsung.com>
9 years agoexynos5: fimc-is: Add driver data entry for S5K68B1 sensor 64/30064/2
Sylwester Nawrocki [Fri, 7 Feb 2014 20:10:39 +0000 (21:10 +0100)]
exynos5: fimc-is: Add driver data entry for S5K68B1 sensor

Change-Id: I7e1c466c6622b39c2999e2245c7815e6517dd157
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agoexynos5-is: Make sclk_bayer clock handling optional 63/30063/2
Sylwester Nawrocki [Fri, 21 Feb 2014 18:28:36 +0000 (19:28 +0100)]
exynos5-is: Make sclk_bayer clock handling optional

There is no sclk_bayer clock on exynos3250.
Some flag at the variant data could be added later to handle
properly error from clk calls.

Change-Id: I249169e1a7c451db6805dee7d01dd95816f329e0
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agoexynos5-is: Allow initialization when fimc-is is a master node 62/30062/2
Sylwester Nawrocki [Fri, 21 Feb 2014 18:36:18 +0000 (19:36 +0100)]
exynos5-is: Allow initialization when fimc-is is a master node

Change platform sub-devices registration method so the driver
can support exynos3250 DT binding, i.e. initialize when fimc-is
is the complex root node, not "camera".

This also merges exynos5-fimc-is and exynos-mdevice into single
kernel module called exynos-iss.ko.

Change-Id: Ie340fd7a3e1f7b5dba2c71963c920f324fab4e5a
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years ago[media] Add driver for exynos5 FIMC-IS subsystem 61/30061/2
Arun Kumar K [Tue, 5 Nov 2013 12:13:19 +0000 (17:43 +0530)]
[media] Add driver for exynos5 FIMC-IS subsystem

This driver is for the FIMC-IS IP available in Samsung Exynos5
SoC onwards.

exynos5-fimc-is: Add common driver header files

This patch adds all the common header files used by the fimc-is
driver. It includes the commands for interfacing with the firmware
and error codes from IS firmware, metadata and command parameter
definitions.

exynos5-fimc-is: Add register definition and context header

This patch adds the register definition file for the fimc-is driver
and also the header file containing the main context for the driver.

exynos5-fimc-is: Add isp subdev

fimc-is driver takes video data input from the ISP video node
which is added in this patch. This node accepts Bayer input
buffers which is given from the IS sensors.

exynos5-fimc-is: Add scaler subdev

FIMC-IS has two hardware scalers named as scaler-codec and
scaler-preview. This patch adds the common code handling the
video nodes and subdevs of both the scalers.

exynos5-fimc-is: Add sensor interface

Some sensors to be used with fimc-is are exclusively controlled
by the fimc-is firmware. This minimal sensor driver provides
the required info for the firmware to configure the sensors
sitting on I2C bus.

exynos5-fimc-is: Add the hardware pipeline control

This patch adds the crucial hardware pipeline control for the
fimc-is driver. All the subdev nodes will call this pipeline
interfaces to reach the hardware. Responsibilities of this module
involves configuring and maintaining the hardware pipeline involving
multiple sub-ips like ISP, DRC, Scalers, ODC, 3DNR, FD etc.

exynos5-fimc-is: Add the hardware interface module

The hardware interface module finally sends the commands to the
FIMC-IS firmware and runs the interrupt handler for getting the
responses.

Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Signed-off-by: Kilyeon Im <kilyeon.im@samsung.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
exynos5-is: Add Kconfig and Makefile

Adds Kconfig and Makefile for exynos5-is driver files.

[b.michalska@samsung.com: Implementation adjusted
to current version of V4L2 framework:
- updated prototype for stop_streaming v4l2 capture ops
- vb2_queue struct's field tiemstamp_type updated
to timestamp_flags]

Change-Id: I066a86151048b4b5871bd3732773b87219f04fd1
Signed-off-by: Shaik Ameer Basha <shaik.ameer@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years ago[media] Add Exynos5 FIMC-IS device tree bindings documentation 60/30060/2
Arun Kumar K [Tue, 5 Nov 2013 12:13:18 +0000 (17:43 +0530)]
[media] Add Exynos5 FIMC-IS device tree bindings documentation

The patch adds the DT binding documentation for Samsung
Exynos5 SoC series imaging subsystem (FIMC-IS).

Change-Id: Iee71e3cce25f2983ee9cf74c5f8648b18af2a1d9
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
9 years agoexynos5-is: Add media device driver for exynos5 SoCs camera subsystem 59/30059/2
Shaik Ameer Basha [Tue, 5 Nov 2013 11:19:15 +0000 (16:49 +0530)]
exynos5-is: Add media device driver for exynos5 SoCs camera subsystem

This patch adds a top level media device driver for the Exynos5 SoC series
camera subsystem. The driver currently supports processing pipelines
involving following IP blocks:

* MIPI-CSIS
  MIPI CSI-2 bus front-end to the FIMC-LITE, image sensors with MIPI CSI-2
  bus should be linked with FIMC-LITE through this sub-device.

* FIMC-LITE
  Supports capture interface from device (Sensor, MIPI-CSIS) to memory.
  Supports interconnection (through internal data FIFO links) between
  devices like MIPI-CSIS and FIMC-IS.

* FIMC-IS
  Camera ISP with multiple image processing and peripheral devices like
  I2C or SPI bus controllers.

The G-Scaler IP is not yet supported.

The media device creates two kinds of pipelines for connecting the above
mentioned IP blocks.
The pipeline0 contains Sensor, MIPI-CSIS and FIMC-LITE devices and allows
to capture image data from external sensor to memory.
Pipeline1 uses FIMC-IS components for image processing operations on the
captured raw image data and provides scaled YUV image data at its output.

Pipeline0
 +--------+     +-----------+     +-----------+     +--------+
 | Sensor | --> | MIPI-CSIS | --> | FIMC-LITE | --> | Memory |
 +--------+     +-----------+     +-----------+     +--------+

Pipeline1
 +--------+     +---------+     +-----------+     +-----------+
 | Memory | --> |   ISP   | --> |    SCC    | --> |    SCP    |
 +--------+     +---------+     +-----------+     +-----------+

Signed-off-by: Shaik Ameer Basha <shaik.ameer@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
[s.nawrocki@samsung.com: improved the commit description,
 removed inclusion of nonexistent <linux/of_i2c.h> header]
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Change-Id: Icccb5c45cebe4b46790a1bdce436c00090924d7a

9 years ago[media] exynos5-is: Add DT binding documentation 58/30058/2
Shaik Ameer Basha [Tue, 5 Nov 2013 11:19:14 +0000 (16:49 +0530)]
[media] exynos5-is: Add DT binding documentation

The patch adds the DT binding doc for exynos5 SoC camera
subsystem.

Change-Id: Iaec580ca240554989f243a618989599195f7b5f5
Signed-off-by: Shaik Ameer Basha <shaik.ameer@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agoexynos: mipi-csis: Add suport for Exynos3250 57/30057/2
Beata Michalska [Fri, 21 Feb 2014 15:51:57 +0000 (16:51 +0100)]
exynos: mipi-csis: Add suport for Exynos3250

Adapt current implementation to cover differences
in MIPI CSIS registers layout.

Change-Id: I092394f722c019dbb80ac833dc41256566388e8e
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Beata Michalska <b.michalska@samsung.com>
9 years agoexynos: fimc-lite: Add support for exynos3250 56/30056/2
Beata Michalska [Fri, 7 Nov 2014 17:20:07 +0000 (18:20 +0100)]
exynos: fimc-lite: Add support for exynos3250

Add support for enabling/disabling local output
path along with disabling interrupts upon capture
being stopped.

Change-Id: I8ed2e100138f567dbd10c2eb5083b12110a3c799
Signed-off-by: Beata Michalska <b.michalska@samsung.com>
9 years agoexynos: fimc-lite: Add compatible string for exynos3250 55/30055/2
Sylwester Nawrocki [Mon, 10 Feb 2014 11:12:03 +0000 (12:12 +0100)]
exynos: fimc-lite: Add compatible string for exynos3250

Allow driver initialization on exynos3250. Further changes
of the IP handling will be added in subsequent patches.

Change-Id: Ifb4571b8173c34a8677c6dba6d23ddfcac63bb2b
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agoV4L: Add driver for Samsung S5K8B1YX image sensor 54/30054/2
Sylwester Nawrocki [Thu, 20 Feb 2014 10:50:31 +0000 (11:50 +0100)]
V4L: Add driver for Samsung S5K8B1YX image sensor

This patch adds a stub driver for Samsung S5K8B2YX raw image sensor.
There is currently no I2C communication done in this driver. It can
be added if required. This driver was tested only with Exynos FIMC-IS
subsystem (camera ISP), which communicates with the sensor over I2C
bus in firmware.

Change-Id: I40ea0b1d6bbb139b85f60941343fd8207f4ece8a
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>