platform/kernel/linux-3.10.git
9 years agodevfreq: exynos: Add Exynos3250 busfreq support
Chanwoo Choi [Tue, 19 Aug 2014 05:11:38 +0000 (14:11 +0900)]
devfreq: exynos: Add Exynos3250 busfreq support

This patch add Exynos3250 busfreq driver to support DVFS(Dynamic Voltage
Frequency Scaling) about Exynos3250's Memory interface and bus. Exynos3250
busfreq driver will optimize power-consumption/performance of memory according
to PPMU(Profiling Performance Monitoring Unit) Read/Write count of Exynos3250
SoC.

- Exynos3250 MIF (DMC block) use following PPMU to check utilization
of MIF block.
: PPMU_DMC0
: PPMU_DMC1

- Exynos3250 INT (Internal block except for ARM/DMC/G3D) use following PPMU
to check utilization of INT block.
: PPMU_LEFT
: PPMU_RIGHT

Change-Id: If35c1fa0228f16547015931c64b0d6e896599d46
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
9 years agodrm: fimd: support display writeback mode
Donghwa Lee [Tue, 19 Aug 2014 02:48:51 +0000 (11:48 +0900)]
drm: fimd: support display writeback mode

This patch supports exynos drm display writeback mode that clone
the screen with fimd like below.

FIMD----->FIMC H/W---->MEMORY

Change-Id: I8172ec6ee157e2e48a23b9776e11543c33716dc5
Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
9 years agoinput: touchscreen: mms128: remove CONFIG_TIZEN_WIP ifdefs
Beomho Seo [Tue, 19 Aug 2014 04:26:55 +0000 (13:26 +0900)]
input: touchscreen: mms128: remove CONFIG_TIZEN_WIP ifdefs

This patch removes CONFIG_TIZEN_WIP ifdefs.

Change-Id: I48c455d4ef67e60383e1c358be4124f78b4352e5
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
9 years agoau0828: workaround i2c clock speed for DViCO FusionHDTV7
Joonyoung Shim [Mon, 18 Aug 2014 04:43:50 +0000 (13:43 +0900)]
au0828: workaround i2c clock speed for DViCO FusionHDTV7

The DViCO FusionHDTV7 usb tuner stick is not working after commit
cfd0c77d0830d33288e9da17aa10db3a61de601a(au0828: improve I2C speed).
This will use always 20kHz for i2c and workaround until fixed from
au0828 codes.

[   28.350841] xc5000: Can't request Self-callibration. - retrying to upload firmware.
[   32.345838] xc5000: Can't request Self-callibration. - retrying to upload firmware.
[   36.325840] xc5000: Can't request Self-callibration. - retrying to upload firmware.
[   40.300846] xc5000: Can't request Self-callibration. - retrying to upload firmware.
[   44.270848] xc5000: Can't request Self-callibration. - too many retries. Giving up
[   44.272778] xc5000: Unable to initialise tuner
[   45.385845] xc5000: xc_set_signal_source(0) failed
[   47.305850] xc5000: xc_set_signal_source(0) failed

Change-Id: I0099cc0061e0e3a236570d43d3f4f63ebc4d6d49
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
9 years agoARM: Use 'model' property to set machine_name from Device Tree
Chanwoo Choi [Thu, 14 Aug 2014 06:03:56 +0000 (15:03 +0900)]
ARM: Use 'model' property to set machine_name from Device Tree

This patch use 'model' property from Device Tree to set machine_name.
The arm64 has already got the machine_name from Device Tree.

Change-Id: I5a810cf3446a48336d1dd4dfe11e56116c1d5bc1
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
9 years agoarm: use common of_flat_dt_match_machine
Rob Herring [Thu, 14 Aug 2014 07:50:48 +0000 (16:50 +0900)]
arm: use common of_flat_dt_match_machine

Convert arm to use the common of_flat_dt_match_machine function.

Change-Id: I10ae33da26089ddc43008aa2a133ab7d301b4401
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: linux-arm-kernel@lists.infradead.org
9 years agoof: introduce common FDT machine related functions
Rob Herring [Thu, 14 Aug 2014 07:48:25 +0000 (16:48 +0900)]
of: introduce common FDT machine related functions

Introduce common of_flat_dt_match_machine and
of_flat_dt_get_machine_name functions to unify architectures' handling
of machine level model and compatible properties.

Several architectures match the root compatible string with an arch
specific list of machine descriptors duplicating the same search
algorithm. Create a common implementation with a simple architecture
specific hook to iterate over each machine's match table.

Change-Id: I77acb5c560e2b08591c37b57d5d87023aa3fbe91
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Grant Likely <grant.likely@linaro.org>
9 years agoarm: tizen_odroid_defconfig: built-in snd-usb-audio
Joonyoung Shim [Thu, 14 Aug 2014 07:30:34 +0000 (16:30 +0900)]
arm: tizen_odroid_defconfig: built-in snd-usb-audio

HVR950Q ananlog TV output needs snd-usb-audio, built-in it for user convenience.

Change-Id: I7b274395f32d35be1841f3122a256f673d84a9c7
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
9 years agoARM: dts: Add missing address/size-cells properties for Trats board
Sylwester Nawrocki [Wed, 13 Aug 2014 15:35:19 +0000 (17:35 +0200)]
ARM: dts: Add missing address/size-cells properties for Trats board

Fixes compilation warning:

  DTC     arch/arm/boot/dts/exynos4210-trats.dtb
Warning (reg_format): "reg" property in /dsi@11C80000/panel@0 has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
Warning (avoid_default_addr_size): Relying on default #address-cells value for /dsi@11C80000/panel@0
Warning (avoid_default_addr_size): Relying on default #size-cells value for /dsi@11C80000/panel@0

Change-Id: Ib1ec361d058fa89dda4391ca49015bdd8fb5185c
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agodrm/exynos: hdmi: fix macros for audio registers
Robert Baldyga [Wed, 6 Aug 2014 05:37:30 +0000 (07:37 +0200)]
drm/exynos: hdmi: fix macros for audio registers

This patch fix two things:

- Remove duplicated HDMI_I2S_SEL_SDATA2(x) macro definition, add
  missing HDMI_I2S_SEL_SDATA0(x) macro and fix macro usage.

- Fix HDMI_I2S_IN_DISABLE and HDMI_I2S_IN_ENABLE values and fix
  macro usage.

Change-Id: I172913a61011292c3c912a3e8ccd84109924b906
Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
9 years agoARM: dts: Change i2s compatible string on Exynos4 SoC
Inha Song [Wed, 13 Aug 2014 02:53:39 +0000 (11:53 +0900)]
ARM: dts: Change i2s compatible string on Exynos4 SoC

This patch removes quirks from i2s node and change the i2s
compatible names for Exynos4 SoC.

Change-Id: Id9f4965ac10eb1bbdb1b4f1a4c20f263823d36db
Signed-off-by: Inha Song <ideal.song@samsung.com>
9 years agoASoC: Samsung: I2S: Add quirks as driver data in I2S
Padmavathi Venna [Mon, 12 Aug 2013 09:49:51 +0000 (15:19 +0530)]
ASoC: Samsung: I2S: Add quirks as driver data in I2S

Samsung has different versions of I2S introduced in different
platforms. Each version has some new support added for multichannel,
secondary fifo, s/w reset control and internal mux for rclk src clk.
Each newly added change has a quirk. So this patch adds all the
required quirks as driver data and based on compatible string from
dtsi fetches the quirks.

Change-Id: Ib8d12633f3971f59284a5a1ae40d60f40411b2cc
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
9 years agomedia: s5p-mfc: skip incomeplete frame
Donghwa Lee [Thu, 31 Jul 2014 06:01:59 +0000 (15:01 +0900)]
media: s5p-mfc: skip incomeplete frame

Currently, when incomplete frame is recieved in the middle of decoding,
driver have treated it to error, so src/dst queue and clock are cleaned.
Although it is obviously error case, it is need to maintain video
decoding in case of necessity. This patch supports skip incomplete frame
to next.

Change-Id: I328275a01d9f4bdfda55daf08a0e8b238ed7da5d
Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
9 years agomedia: s5p_mfc: Release ctx->ctx if failed to allocate ctx->shm
Zhaowei Yuan [Fri, 1 Aug 2014 06:05:41 +0000 (14:05 +0800)]
media: s5p_mfc: Release ctx->ctx if failed to allocate ctx->shm

ctx->ctx should be released when the following allocation for ctx->shm fails.

Change-Id: I55372f8360db4605a65f633393b97c0ba2ee47d6
Signed-off-by: Zhaowei Yuan <zhaowei.yuan@samsung.com>
9 years agoARM: dts: Add configuration of audio clocks for exynos4412-odroid
Sylwester Nawrocki [Mon, 4 Aug 2014 15:39:06 +0000 (17:39 +0200)]
ARM: dts: Add configuration of audio clocks for exynos4412-odroid

This specifies the EPLL and Audio Subsystem clocks configuration
for a set up with the MAX98090 codec as an I2S master.

Change-Id: I2f9d28c34ed22e12760ed303a74595dc9a900c3e
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agoclk: dt-bindings: Fix the assigned clock rates documentation
Sylwester Nawrocki [Mon, 4 Aug 2014 16:15:11 +0000 (18:15 +0200)]
clk: dt-bindings: Fix the assigned clock rates documentation

Correct a cut & paste error from commit: 86be408bfbd846fab3c4ac21d6
"clk: Support for clock parents and rates assigned from device tree"

Change-Id: I6562c7acebc5742c81db8bfb4da8eed77bddb1ff
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agoclk: Add missing of_clk_set_defaults export
Sylwester Nawrocki [Mon, 4 Aug 2014 10:44:33 +0000 (12:44 +0200)]
clk: Add missing of_clk_set_defaults export

The of_clk_set_defaults() function is used in the I2C subsystem which
can be build as module. Add the missing symbol export entry so there
is no build errors like
"ERROR: "of_clk_set_defaults" [drivers/i2c/i2c-core.ko] undefined!"

Fixes commit: 86be408bfbd846fab3c4ac21d6f9298bd2e4b790
"clk: Support for clock parents and rates assigned from device tree"

Change-Id: Ibdff952f3c958d09ff8f07a567a8026e7942a586
Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
9 years agoclk: checking wrong variable in __set_clk_parents()
Dan Carpenter [Fri, 1 Aug 2014 08:14:17 +0000 (11:14 +0300)]
clk: checking wrong variable in __set_clk_parents()

There is a cut and paste bug so we check "pclk" instead of "clk".

Change-Id: Ie72f6d614d5e5a2756f60808aad3db92f46ed790
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
9 years agoclk: Support for clock parents and rates assigned from device tree
Sylwester Nawrocki [Wed, 18 Jun 2014 15:29:32 +0000 (17:29 +0200)]
clk: Support for clock parents and rates assigned from device tree

This patch adds helper functions to configure clock parents and rates
as specified through 'assigned-clock-parents', 'assigned-clock-rates'
DT properties for a clock provider or clock consumer device.
The helpers are now being called by the bus code for the platform, I2C
and SPI busses, before the driver probing and also in the clock core
after registration of a clock provider.

Change-Id: I96d98c9c9d576fcbf0dfc90d1cc75feb9fdf97cb
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[s.nawrocki@samsung.com: backported to v3.10]
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
9 years agonet: rfkill-gpio: Add handle clock for rfkill gpio
Beomho Seo [Fri, 8 Aug 2014 08:22:43 +0000 (17:22 +0900)]
net: rfkill-gpio: Add handle clock for rfkill gpio

WORKAROUND: Temporary workaround for bluetooth enable.
This patch add clk parse and clk get function for using bluetooth.

Change-Id: Id72770e73c8b5cc895ad6a2e331899380beca7b7
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
9 years agonet: rfkill-gpio: add low power mode for bluetooth chip
Seung-Woo Kim [Thu, 15 May 2014 03:38:30 +0000 (12:38 +0900)]
net: rfkill-gpio: add low power mode for bluetooth chip

WORKAROUND: Temporary workaround for bluetooth enable.
This patch add LP mode for bluetooth chip.

Change-Id: I1badf49085e58cec08704581beb0458ffbeaee64
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agoBluetooth: add hci event notification
Seung-Woo Kim [Thu, 15 May 2014 03:37:20 +0000 (12:37 +0900)]
Bluetooth: add hci event notification

WORKAROUND: Temporary workaround for bluetooth enable.
For specific hci events, operations are needed. So this patch adds
event notification and its notifier registration.

Change-Id: I6f8fe0b3b90c12d7f4fe35823d25b9fbdcd98d06
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agoserial: samsung: fix maximum baudrate
Seung-Woo Kim [Thu, 15 May 2014 03:35:50 +0000 (12:35 +0900)]
serial: samsung: fix maximum baudrate

To support hs uart, maximum baudrate is fixed to 3Mbps.

Change-Id: Idc39e09a8089c61518a3525058ae6647a625c8fb
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agonet: rfkill-gpio: add host wake and wake pins
Seung-Woo Kim [Fri, 8 Aug 2014 08:13:09 +0000 (17:13 +0900)]
net: rfkill-gpio: add host wake and wake pins

WORKAROUND: Temporary workaround for bluetooth enable.
The wake pin is used for waking up the hw and host wake pin is used
for waking up host processor during sleep.
Additionally, This patch add reset-gpio property and devm_gpio_request_one
function.

Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
[This patch rebased by Beomho Seo]
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Change-Id: Ibb2f74cae6e1d11ae84172d0f49a10563fc57e7f

9 years agonet: rfkill-gpio: fix initial state as blocked
Seung-Woo Kim [Thu, 15 May 2014 03:30:43 +0000 (12:30 +0900)]
net: rfkill-gpio: fix initial state as blocked

WORKAROUND: Temporary worgaround for bluetooth enable.
Initial state is not set as blocked, so it is always unblocked
after booting. This patch fixes initual state of rfkill-gpio as
blocked.

Change-Id: Ide67763d10e2ef3ea75fe58d917cd725b26e2cab
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
9 years agonet: rfkill: add line for parsing shutdown gpio prooerty
Beomho Seo [Fri, 8 Aug 2014 08:07:23 +0000 (17:07 +0900)]
net: rfkill: add line for parsing shutdown gpio prooerty

This patch add line in rfkill_gpio_dt_probe function.
"shutdown-gpio" property is added on device node already.

Change-Id: I4c6861178cafa64d2017a26f5dbe9e311db2004c
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
9 years agonet: rfkill: gpio: add device tree support
Chen-Yu Tsai [Thu, 15 May 2014 02:27:27 +0000 (11:27 +0900)]
net: rfkill: gpio: add device tree support

Change-Id: Ic179fcf929d3555a29addd39024011537ea041fa
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
9 years agonet: rfkill: gpio: fix reversed clock enable state
Chen-Yu Tsai [Thu, 15 May 2014 02:25:58 +0000 (11:25 +0900)]
net: rfkill: gpio: fix reversed clock enable state

rfkill-gpio has clk_enabled = blocked, which is true when rfkill
blocks the device. This results in calling clock enable/disable at
the wrong time. Reversing the value fixes this.

Change-Id: Id13a2bd8d7314b29753d2cdedca62b27fa9fd1d9
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
9 years agonet: rfkill: gpio: use clk_prepare_enable/clk_disable_unprepare
Chen-Yu Tsai [Thu, 15 May 2014 02:22:17 +0000 (11:22 +0900)]
net: rfkill: gpio: use clk_prepare_enable/clk_disable_unprepare

rfkill-gpio calls clk_enable() without first calling clk_prepare(),
resulting in a warning and no effect. Switch to clk_prepare_enable()
and clk_disable_unprepare.

Change-Id: I4cb7ed7ff551daab034deb300f6def1c44721fe3
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
9 years agonet: rfkill: gpio: prepare for DT and ACPI support
Heikki Krogerus [Wed, 16 Oct 2013 10:53:42 +0000 (13:53 +0300)]
net: rfkill: gpio: prepare for DT and ACPI support

This will add the relevant values like the gpios and the
type in rfkill_gpio_platform_data to the rfkill_gpio_data
structure. It will allow those values to be easily picked
from DT and ACPI tables later.

Change-Id: I0851561b648c52be17dbe9a7bb01b0b62ff621a6
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Rhyland Klein <rklein@nvidia.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
9 years agonet: rfkill: gpio: spinlock-safe GPIO access
Heikki Krogerus [Wed, 16 Oct 2013 10:53:41 +0000 (13:53 +0300)]
net: rfkill: gpio: spinlock-safe GPIO access

This sets the direction of the gpio once when it's requested,
and uses the spinlock-safe gpio_set_state() to change the
state.

Change-Id: I1e9e9035dc9451d7531d230645d5f1572130a77b
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Rhyland Klein <rklein@nvidia.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
9 years agonet: rfkill: gpio: clean up clock handling
Heikki Krogerus [Wed, 16 Oct 2013 10:53:40 +0000 (13:53 +0300)]
net: rfkill: gpio: clean up clock handling

Use a simple flag to see the state of the clock, and make
the clock available even without a name. Also, get rid of
HAVE_CLK dependency.

Change-Id: Ie113c861a296a57ff32f5a3ee95ef0b9d9fff7e4
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Rhyland Klein <rklein@nvidia.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
9 years agonet: rfkill: gpio: convert to resource managed allocation
Heikki Krogerus [Wed, 16 Oct 2013 10:53:39 +0000 (13:53 +0300)]
net: rfkill: gpio: convert to resource managed allocation

And remove now unneeded resource freeing.

Change-Id: Ie6baa61361effe095de95c5ac19cd19f6ddf4475
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Rhyland Klein <rklein@nvidia.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
9 years agodrm/panel: s6e63j0x03: decrease TE signal rate to 30Hz
Inki Dae [Tue, 12 Aug 2014 13:19:50 +0000 (22:19 +0900)]
drm/panel: s6e63j0x03: decrease TE signal rate to 30Hz

Change-Id: If5b327b3e33cc518c72003de0b3b0e643b43ff42
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoARM: dts: exynos3250: add fimd iommu device node
Inki Dae [Tue, 12 Aug 2014 12:58:27 +0000 (21:58 +0900)]
ARM: dts: exynos3250: add fimd iommu device node

Change-Id: I4c6fafe6d49ea355c505d3bd1b0e09ad4f4d056e
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoARM: dts: exynos3250: clean up clock property for gpu node
Inki Dae [Tue, 12 Aug 2014 12:57:50 +0000 (21:57 +0900)]
ARM: dts: exynos3250: clean up clock property for gpu node

Change-Id: Ic8b76c317a0fdd97d640f3b118fcca5e86c5917d
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agodrm/exynos: fimd: add exynos3250 SoC support
Inki Dae [Tue, 12 Aug 2014 12:55:36 +0000 (21:55 +0900)]
drm/exynos: fimd: add exynos3250 SoC support

Change-Id: I18cd6a16b9ef66797ceb9b72bb37f626ae1d3856
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agodrm/exynos: mipi-dsi: add exynos3250 SoC support.
Inki Dae [Tue, 12 Aug 2014 12:55:08 +0000 (21:55 +0900)]
drm/exynos: mipi-dsi: add exynos3250 SoC support.

Change-Id: I2b2618cba75472e07f32a873ec516103a9e2b9d8
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoARM: dts: exynos4x12: clean up clock property for gpu node
Inki Dae [Tue, 12 Aug 2014 12:51:27 +0000 (21:51 +0900)]
ARM: dts: exynos4x12: clean up clock property for gpu node

Change-Id: Icdc8515f933d3c5c0d912ff99009c75187dee578
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agogpu/mali: add exynos3250 SoC support
Inki Dae [Tue, 12 Aug 2014 12:49:19 +0000 (21:49 +0900)]
gpu/mali: add exynos3250 SoC support

This path adds exynos3250 SoC support with mali-400mp2 core,
and cleans up codes related to clock.

Change-Id: Icbba8769a7389a6e2876a27add0767ec5b603c0a
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoclk/exynos3250: do not define g3d/lcd block gate clock
Inki Dae [Tue, 12 Aug 2014 12:45:33 +0000 (21:45 +0900)]
clk/exynos3250: do not define g3d/lcd block gate clock

This clock should be passed by default. If they are defined, then
these clocks will be masked in case that relevant drivers don't
enable them.

Change-Id: I8cb402642ac7e9b69c80d594a8be981477f679af
Signed-off-by: Inki Dae <inki.dae@samsung.com>
9 years agoclk: samsung: fix missing spin_lock initialization
Chanho Park [Tue, 12 Aug 2014 01:24:31 +0000 (10:24 +0900)]
clk: samsung: fix missing spin_lock initialization

This patch adds missing spin_lock initialization since applied aca4c144.
It can fix below error during mct_init_dt.

[    0.000000] BUG: spinlock bad magic on CPU#0, swapper/0/0
[    0.000000]  lock: 0xeb0028d0, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.10.52-03511-g2e14cbe-dirty #30
[    0.000000] [<c00141c4>] (unwind_backtrace+0x0/0xf4) from [<c0011520>] (show_stack+0x10/0x14)
[    0.000000] [<c0011520>] (show_stack+0x10/0x14) from [<c02163e8>] (do_raw_spin_lock+0x154/0x180)
[    0.000000] [<c02163e8>] (do_raw_spin_lock+0x154/0x180) from [<c05f5f44>] (_raw_spin_lock_irqsave+0x20/0x28)
[    0.000000] [<c05f5f44>] (_raw_spin_lock_irqsave+0x20/0x28) from [<c04437c8>] (clk_gate_endisable+0x28/0x88)
[    0.000000] [<c04437c8>] (clk_gate_endisable+0x28/0x88) from [<c044383c>] (clk_gate_enable+0xc/0x14)
[    0.000000] [<c044383c>] (clk_gate_enable+0xc/0x14) from [<c0440b00>] (__clk_enable+0x5c/0x9c)
[    0.000000] [<c0440b00>] (__clk_enable+0x5c/0x9c) from [<c0440dec>] (clk_enable+0x18/0x2c)
[    0.000000] [<c0440dec>] (clk_enable+0x18/0x2c) from [<c083d0d8>] (exynos4_timer_resources+0x154/0x224)
[    0.000000] [<c083d0d8>] (exynos4_timer_resources+0x154/0x224) from [<c083d260>] (mct_init_dt+0x64/0x70)
[    0.000000] [<c083d260>] (mct_init_dt+0x64/0x70) from [<c083cec4>] (clocksource_of_init+0x34/0x58)
[    0.000000] [<c083cec4>] (clocksource_of_init+0x34/0x58) from [<c0826e40>] (exynos_init_time+0x40/0x108)
[    0.000000] [<c0826e40>] (exynos_init_time+0x40/0x108) from [<c0822ed4>] (time_init+0x20/0x30)
[    0.000000] [<c0822ed4>] (time_init+0x20/0x30) from [<c081f954>] (start_kernel+0x1e4/0x3a8)
[    0.000000] [<c081f954>] (start_kernel+0x1e4/0x3a8) from [<40008074>] (0x40008074)

Change-Id: I6271d2a82f0296629a30a2788517658d45ef797c
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
9 years agoRevert "drivers: usb: s3c-hsotg: add support for usb core regulator"
Chanho Park [Mon, 11 Aug 2014 05:11:55 +0000 (14:11 +0900)]
Revert "drivers: usb: s3c-hsotg: add support for usb core regulator"

This reverts commit 3fce4fefb40c28cadc40d2fa3452121eb0240ec1.

9 years agoxc5000: be sure that the firmware is there before set params
Mauro Carvalho Chehab [Sun, 10 Aug 2014 01:49:48 +0000 (22:49 -0300)]
xc5000: be sure that the firmware is there before set params

Now that xc5000_set_params() is also called during resume,
move the code that checks for the firmware to happen there.

This way, the firmware will be loaded either for analog or
digital TV when .resume callback is called.

Change-Id: I84765a1c1fb1913c2918eb1d5e8ce376bcf63817
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoau0828: Fix DVB resume when streaming
Mauro Carvalho Chehab [Sun, 10 Aug 2014 01:28:58 +0000 (22:28 -0300)]
au0828: Fix DVB resume when streaming

When DVB is streaming and suspend is called, it will call
au0828_stop_transport(), with will clean the streaming flag.

Due to that, stop_urb_transfer() will be called twice,
causing an oops.

So, we need another flag to be used at resume, telling it
to restart DVB.

While here, add a logic at stop_urb_transfer() to prevent
it of being called twice, and convert the usb_streaming
flag into boolean.

Change-Id: I69a1096d1fae3230675ed5f452d2afdde793548b
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoau0828: fix checks if dvb is initialized
Mauro Carvalho Chehab [Sun, 10 Aug 2014 01:02:07 +0000 (22:02 -0300)]
au0828: fix checks if dvb is initialized

dev->dvb is always not null, as it is an area at the dev
memory. So, checking if (dev->dvb) is always true.

Instead of this stupid check, what the code wants to do is
to know if the DVB was successully registered.

Fix it by checking, instead, for dvb->frontend. It should
also be sure that this var will be NULL if the device was
not properly initialized.

Change-Id: I714b87027e254d34c0448ecb9a673ce1bd9e9e32
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] xc5000: better name the functions
Mauro Carvalho Chehab [Sat, 9 Aug 2014 21:30:13 +0000 (18:30 -0300)]
[media] xc5000: better name the functions

xc5000_set_params() is a bad name for a function that
handles only digital TV. Rename it to xc5000_set_digital_params(),
and proper name the generic function that works for both
digital and analog.

No functional changes.

Change-Id: I4d6702105a586eadc71a1372371adda734b5311b
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] xc5000: add a resume function
Mauro Carvalho Chehab [Sat, 9 Aug 2014 20:29:01 +0000 (17:29 -0300)]
[media] xc5000: add a resume function

If a device suspends/hibertates with a station tuned, restore
the tuner station at resume.

Change-Id: I60c4265f50dc365d019cba9dfaa3bd1a046c6adc
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] xc5000: Split config and set code for analog/radio
Mauro Carvalho Chehab [Sat, 9 Aug 2014 20:27:19 +0000 (17:27 -0300)]
[media] xc5000: Split config and set code for analog/radio

As we need a function that reapply the last tuned radio,
in order to do resume, split the code that validates and
updates the internal priv struct from the ones that
actually set radio and TV.

A latter patch will add support for resume.

Change-Id: Icfb7c31de0d61b2c78f4e43b3199e4c9d407e846
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: move the code that sets DTV on a separate func
Mauro Carvalho Chehab [Sat, 9 Aug 2014 19:52:27 +0000 (16:52 -0300)]
[media] au0828: move the code that sets DTV on a separate func

As we'll be adding a code to resume tuner operation, we
need to move the code that actually sets DTV on a separate
function, to be called by the resume code.

No functional changes, just code got moved.

Change-Id: I0a1beda57f6fcd3549e301b674110409d65e7ad0
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] xc5000: fix xc5000 suspend
Mauro Carvalho Chehab [Sat, 9 Aug 2014 19:22:25 +0000 (16:22 -0300)]
[media] xc5000: fix xc5000 suspend

After xc5000 stops working, it waits for 5 seconds, waiting
for a new usage. Only after that it goes to low power mode.

If a suspend event happens before that, a work queue will
remain active, with causes suspend to crash.

Change-Id: I27c8d41754e33c6114d466d076082181241fb7a2
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] dvb-frontend: add core support for tuner suspend/resume
Mauro Carvalho Chehab [Sat, 9 Aug 2014 18:23:35 +0000 (15:23 -0300)]
[media] dvb-frontend: add core support for tuner suspend/resume

While several tuners have some sort of suspend/resume
implementation, this is currently mangled with an optional
.sleep callback that it is also used to put the device on
low power mode.

Not all drivers implement it, as returning the driver from
low power may require to re-load the firmware, with takes
some time. Also, some drivers may delay it.

So, the more coherent is to add two new optional callbacks
that will let the tuners to directy implement suspend and
resume callbacks if they need.

Change-Id: I0cf3b2cb2879cf538a86fa88a4ce210dd6dd3225
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: add pr_info to track au0828 suspend/resume code
Mauro Carvalho Chehab [Sat, 9 Aug 2014 14:53:44 +0000 (11:53 -0300)]
[media] au0828: add pr_info to track au0828 suspend/resume code

Suspend/resume conditions can be very tricky. Add some info
printk's to help tracking what's happening there.

Change-Id: Ie4c2d905c501727736789bbe3bb5351a82163b7f
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: use pr_foo macros
Mauro Carvalho Chehab [Sat, 9 Aug 2014 14:39:16 +0000 (11:39 -0300)]
[media] au0828: use pr_foo macros

Instead of using printk(KERN_foo, use pr_foo() macros.

No functional changes.

Note: we should do the same for dprintk(), but that would
require to remove the dprintk levels. So, for now, let's
not touch on it.

Change-Id: I08f9e5b09f9a86766d20c5a76ffce273da2b7c9c
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: Remove a bad whitespace
Mauro Carvalho Chehab [Sat, 9 Aug 2014 14:42:43 +0000 (11:42 -0300)]
[media] au0828: Remove a bad whitespace

Change-Id: I34d0ed4046b185ddd055cb5bb72c8ebd22bd65e9
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: add suspend/resume code for V4L2
Mauro Carvalho Chehab [Sat, 9 Aug 2014 13:50:44 +0000 (10:50 -0300)]
[media] au0828: add suspend/resume code for V4L2

No timers should be enabled during suspend. So,
stop them. At resume time, we should do the proper
initialization for it to keep working.

Change-Id: Ia7edbf78f685e54559d039cf1e77a5b236020abb
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: properly handle stream on/off state
Mauro Carvalho Chehab [Sat, 9 Aug 2014 18:29:22 +0000 (15:29 -0300)]
[media] au0828: properly handle stream on/off state

The STREAM_ON state is used by s_format callback,
but the driver never sets it.

Fix it. This will also be needed in order to handle
suspend/resume ops.

Change-Id: I73a5bf3d65acf7684814a056cde3db87030698b6
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: Add suspend code for DVB
Mauro Carvalho Chehab [Sat, 9 Aug 2014 13:47:10 +0000 (10:47 -0300)]
[media] au0828: Add suspend code for DVB

The scheduled work should be cancelled during suspend.

At resume time, we need to set the frontend again. So,
add such logic to the driver.

Change-Id: I5766af53a9d684200c1a79d54eea14bc7786bfc3
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoau0828: be sure to reenable the bridge and GPIOs on resume
Mauro Carvalho Chehab [Sat, 9 Aug 2014 11:29:38 +0000 (08:29 -0300)]
au0828: be sure to reenable the bridge and GPIOs on resume

At resume, we should restore the register contents. So,
reenable the bridge and GPIO settings.

Change-Id: Ie4476799c75eac1e729c50b829c62a1f28eaff8a
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: don't let the IR polling thread to run at suspend
Mauro Carvalho Chehab [Fri, 8 Aug 2014 10:35:37 +0000 (07:35 -0300)]
[media] au0828: don't let the IR polling thread to run at suspend

Trying to make au0828 to suspend can do very bad things, as
the polling Kthread is not handled. We should disable it
during suspend, only re-enabling it at resume.

Still, analog and digital TV won't work, as we don't reinit
the settings at resume, but at least it won't hang.

Change-Id: I71fab1b56df5b1a32a75cda98bebf3da1dfda11b
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: remove VIDEO_AU0828_RC scope around au0828_rc_*
Shuah Khan [Sat, 9 Aug 2014 00:36:19 +0000 (21:36 -0300)]
[media] au0828: remove VIDEO_AU0828_RC scope around au0828_rc_*

Remove CONFIG_VIDEO_AU0828_RC scope around au0828_rc_register()
and au0828_rc_unregister() calls in au0828-core

Change-Id: I9431dffe542e5ffd625ead27fe448d6a848fd720
Signed-off-by: Shuah Khan <shuah.kh@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: add au0828_rc_*() for VIDEO_AU0828_RC disabled
Shuah Khan [Sat, 9 Aug 2014 00:36:18 +0000 (21:36 -0300)]
[media] au0828: add au0828_rc_*() for VIDEO_AU0828_RC disabled

Define au0828_rc_*() stubs to avoid compile errors when
VIDEO_AU0828_RC is disabled and avoid the need to enclose
au0828_rc_*() in ifdef CONFIG_VIDEO_AU0828_RC in .c files.

Change-Id: I0fcea137225fd6941a6e4fddcac4862a78f636ec
Signed-off-by: Shuah Khan <shuah.kh@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: handle IR int during suspend/resume
Mauro Carvalho Chehab [Fri, 8 Aug 2014 10:28:01 +0000 (07:28 -0300)]
[media] au0828: handle IR int during suspend/resume

It doesn't make sense to handle an IR code given before
suspending after the device resume. So, turn off IR
int while suspending.

Change-Id: I2c5fa1af97e631ab5f38dd0afc8353482e0c1aa8
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years ago[media] au0828: avoid race conditions at RC stop
Mauro Carvalho Chehab [Fri, 8 Aug 2014 10:27:20 +0000 (07:27 -0300)]
[media] au0828: avoid race conditions at RC stop

As the RC kthread can re-enable IR int, we should first
cancel the kthread and then disable IR int.

While here, remove a temporary debug printk.

Change-Id: I36ab0a218c0f88c39b023e7bd0eed7b7bdbc2d0c
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoupstream: au0828-input: Be sure that IR is enabled at polling
Mauro Carvalho Chehab [Thu, 7 Aug 2014 13:46:30 +0000 (10:46 -0300)]
upstream: au0828-input: Be sure that IR is enabled at polling

When the DVB code sets the frontend, it disables the IR
INT, probably due to some hardware bug, as there's no code
there at au8522 frontend that writes on register 0xe0.

Fixing it at au8522 code is hard, as it doesn't know if the
IR is enabled or disabled, and just restoring the value of
register 0xe0 could cause other nasty effects. So, better
to add a hack at au0828-input polling interval to enable int,
if disabled.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=a623ff64e71e
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Change-Id: Ie75c8e04ddefb0ab5571a5721204e79ed92de1f1

9 years agoupstream: [media] au0828: Enable IR for HVR-850
Mauro Carvalho Chehab [Thu, 7 Aug 2014 16:10:26 +0000 (13:10 -0300)]
upstream: [media] au0828: Enable IR for HVR-850

HVR-850 also has a remote. Enable it.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=c87a627b4a23
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Change-Id: I9aac2bb9d2e3aa12143583f2b3d13ed036817de8

9 years agoupstream: au0828: add an option to disable IR via modprobe parm
Mauro Carvalho Chehab [Thu, 7 Aug 2014 16:10:25 +0000 (13:10 -0300)]
upstream: au0828: add an option to disable IR via modprobe parm

The IR code increases the power consumption of the device.
Allow to disable it via modprobe parameter.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=ca97cf053296
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Change-Id: I4a791fd762b77947c04cbac52d7b74b67749efdb

9 years agoupstream: [media] au0828: no need to sleep at the IR code
Mauro Carvalho Chehab [Thu, 7 Aug 2014 16:10:24 +0000 (13:10 -0300)]
upstream: [media] au0828: no need to sleep at the IR code

This sleep was doing some debouncing on the original driver.
This is not needed on Linux, because the RC core and the input
layer already takes care of it.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=8cf3799c5c7c
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Change-Id: Ic6e4a1cf2c585ed4ff551f1ed8061de23e385864

9 years agopackaging: upgrade to v3.10.52
Chanho Park [Fri, 8 Aug 2014 06:37:00 +0000 (15:37 +0900)]
packaging: upgrade to v3.10.52

Change-Id: I18d6c0b36f64ac8409d1a3eba8a0ee4b6961fa9d
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
9 years agotizen: update defconfig since upgraded to 3.10.52
Chanho Park [Thu, 7 Aug 2014 12:07:16 +0000 (21:07 +0900)]
tizen: update defconfig since upgraded to 3.10.52

Change-Id: I6c6545b239393eeeccaad3164f910f7c3fc5f85c
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
9 years agoregulator: s5m8767: Fix build break
Chanwoo Choi [Thu, 7 Aug 2014 07:33:31 +0000 (16:33 +0900)]
regulator: s5m8767: Fix build break

This patch fix build break as following log:

drivers/regulator/s5m8767.c: In function ‘s5m8767_reg_is_enabled’:
drivers/regulator/s5m8767.c:229:2: warning: passing argument 1 of ‘sec_reg_read’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:69:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:229:2: warning: passing argument 3 of ‘sec_reg_read’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:69:12: note: expected ‘u8 *’ but argument is of type ‘unsigned int *’
drivers/regulator/s5m8767.c: In function ‘s5m8767_reg_enable’:
drivers/regulator/s5m8767.c:246:2: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c: In function ‘s5m8767_reg_disable’:
drivers/regulator/s5m8767.c:259:2: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c: In function ‘s5m8767_pmic_probe’:
drivers/regulator/s5m8767.c:730:2: warning: passing argument 1 of ‘sec_reg_write’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:71:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:735:2: warning: passing argument 1 of ‘sec_reg_write’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:71:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:740:2: warning: passing argument 1 of ‘sec_reg_write’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:71:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:824:5: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:827:5: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:830:5: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:837:9: warning: passing argument 1 of ‘sec_reg_write’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:71:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:842:9: warning: passing argument 1 of ‘sec_reg_write’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:71:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:847:9: warning: passing argument 1 of ‘sec_reg_write’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:71:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:852:3: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:855:3: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:858:3: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:865:6: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:869:6: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:873:6: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:877:6: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:881:6: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:885:6: warning: passing argument 1 of ‘sec_reg_update’ from incompatible pointer type [enabled by default]
include/linux/mfd/samsung/core.h:73:12: note: expected ‘struct regmap *’ but argument is of type ‘struct sec_pmic_dev *’
drivers/regulator/s5m8767.c:910:24: error: ‘struct sec_pmic_dev’ has no member named ‘regmap’
make[2]: *** [drivers/regulator/s5m8767.o] Error 1

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
9 years agoRevert "vb2: fix buf_init/buf_cleanup call sequences"
Chanho Park [Thu, 7 Aug 2014 06:30:49 +0000 (15:30 +0900)]
Revert "vb2: fix buf_init/buf_cleanup call sequences"

This reverts commit d872ce298fe725f050c3bbaa652a01a9b18e7a74.

9 years agopackaging: support odroid kernel build
Chanho Park [Tue, 5 Aug 2014 11:19:54 +0000 (20:19 +0900)]
packaging: support odroid kernel build

This patch supports odroid kernel build. I think we can use a single binary for
odroid and trats2(rd-pq). However, I didn't merge it at this point because I
don't want to disturb current odroid development. I'll try to merge it to single
binary later.

Change-Id: I9064affe86510107b992d9e5fbe7c77c81c0d223
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
9 years agos5p-mfc: Comment spelling and code styling fix
Kamil Debski [Mon, 4 Aug 2014 12:27:32 +0000 (14:27 +0200)]
s5p-mfc: Comment spelling and code styling fix

Fix spelling mistakes in comment blocks and correct coding style of an if
statement.

Change-Id: I28707f1942566b222eb45a7715e489650a68a9a7
Reported-by: Zhaowei Yuan <zhaowei.yuan@samsung.com>
Signed-off-by: Kamil Debski <k.debski@samsung.com>
9 years agoclk: Add of_clk_get_by_clkspec() helper
Sylwester Nawrocki [Mon, 19 May 2014 17:22:50 +0000 (19:22 +0200)]
clk: Add of_clk_get_by_clkspec() helper

This patch adds of_clk_get_by_clkspec() helper function, which does only
a struct clk lookup from the clock providers. It is used in the subsequent
patch where parsing of a clock from device tree and the lookup from
providers needed to be split.

Change-Id: I3c8fddfc7716381e63b9731b27a988c1a3e6a733
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
9 years agos5p-mfc: limit the size of the CPB
panpan liu [Mon, 14 Jul 2014 06:42:27 +0000 (14:42 +0800)]
s5p-mfc: limit the size of the CPB

The CPB size is limited by the hardware. Add this limit to the s_fmt.

Change-Id: I4ffe90ac8b4de7aed8f396b3072d5db6ead9741c
Signed-off-by: panpan liu <panpan1.liu@samsung.com>
9 years agomedia: s5p_mfc_dec: delete the redundant code
panpan liu [Fri, 1 Aug 2014 08:58:23 +0000 (16:58 +0800)]
media: s5p_mfc_dec: delete the redundant code

Because the api s5p_mfc_queue_setup has already realized the same function

Change-Id: Ieffc9cd9d7e22d95f988ec66f232951c6f4c646c
Signed-off-by: panpan liu <panpan1.liu@samsung.com>
9 years agomedia: s5p_mfc: Check the return value of allocation routine
Zhaowei Yuan [Fri, 1 Aug 2014 05:51:12 +0000 (13:51 +0800)]
media: s5p_mfc: Check the return value of allocation routine

Check the return value of allocation routine and deal with failure.

Change-Id: Ie7df5962de5928812d1a81bb648258314c0699d1
Signed-off-by: Zhaowei Yuan <zhaowei.yuan@samsung.com>
9 years agos5p-mfc: correct improper logs
Zhaowei Yuan [Mon, 21 Jul 2014 06:47:52 +0000 (14:47 +0800)]
s5p-mfc: correct improper logs

This patch corrects improper logs within the code init hardware.

Change-Id: Ia5380723bf9398128412e050cadfaf1cb734d17e
Signed-off-by: Zhaowei Yuan <zhaowei.yuan@samsung.com>
9 years agopackaging: move modules from /boot/lib/modules to /boot/modules.img
Chanho Park [Tue, 5 Aug 2014 08:12:00 +0000 (17:12 +0900)]
packaging: move modules from /boot/lib/modules to /boot/modules.img

The latest e2fsprogs have a functionality to make ext2/3/4 image from directory.
It acts like genext2fs or mkext4fs of android tools. I took some patches for it
from e2fsprogs next branch and it will be merged in next release.

A mobile device tend to locate kernel image and modules in the same partition
because it should be easily recovered when the partition was broken. Thus, I
also located the modules image in the /boot partition instead of /lib/modules
directory. This patch supports making the modules.img from obs/gbs build.

Change-Id: I480837378e07bc327ac2379211893799bb452402
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
9 years agoOdroid : Set Configuration flags to get loaded Bluetooth drivers.
paraskumar [Tue, 5 Aug 2014 06:03:13 +0000 (15:03 +0900)]
Odroid : Set Configuration flags to get loaded Bluetooth drivers.

This patch enables configuration flags to load USB Bluetooth,
HCIUART, HCIBTUSB, BT_RFCOMM and few HID drivers to use Bluetooth
Mouse or Keyboard.

Change-Id: I116fab362b9e4b8561b7d507081230b4e602a835
Signed-off-by: Paras Kumar <paras.kumar@samsung.com>
9 years agoodroid: enable smack permissive mode
Chanho Park [Fri, 1 Aug 2014 01:51:46 +0000 (10:51 +0900)]
odroid: enable smack permissive mode

This patch enables smack permissive mode because the platform cannot
support smack correctly. This option will be disabled when the platform
is more stable and support smack correctly.

Change-Id: Ifeb1d2d5454f01f17d94cd02a7c5c2965a9b39f7
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
9 years agosmack: add permissive mode for debugging purpose
Chanho Park [Tue, 3 Jun 2014 10:54:53 +0000 (19:54 +0900)]
smack: add permissive mode for debugging purpose

Change-Id: I4389736181c63ae5af670695784cedd21631ba89
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
9 years agoASoC: odroidx2_max98090: Update odroidx2_audio_probe from upstream
Huang Chao [Thu, 31 Jul 2014 06:05:52 +0000 (14:05 +0800)]
ASoC: odroidx2_max98090: Update odroidx2_audio_probe from upstream

This patch mainly updates the audio probe and remove function
from the upstream driver, replace the of_parse_phandle return
pointer from the global variables to be local ones. And update
the goto error jump symbols.

Change-Id: Ie0724f1cc0709f72d4feccda4af60985cb732764
Signed-off-by: Huang Chao <chao7.huang@samsung.com>
9 years agodrm: add checking DRM_FORMAT_NV12MT
Joonyoung Shim [Mon, 28 Jul 2014 00:31:21 +0000 (09:31 +0900)]
drm: add checking DRM_FORMAT_NV12MT

If user NV12MT uses as pixel format, the Addfb2 ioctl is failed because
of missing to check DRM_FORMAT_NV12MT. The NV12MT pixel format is
supported by exynos4 and some qualcomm chipset and it is used by exynos
drm driver.

Change-Id: I94435dc3bff96377b9dd295d469e862ac637c6bc
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
9 years agodrm/exynos: control blending of mixer graphic layer 0
Joonyoung Shim [Fri, 25 Jul 2014 10:34:21 +0000 (19:34 +0900)]
drm/exynos: control blending of mixer graphic layer 0

The mixer graphic layer 0 isn't blended as default by commit
0377f4ed9f1aed30292c4e3c87f24e028ae26f36(drm/exynos: Don't blend mixer
layer 0). But it needs to be blended with graphic layer 0 if video layer
is enabled by vp because video layer is bottom.

Change-Id: I3c4a18c569463fab5cd210e654428bfae8fd5e2d
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
9 years agotizen_odroid_defconfig: add support for HVR950Q RC
Mauro Carvalho Chehab [Wed, 30 Jul 2014 19:13:00 +0000 (16:13 -0300)]
tizen_odroid_defconfig: add support for HVR950Q RC

Now that we've backported the patches for HVR950Q Remote
Controller, enable it at the default config for Odroid.

Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoupstream: [media] xc5000: always write at dmesg when it fails to upload firmware
Mauro Carvalho Chehab [Wed, 30 Jul 2014 14:17:46 +0000 (11:17 -0300)]
upstream: [media] xc5000: always write at dmesg when it fails to upload firmware

On a normal condition, no errors should happen at xc5000
firmware upload is done. So, print at the dmesg if something
bad happens.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=ee67674a7758
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoupstream: [media] xc5000: optimize firmware retry logic
Mauro Carvalho Chehab [Wed, 30 Jul 2014 14:09:15 +0000 (11:09 -0300)]
upstream: [media] xc5000: optimize firmware retry logic

Currently, firmware retry logic keeps reading from FS every
time during the retry logic. This is not needed. Instead,
only release the firmware read after success.

While here, make the non-debug messages less verbose, as it
only matters to the user if the firmware was successfully
loaded, or if some error happened.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=8604f3552b1c
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoupstream: [media] xc5000: Don't try forever to load the firmware
Mauro Carvalho Chehab [Wed, 30 Jul 2014 13:36:32 +0000 (10:36 -0300)]
upstream: [media] xc5000: Don't try forever to load the firmware

With the current code, if something bad happens during the
firmware init process, the device will keep trying forever,
and removing it would cause an OOPS.

Instead, try only a limited amount of time. If not, fails.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=2621c0b32246
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoupstream: [media] au0828: add support for IR on HVR-950Q
Mauro Carvalho Chehab [Fri, 25 Jul 2014 01:49:02 +0000 (22:49 -0300)]
upstream: [media] au0828: add support for IR on HVR-950Q

HVR-950Q uses an I2C remote controller at address 0x47 (7-bits
notation). Add support for it.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=2fcfd317f66c
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoupstream: [media] rc-main: allow raw protocol drivers to restrict the allowed protos
Mauro Carvalho Chehab [Mon, 28 Jul 2014 17:25:28 +0000 (14:25 -0300)]
upstream: [media] rc-main: allow raw protocol drivers to restrict the allowed protos

On some hardware (au0828/au8522), the hardware is broken with
regards to the initial pulse detection. So, the driver needs to
produce a fake start pulse. That limits the acceptable protocols,
as it is not possible to produce a fake pulse that would cover
all supported protocols.

So, allow the driver to explicitly set the allowed protocols.

If the driver doesn't specify, keep the old behavior.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=d24b69fc6b0a
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoupstream: [media] au0828: improve I2C speed
Mauro Carvalho Chehab [Fri, 25 Jul 2014 17:02:14 +0000 (14:02 -0300)]
upstream: [media] au0828: improve I2C speed

Commits 21dc61d3c0a4 and 7a1dd50b89d4 reduced the board I2C
speed to 20 MHz by default, due to a I2C stretch issue:
while xc5000 uses i2c stretch when a command is sent to it,
au0828 doesn't support this feature.

However, this is needed only for Xceive tuners. The other
I2C devices can work at the max speed.

So, revert the workarounds at board level, handling it at
I2C level, only when talking with xc5000.

Backports http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=cfd0c77d0830
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
9 years agoARM: dts: Fix i2s2 node to support sound in Exynos3250 SoC
Inha Song [Mon, 28 Jul 2014 06:35:35 +0000 (15:35 +0900)]
ARM: dts: Fix i2s2 node to support sound in Exynos3250 SoC

This patch Fix i2s2 node to support sound in Exynos3250 SoC.
Exynos3250 does not have RCLK clock source selection bit in
IISMOD register. So we need to set "samsung,no-muxpsr"
property in i2s node.

Signed-off-by: Inha Song <ideal.song@samsung.com>
9 years agoASoC: Samsung: i2s: Check whether other i2s_dai is NULL
Inha Song [Mon, 28 Jul 2014 06:27:01 +0000 (15:27 +0900)]
ASoC: Samsung: i2s: Check whether other i2s_dai is NULL

If i2s don't have a secondary i2s dai, other i2s_dai is NULL.
So we need to check whether other i2s_dai is NULL before set
other->cdclk_out to i2s->cdclk_out in i2s_shutdown function.

Signed-off-by: Inha Song <ideal.song@samsung.com>
9 years agosound: soc/samsung: i2s: Add DT property to support NO_MUXPSR quirk
Tomasz Figa [Thu, 9 Jan 2014 16:20:17 +0000 (17:20 +0100)]
sound: soc/samsung: i2s: Add DT property to support NO_MUXPSR quirk

This patch adds property to samsung-i2s DT binding indicating that
controller does not have RCLK source selection bit in IISMOD register.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
9 years agosound: soc/samsung: i2s: Init clock hierarchy only for audio subsystem
Tomasz Figa [Wed, 8 Jan 2014 13:03:43 +0000 (14:03 +0100)]
sound: soc/samsung: i2s: Init clock hierarchy only for audio subsystem

Clock hierarchy needs to be initialized only for I2S that is a part of
Audio Subsystem. Remaining I2S do not need this, so this patch makes the
initialization conditional, based on presence of secondary DAI, which is
present only in Audio Subsystem I2S block.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
9 years agoASoC: ymu831: Add Yamaha YMU831 codec support
Inha Song [Fri, 11 Jul 2014 01:08:43 +0000 (10:08 +0900)]
ASoC: ymu831: Add Yamaha YMU831 codec support

Signed-off-by: Inha Song <ideal.song@samsung.com>
9 years agolocal/input: touchscreen: mms128: code clean and open/close callback
Beomho Seo [Mon, 28 Jul 2014 06:43:39 +0000 (15:43 +0900)]
local/input: touchscreen: mms128: code clean and open/close callback

This patch codeclean and add callback function.
- Add open/close callback function.
- Remove code about unused configuration, function and enum.

Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
9 years agoinput: misc: add regulator-haptic driver
Hyunhee Kim [Fri, 25 Jul 2014 06:47:42 +0000 (15:47 +0900)]
input: misc: add regulator-haptic driver

Haptic motor controlled by voltage in regulator. And driver support
force-feedback interface.

Signed-off-by: Hyunhee Kim <hyunhee.kim@samsung.com>
[code cleanup and add detailed description by Jaewon Kim]
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>