Sachin Kamat [Mon, 12 May 2014 22:13:44 +0000 (07:13 +0900)]
ARM: EXYNOS: Map SYSRAM through generic DT bindings
Instead of hardcoding the SYSRAM details for each SoC,
pass this information through device tree (DT) and make
the code SoC agnostic. Generic DT SRAM bindings are
used for achieving this.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Shaik Ameer Basha [Thu, 8 May 2014 11:27:56 +0000 (16:57 +0530)]
clk: samsung: exynos5420: update clocks for PERIC block
This patch includes,
1] renaming of the HSI2C clocks
2] renaming of spi clocks according to the datasheet
3] fixes for child-parent relationships
4] adding of more clocks related to PERIC block
5] use GATE_IP_* offsets instead of GATE_BUS_*
Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Signed-off-by: Shaik Ameer Basha <shaik.ameer@samsung.com>
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Arun Kumar K [Thu, 8 May 2014 21:06:24 +0000 (06:06 +0900)]
ARM: dts: Add node labels to exynos5420
Adding labels to nodes which do not have it yet in exynos5420.
This is done so as to use reference based node updation in board
files.
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Tushar Behera [Thu, 20 Mar 2014 19:31:30 +0000 (04:31 +0900)]
dt-bindings: clock: Move exynos-audss-clk.h to dt-bindings/clock
Most of the clock related dt-binding header files are located in
dt-bindings/clock folder. It would be good to keep all the similar
header files at a single location.
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
Reviewed-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Sachin Kamat [Thu, 20 Mar 2014 17:17:22 +0000 (02:17 +0900)]
ARM: dts: Update Exynos DT files with generic compatible strings
Add generic compatible strings to the respective board DT files.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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
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
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
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>
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>
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>
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>
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>
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
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
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
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
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
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
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>
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>
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>
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>
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>
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>
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