Marek Szyprowski [Thu, 12 Mar 2015 12:10:31 +0000 (13:10 +0100)]
iommu: dma_domain: use size aligned iova allocation
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Robin Murphy [Fri, 6 Feb 2015 14:55:13 +0000 (14:55 +0000)]
iommu: implement common IOMMU ops for DMA mapping
Taking inspiration from the existing arch/arm code, break out some
generic functions to interface the DMA-API to the IOMMU-API. This will
do the bulk of the heavy lifting for IOMMU-backed dma-mapping.
Whilst this RFC series is aimed at enabling arm64, once any remaining
obvious issues in the common code are addressed we can complete the
refactoring by porting arch/arm over for a merge-worthy series.
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Marek Szyprowski [Fri, 20 Feb 2015 08:44:50 +0000 (09:44 +0100)]
temporary: iommu: exynos: add support of SYSMMU v5 (36bit) on ARM64
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Thu, 31 Jul 2014 08:37:59 +0000 (10:37 +0200)]
temporary: media: s5p-mfc: remove DT hacks & initialization custom memory init code
This patch removes custom initialization of reserved memory regions from
s5p-mfc driver. Driver will use main device pointer for all memory allocations.
This patch is temporary, do not merge it yet.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Fri, 16 Jan 2015 13:10:33 +0000 (14:10 +0100)]
media: videobuf2-dc: set properly dma_max_segment_size
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Wed, 8 Apr 2015 12:54:02 +0000 (14:54 +0200)]
ARM: dts: exynos: add iommu reserved regions for bootloader's splash screen
Some bootloaders enable FIMD module and configure it as a simple
framebuffer to display boot logo or splash screen before booting the
kernel. Such framebuffer stays enabled until proper kernel driver gets
probbed. Usually it is configured in such a way, that it performs DMA
from the buffer located in system memory. To avoid IOMMU access fault
during system boot, additional identity mapping between system memory
and IO virtual address space must be created when IOMMU driver gets
enabled.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Mon, 5 Jan 2015 14:35:20 +0000 (15:35 +0100)]
ARM: dts: exynos5420: add sysmmu nodes
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Mon, 5 Jan 2015 08:15:57 +0000 (09:15 +0100)]
ARM: dts: exynos5250: add sysmmu nodes
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Thu, 9 Apr 2015 07:59:29 +0000 (09:59 +0200)]
ARM: dts: exynos4415: add sysmmu nodes
This patch adds System MMU nodes to all defined devices that are specific
to Exynos4415 series.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Thu, 9 Apr 2015 07:54:31 +0000 (09:54 +0200)]
ARM: dts: exynos3250: add sysmmu nodes
This patch adds System MMU nodes to the devices that are specific to
Exynos3250 series.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Wed, 19 Nov 2014 08:33:53 +0000 (09:33 +0100)]
ARM: dts: exynos4: add sysmmu nodes
This patch adds System MMU nodes that are specific to Exynos4210/4x12 series.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Wed, 8 Apr 2015 11:45:55 +0000 (13:45 +0200)]
arm: dma-mapping: add support for creating reserved mappings in iova space
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Mon, 30 Mar 2015 10:31:11 +0000 (12:31 +0200)]
iommu: exynos: remove unneeded code
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Tue, 16 Sep 2014 07:28:59 +0000 (09:28 +0200)]
iommu: exynos: add callback for initializing devices from device tree
This patch adds implementation of of_xlate callback, which prepares
masters device for attaching to IOMMU. This callback is called during
creating devices from device tree.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Tue, 16 Sep 2014 07:28:22 +0000 (09:28 +0200)]
iommu: exynos: init from dt-specific callback instead of initcall
This patch introduces IOMMU_OF_DECLARE-based initialization to the
driver, which replaces subsys_initcall-based procedure.
exynos_iommu_of_setup ensures that each sysmmu controller is probed
before its master device.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
[k.kozlowski: rebased on 4.1]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Marek Szyprowski [Tue, 2 Sep 2014 11:48:54 +0000 (13:48 +0200)]
iommu: exynos: remove excessive includes and sort others alphabetically
Removed following unused includes: <linux/mm.h>, <linux/errno.h>,
<linux/memblock.h> and <linux/export.h>.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Tue, 2 Sep 2014 11:14:38 +0000 (13:14 +0200)]
iommu: exynos: document internal structures
Add a few words of comment to all internal structures used by the driver.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Tue, 5 Aug 2014 06:03:06 +0000 (08:03 +0200)]
iommu: exynos: rename variables to reflect their purpose
This patch renames some variables to make the code easier to understand.
'domain' is replaced by 'iommu_domain' (more generic entity) and really
meaning less 'priv' by 'domain' to reflect its purpose.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
[k.kozlowski: rebased on 4.1]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Marek Szyprowski [Tue, 2 Sep 2014 11:47:49 +0000 (13:47 +0200)]
iommu: exynos: add support for runtime_pm
This patch fixes support for runtime power management for SYSMMU
controllers, so they are enabled when master device is attached.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Thu, 31 Jul 2014 10:18:37 +0000 (12:18 +0200)]
iommu: exynos: add support for binding more than one sysmmu to master device
This patch adds support for assigning more than one SYSMMU controller to
the master device. This has been achieved simply by chaning the struct
device pointer in struct exynos_iommu_owner into the list of struct
sysmmu_drvdata of all controllers assigned to the given master device.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Tue, 16 Sep 2014 06:26:40 +0000 (08:26 +0200)]
iommu: exynos: remove useless device_add/remove callbacks
The driver doesn't need to do anything important in device add/remove
callbacks, because initialization will be done from device-tree specific
callbacks added later. IOMMU groups created by current code were never
used.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Thu, 31 Jul 2014 10:15:07 +0000 (12:15 +0200)]
iommu: exynos: remove unused functions, part 2
After refactoring functions to use pointer to struct sysmmu_drvdata
directly, some functions became useless and thus never used, so remove
them completely.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Thu, 31 Jul 2014 10:13:18 +0000 (12:13 +0200)]
iommu: exynos: refactor function parameters to simplify code
This patch simplifies the code by:
- refactoring function parameters from struct device pointer to direct pointer
to struct sysmmu drvdata
- moving list_head enteries from struct exynos_iommu_owner directly to struct
sysmmu_drvdata
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
[k.kozlowski: rebased on 4.1]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Marek Szyprowski [Wed, 30 Jul 2014 12:39:50 +0000 (14:39 +0200)]
iommu: exynos: remove useless spinlock
This patch removes useless spinlocks and other unused members from
struct exynos_iommu_owner. There is no point is protecting this
structure by spinlock because content of this structure doesn't change
and other structures have their own spinlocks.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Wed, 30 Jul 2014 12:23:10 +0000 (14:23 +0200)]
iommu: exynos: remove unused functions
This patch removes two unneeded functions, which are not a part of
generic IOMMU API and were never used by any other driver.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Wed, 30 Jul 2014 08:54:05 +0000 (10:54 +0200)]
iommu: exynos: don't read version register on every tlb operation
This patch removes reading of REG_MMU_VERSION register on every tlb
operation and caches SYSMMU version in driver's internal data.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Mon, 13 Apr 2015 11:43:39 +0000 (13:43 +0200)]
drm/exynos: fimd: ensure proper hw state in fimd_clear_channel()
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
[k.kozlowski: rebased on 4.1]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Marek Szyprowski [Wed, 19 Nov 2014 07:54:03 +0000 (08:54 +0100)]
arm: exynos: pm_domains: register power domain driver from core_initcall
SYSMMU devices are registered very early in arch_initcall, so ensure
that they can get access to power domains by registering power domain
driver from earlier initcall.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Tue, 16 Sep 2014 06:15:15 +0000 (08:15 +0200)]
drm: exynos: detach from default dma-mapping domain on init
This patch adds code, which detach sub-device nodes from default iommu
domain if such has been configured.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Marek Szyprowski [Fri, 3 Apr 2015 11:47:54 +0000 (13:47 +0200)]
Revert "review / drm/exynos: add more condition to check iommu support"
This reverts commit
92ceb1a45f152ef0f0f59c85f0778bf8e4175723.
Marek Szyprowski [Fri, 3 Apr 2015 11:39:49 +0000 (13:39 +0200)]
Revert "local / arm: dts: exynos3250: Add sysmmu node"
This reverts commit
11df426c8508c7b2e5dded86171bacf843d59c22.
Marek Szyprowski [Fri, 3 Apr 2015 11:39:39 +0000 (13:39 +0200)]
Revert "local / arm: dts: exynos4: Add sysmmu node"
This reverts commit
63f869b95f271432bd6e56cb5f0341024883d480.
Jonghwa Lee [Tue, 21 Apr 2015 11:00:43 +0000 (20:00 +0900)]
arm64: configs: Enable CONFIG_RTC_DRV_S3C kernel option.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jaehoon Chung [Tue, 21 Apr 2015 04:49:54 +0000 (13:49 +0900)]
local/mmc: dw_mmc: exynos: don't send the tuning command if already tuned
If sample clock has already found, need not to send the tuning command.
(This is the patch that fixed the suspend-to-ram issue.)
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Seung-Woo Kim [Tue, 21 Apr 2015 02:16:42 +0000 (11:16 +0900)]
LOCAL / arm64: configs: enable smack permissive mode
This patch enables smack permissive to allow smack denied operation
with log from audit feature.
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Chanho Park [Tue, 3 Jun 2014 10:54:53 +0000 (19:54 +0900)]
LOCAL / smack: add permissive mode for debugging purpose
This patch adds smack permissive mode.
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
[k.kozlowski: rebased on 4.1]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Hyungwon Hwang [Tue, 21 Apr 2015 01:58:26 +0000 (10:58 +0900)]
Revert "temporary / remove dsi phy related code"
This reverts the commit
38bf1efd189fb4578b97bbf857eeb12d987f9021
("temporary / remove dsi phy related code").
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Hyungwon Hwang [Fri, 10 Apr 2015 01:39:01 +0000 (10:39 +0900)]
drm/exynos: dsi: add the backward compatibility for the renamed clock
From the commit
a45abd04a46048a4956408543cdbdd8bdedd3215
("drm/exynos: dsi: rename pll_clk to sclk_clk'), the compiled dtb
which contains 'pll_clk' becomes not compatible with the current DSI
driver. This patch adds the backward compatibility for this issue.
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Hyungwon Hwang [Tue, 21 Apr 2015 01:33:44 +0000 (10:33 +0900)]
arm64: configs: enables MIPI PHY driver
This patch enables MIPI PHY driver.
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Hyungwon Hwang [Tue, 21 Apr 2015 01:32:44 +0000 (10:32 +0900)]
arm64: dts: exynos5433: Add DSI PHY node
This patch adds DSI PHY node and properties in MIPI DSI node to refer the
newly added node for PHY control.
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Hyungwon Hwang [Tue, 21 Apr 2015 01:23:00 +0000 (10:23 +0900)]
LOCAL / drm/exynos: fix the bug during generalizing the register setting
From the commit
f9f70912f41e347acd60e22ad0bb6962e83add81 (drm/exynos:
dsi: generalize register setting and clock control), plltmr setting
has not been done correctly. Also, there was a line which does not use
the newly introduced macro. This patch fixes the problem, make all
code in the driver use the new macro, and clean up the code.
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Beomho Seo [Mon, 20 Apr 2015 12:58:28 +0000 (21:58 +0900)]
LOCAL / input: keyboard: cypress-touchkey: Fix touchkey_start function
This patch fix touchkey cypress for correctly working after
suspend/resume.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Inha Song [Wed, 15 Apr 2015 08:45:33 +0000 (17:45 +0900)]
LOCAL / ASoC: samsung: Fix warning in lpass driver
This patch fix a compile warning:
sound/soc/samsung/lpass.c:30:1: warning: useless storage class specifier in empty declaration
Signed-off-by: Inha Song <ideal.song@samsung.com>
Inha Song [Wed, 15 Apr 2015 07:56:40 +0000 (16:56 +0900)]
LOCAL / ASoC: samsung: Add codec set_pll in stop_sysclk for FLL1 stop
This patch add snd_soc_codec_set_pll function in stop_sysclk for FLL1 stop.
Arizona driver use pm runtime. So, we should call pm_runtime_suspend callback
function by Stop FLL1.
Signed-off-by: Inha Song <ideal.song@samsung.com>
Inha Song [Wed, 15 Apr 2015 07:38:27 +0000 (16:38 +0900)]
LOCAL / ASoC: samsung: Add pm ops to lpass driver
This patch add pm ops to lpass driver. After resume,
We should toggle LPASS_CORE_SW_RESET to reset lpass IPs.
Signed-off-by: Inha Song <ideal.song@samsung.com>
Inha Song [Wed, 15 Apr 2015 07:33:48 +0000 (16:33 +0900)]
LOCAL / ASoC: samsung: Add software reset in lpass enable
This patch add software reset in lpass enable function.
For lpass ip software reset, we should toggle (1 -> 0 -> 1).
Signed-off-by: Inha Song <ideal.song@samsung.com>
Inha Song [Tue, 14 Apr 2015 07:45:22 +0000 (16:45 +0900)]
LOCAL / clk: samsung: exynos5433: enable ignore unused flag
This patch enable ignore unused flags for control SFR_LPASS_* registers.
Signed-off-by: Inha Song <ideal.song@samsung.com>
Beomho Seo [Fri, 10 Apr 2015 07:59:58 +0000 (16:59 +0900)]
LOCAL / arm64 dts: exynos5433: Add always on clock for aud uart
This patch add always on clock for aud uart.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Beomho Seo [Fri, 10 Apr 2015 06:39:56 +0000 (15:39 +0900)]
LOCAL / arm64: dts: exynos5433: Add sleep state pinctrl for bluetooth
This patch add sleep state pinctrl for bluetooth.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Beomho Seo [Fri, 10 Apr 2015 06:33:19 +0000 (15:33 +0900)]
LOCAL / net: rfkill: Fix irq trigger
This patch fix wrong irq trigger.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Jonghwa Lee [Fri, 17 Apr 2015 17:56:46 +0000 (02:56 +0900)]
cpufreq: arm_big_little_dt: Free opp table from referenced CPU
When opp table is defined only one for each CLUSTER, opp table might
not be freed even all CPUs in CLUSTER hoplugged off unless last CPU
was referenced one. And un-freed opp table occurs annoying warning
messages when CPU hotplugged on again.
<Warning Log>
[ 2931.471956] cpu cpu4: _opp_add_dynamic: duplicate OPPs detected ~
So it fixes it to work corretly with modifying freeing procedure.
If last CPU is not the referenced one which holds opp table for CLUSTER,
it tries to find opp table from other sibling CPUs. Otherwise, it just
free itself's.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Fri, 17 Apr 2015 16:56:45 +0000 (01:56 +0900)]
arm64: dts: exynos5433: Add 'suspend-freq' to cpu's node.
The property 'suspend-freq' will be used to preset CPU's freqeuncy
before entering suspend state. It sets the value to default at booting.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Fri, 17 Apr 2015 16:49:22 +0000 (01:49 +0900)]
cpufreq: arm_big_little_dt: Parse suspend frequency from CPU's dt node
Some bigLittle system needs safety CPU freqeuncy to enter suspend state.
And it provides the way to get the frequency via devicetree.
Obtained suspend-safe frequency will be preset before the CPU goes into
sleep through the help of CPUFREQ subsystem.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Fri, 17 Apr 2015 16:36:16 +0000 (01:36 +0900)]
cpufreq: arm_big_little: Introduce suspend callback for bigLittle
It adds cpufreq's suspend callback to satisfy with some specific
requirements for suspend depends on chip implementation. When CPUFREQ
subsystem goes into suspend this driver will simply call arm_bL_ops's
suspend callback if it exists.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Thu, 14 Aug 2014 10:57:03 +0000 (19:57 +0900)]
rtc: s3c: Make tick timer to be a selectable option.
s3c rtc driver has enabled timer tick default. However in some system,
it's not a mandatory option. So it modifies driver that tick timer can
be enabled selectively with a property, 's3c-rtc-tick-en', in DT.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
[k.kozlowski: rebased on 4.1]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Jonghwa Lee [Thu, 9 Apr 2015 05:15:22 +0000 (14:15 +0900)]
arm64: dts: exynos5433: Enable Exynos5433 RTC device
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Thu, 9 Apr 2015 05:08:52 +0000 (14:08 +0900)]
i2c: exynos5: Adjust initcall level to subsys_initcall.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Fri, 3 Apr 2015 05:29:00 +0000 (14:29 +0900)]
arm64: dts: exynos5433-tm2: Add suspend-on, suspend-reparent clocks.
This patch adds following clocks to 'suspend-on' clock list,
- CLK_SCLK_DSIM0_DISP,
- CLK_ACLK_DSIP_333,
- CLK_SCLK_DECON_ECLK_DISP,
and adds following clock to 'suspend-reparent' clock list.
- CLK_MOUT_AUD_PLL_USER
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Fri, 3 Apr 2015 05:25:46 +0000 (14:25 +0900)]
arm64: dts: exynos5433-tm2: Add always-on clocks.
This patch adds following clocks to 'always-on' clock domain.
- CLK_PCLK_UART1
- CLK_SCLK_UART1
- CLK_PCLK_AUD_UART
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Fri, 3 Apr 2015 05:17:22 +0000 (14:17 +0900)]
clk: samsung: exynos5433: Add suspend_prepare/unprepare callback.
This patch adds exynos5433 CMU's suspend_prepare/unprepare callback.
Exynos5433 has clocks to be controlled before entering suspend.
There're two types of clocks, one is a clock which has to be turned
on at suspend, and another is a clock which has to be set parent clock
to specified one. It can be defined at device tree with properties,
'suspend-on-clks' and 'suspend-reparent-clks'.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Fri, 3 Apr 2015 05:16:51 +0000 (14:16 +0900)]
clk: samsung: Introduce supend_prepare/unprepare callback.
To manage the chip dependent clock control for suspend, this patch introduce
additional suspend callback at the level of entering suspend.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Lee Jones [Fri, 27 Mar 2015 08:47:27 +0000 (17:47 +0900)]
LOCAL / RFC / clk: Provide an always-on clock domain framework
Lots of platforms contain clocks which if turned off would prove fatal.
The only way to recover is to restart the board(s). This driver takes
references to clocks which are required to be always-on in order to
prevent the common clk framework from trying to turn them off during
the clk_disabled_unused() procedure.
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Jonghwa Lee [Mon, 16 Mar 2015 14:05:31 +0000 (23:05 +0900)]
arm64: defconfig: Enable CONFIG_EXYNOS5433_PMU, CONFIG_EXYNOS5433_PM option
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Mon, 16 Mar 2015 13:52:28 +0000 (22:52 +0900)]
spi: s3c64xx: Enable SCLK, PCLK to access sfr register during resume.
For Exynos5433, it needs to enable both of SCLK, PCLK clocks to access
sfr registers. It enables them before calling s3c64xx_spi_hw_init() at
resume state regardless of runtime pm state. After initialization, it
disables them again depends on runtime pm state to synchorize with
enabling count.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Tue, 16 Dec 2014 07:52:14 +0000 (16:52 +0900)]
arm64: dts: exynos5433-tm2: Set suspend operation mode of s2mps13 regulations.
Mark regulators to be powered off during in suspend.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Tue, 10 Mar 2015 06:32:09 +0000 (15:32 +0900)]
soc: samsung: Called regulator_suspend_prepare/finish for suspend.
To enter system-wide suspend, it may requires to set suspend operation
mode for regulators. Thus it calls regulator_suspend_prepare()/_finish()
at the proper step of suspend.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Mon, 15 Dec 2014 11:29:40 +0000 (20:29 +0900)]
clk: exynos5433: Add 'CLK_IGNORE_UNUSED' flag to clocks occuring hang at resume
Add 'CLK_IGNORE_UNUSED' flag to th clocks which make hang at wake-up.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Tue, 9 Dec 2014 11:34:41 +0000 (20:34 +0900)]
clk: exynos5433: Add CLK_IGNORE_UNUSED flag to clocks occurring hang at sleep
Some clocks are required being unmasked during suspend-to-ram. Otherwise,
PMU will stuck and power line never down.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Tue, 2 Dec 2014 01:55:39 +0000 (10:55 +0900)]
clk: exynos5433: Add 'CLK_IGNORE_UNUSED' flag to clocks for sercure monitor call
This patch adds 'CLK_IGNORE_UNUSED' flag to clocks which is required for
operation of secure monitor call (smc). System will hang when it executes 'smc'
with one of those clock is gated. All related clocks must be enabled.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Wed, 17 Dec 2014 05:17:58 +0000 (14:17 +0900)]
LOCAL / arm64: psci: Support generic pm suspend withtout CPUIDLE subsystem's help.
Current psci's cpu_suspend callback can be used only when common cpu idle
configuration is enabled. However, it's also needed for system which only
uses generic pm suspend not cpu idle. This patch modifies psci driver to
support both of cases.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Wed, 17 Dec 2014 08:01:52 +0000 (17:01 +0900)]
arm64: dts: exynos5433: Add device node of EXYNOS5433 iRAM
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Wed, 17 Dec 2014 08:17:59 +0000 (17:17 +0900)]
soc: samsung: exynos5433: Add support pm driver for EXYNOS5433
This patch adds EXYNOS5433 pm driver which supports EXNOS5433 dependent
procedures to enter suspend.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
[Replace cpu_suspend to arm_cpuidle_suspend as commit fb1de80 ("arm64: kernel: rename __cpu_suspend to keep it aligned with arm")]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Jonghwa Lee [Wed, 17 Dec 2014 08:06:03 +0000 (17:06 +0900)]
soc: samsung: Add support EXYNOS generic power management driver.
To enter suspend, EXYNOS requires some machine dependent procedures.
This patch introduces new driver to support those requirements and generic
interface for power state management.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Tue, 16 Dec 2014 11:41:58 +0000 (20:41 +0900)]
soc: samsung: exynos5433-pmu: Add support pmu driver for EXYNOS5433.
Add initial support Exynos5433's PMU driver. Exynos5433 PMU has more specified
system level power down modes compared to former vesion to satisfy the various
needs.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Tue, 16 Dec 2014 11:13:39 +0000 (20:13 +0900)]
WIP: soc: samsung: Initial support PMU driver for EXYNOS SoCs.
This patch's manually ported with the Pnakaj's patches from ML,
(https://lkml.org/lkml/2014/11/30/175)
It's now in progress, however it's needed for further test of suspend-to-ram.
It will be rebased, when it finally goes into merge window.
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Jonghwa Lee [Mon, 8 Dec 2014 13:57:16 +0000 (22:57 +0900)]
arm: dts: exynos5433: Add psci suspend code to exynos5433.dtsi
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
Chanwoo Choi [Fri, 17 Apr 2015 09:51:22 +0000 (18:51 +0900)]
LOCAL / arm64: configs: Update defconfig to enable CPU_THERMAL
This patch enables the CONFIG_CPU_THERMAL.
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Chanwoo Choi [Fri, 17 Apr 2015 09:49:45 +0000 (18:49 +0900)]
arm64: dts: exynos5433: Reduce the temperature of thermal trip ponit for Exynos5433
This patch reduces the temperature of thermal trip point for Exynos5433
because basic temperature of thermal trip point is too high.
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Chanwoo Choi [Fri, 17 Apr 2015 09:32:40 +0000 (18:32 +0900)]
arm64: dts: exynos5433: Add CPU cooling binding for Exynos5433 SoC
This patch adds the CPU cooling binding information for Exynos5433 SoC.
Each cooling map has both trip property and cooling-device property.
Cc: Kukjin Kim <kgene@kernel.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Chanwoo Choi [Fri, 17 Apr 2015 08:29:01 +0000 (17:29 +0900)]
cpufreq: arm_big_little: Add dt node parsing for cooling device properties
This patch adds the devicetree node to create the cpufreq cooling device
which is used as cooling device for thermal frameowrk.
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Seung-Woo Kim [Thu, 16 Apr 2015 05:15:25 +0000 (14:15 +0900)]
LOCAL / arm64: configs: enable uinput config
This patch enables uinput config to support userland input driver.
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Ingi Kim [Mon, 13 Apr 2015 04:03:06 +0000 (13:03 +0900)]
LOCAL / arm64: configs: Enable KTD2692 Flash Led driver on tm2 board.
This patch enables KTD2692 FLASH LED Driver on tm2 board.
Ingi Kim [Fri, 10 Apr 2015 05:25:06 +0000 (14:25 +0900)]
LOCAL / arm64: dts: exynos5433: Add flash led node
This patch adds flash led node and dummy regulator for KTD2692
Signed-off-by: Ingi Kim <ingi2.kim@samsung.com>
Ingi Kim [Thu, 29 Jan 2015 08:24:38 +0000 (17:24 +0900)]
LOCAL / leds: Add ktd2692 flash LED driver
This patch adds a driver to support the ktd2692 flash LEDs.
ktd2692 can control flash current by ExpressWire interface.
Signed-off-by: Ingi Kim <ingi2.kim@samsung.com>
Ingi Kim [Thu, 29 Jan 2015 09:22:37 +0000 (18:22 +0900)]
LOCAL / leds: ktd2692: add device tree bindings for ktd2692
This patch adds the device tree bindings for ktd2692 flash LEDs.
Add Optional properties of child node for Flash LED
Signed-off-by: Ingi Kim <ingi2.kim@samsung.com>
[k.kozlowski: rebased on 4.1]
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Ingi Kim [Mon, 23 Feb 2015 12:53:11 +0000 (21:53 +0900)]
LOCAL / of: Add vendor prefix for Kinetic technologies
This patch adds vendor prefix for Kinetic technologies
Signed-off-by: Ingi Kim <ingi2.kim@samsung.com>
Acked-by: Rob Herring <robh@kernel.org>
Jaewon Kim [Wed, 15 Apr 2015 10:26:36 +0000 (19:26 +0900)]
usb: dwc3: gadget: fix enumeration fail after suspend
EP setup is not nessasary when entering resume state.
Because EP setup moved to dwc3_udc_init().
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Beomho Seo [Wed, 15 Apr 2015 05:09:35 +0000 (14:09 +0900)]
LOCAL / arm64: dts: change keycode of keyboard device
This patch change keycode of touchkey and gpio-keys.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Beomho Seo [Tue, 14 Apr 2015 08:07:15 +0000 (17:07 +0900)]
LOCAL / input: keyboard: add disable_irq for prevent irq when reboot
For prevent irq when reboot, This patch add disable_irq() in cypress
shutdown function.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Beomho Seo [Tue, 14 Apr 2015 08:04:40 +0000 (17:04 +0900)]
LOCAL / arm64: dts: remove regulator-always-on property
This patch remove regulator-always-on property at LDO33.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Hyungwon Hwang [Thu, 9 Apr 2015 08:30:02 +0000 (17:30 +0900)]
clk: samsung: exynos5433: add DIV_CPIF to store it when the board is being suspended
This register must be stored when the device is suspended, and must be restored
when it is back. This patch adds the register to the list of storing registers.
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Chanwoo Choi [Mon, 13 Apr 2015 12:19:31 +0000 (21:19 +0900)]
LOCAL / clk: s2mps11: Avoid deadlock issue between regmap and CCF
This patch avoids the deadlock issue between regmap framework and common clock
framework by remaining the always on state for S2MPS11 clocks without any i2c
operation. It is workaround solution to avoid the deadlock issue.
[ 2833.400071] INFO: task swapper/0:1 blocked for more than 120 seconds.
[ 2833.400211] Not tainted 4.0.0-00337-gee47844-dirty #4
[ 2833.400328] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this
message.
[ 2833.400489] swapper/0 D
ffffffc000086e0c 0 1 0 0x00000000
[ 2833.404602] Call trace:
[ 2833.407042] [<
ffffffc000086e0c>] __switch_to+0x74/0x8c
[ 2833.412251] [<
ffffffc00089842c>] __schedule+0x21c/0x6d0
[ 2833.417363] [<
ffffffc000898910>] schedule+0x30/0x8c
[ 2833.422253] [<
ffffffc00089c234>] schedule_timeout+0x14c/0x204
[ 2833.427953] [<
ffffffc0008993ec>] wait_for_common+0xa0/0x148
[ 2833.433533] [<
ffffffc0008994a4>] wait_for_completion+0x10/0x1c
[ 2833.439324] [<
ffffffc0000ae90c>] flush_workqueue+0x108/0x568
[ 2833.444992] [<
ffffffc000447fc4>] deferred_probe_initcall+0x54/0x88
[ 2833.451151] [<
ffffffc0000828d4>] do_one_initcall+0x88/0x1a0
[ 2833.456685] [<
ffffffc000d62b34>] kernel_init_freeable+0x1bc/0x260
[ 2833.462783] [<
ffffffc000893350>] kernel_init+0xc/0xd8
[ 2833.467793] INFO: task kworker/u16:0:6 blocked for more than 120 seconds.
[ 2833.474586] Not tainted 4.0.0-00337-gee47844-dirty #4
[ 2833.480138] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this
message.
[ 2833.487928] kworker/u16:0 D
ffffffc000086e0c 0 6 2 0x00000000
[ 2833.494967] Workqueue: deferwq deferred_probe_work_func
[ 2833.500166] Call trace:
[ 2833.502602] [<
ffffffc000086e0c>] __switch_to+0x74/0x8c
[ 2833.507721] [<
ffffffc00089842c>] __schedule+0x21c/0x6d0
[ 2833.512950] [<
ffffffc000898910>] schedule+0x30/0x8c
[ 2833.517791] [<
ffffffc000898cd8>] schedule_preempt_disabled+0x10/0x24
[ 2833.524151] [<
ffffffc00089b0f4>] __mutex_lock_slowpath+0x148/0x368
[ 2833.530310] [<
ffffffc00089b324>] mutex_lock+0x10/0x30
[ 2833.535328] [<
ffffffc00045bd14>] regmap_lock_mutex+0x8/0x14
[ 2833.540906] [<
ffffffc00045e844>] regmap_update_bits+0x24/0x60
[ 2833.546611] [<
ffffffc0005c6800>] s2mps11_clk_prepare+0x20/0x2c
[ 2833.552450] [<
ffffffc0005c21bc>] clk_core_prepare+0x50/0x84
[ 2833.557979] [<
ffffffc0005c220c>] clk_prepare+0x1c/0x48
[ 2833.563125] [<
ffffffc000633084>] tm2_late_probe+0x54/0xc0
[ 2833.568658] [<
ffffffc00061ae50>] snd_soc_register_card+0xe48/0xf3c
[ 2833.574844] [<
ffffffc000627644>] devm_snd_soc_register_card+0x38/0x8c
[ 2833.581262] [<
ffffffc0006332a8>] tm2_wm5110_probe+0x1b8/0x28c
[ 2833.587147] [<
ffffffc000449f6c>] platform_drv_probe+0x48/0xb8
[ 2833.592897] [<
ffffffc000448290>] driver_probe_device+0x8c/0x244
[ 2833.598776] [<
ffffffc00044848c>] __device_attach+0x44/0x54
[ 2856.015428] [<
ffffffc0004466c4>] bus_for_each_drv+0x50/0x94
[ 2856.020961] [<
ffffffc0004481b8>] device_attach+0x9c/0xcc
[ 2856.026213] [<
ffffffc0004477c8>] bus_probe_device+0x8c/0xb4
[ 2856.031786] [<
ffffffc000447c28>] deferred_probe_work_func+0x70/0xa8
[ 2856.038019] [<
ffffffc0000b0b78>] process_one_work+0x158/0x424
[ 2856.043761] [<
ffffffc0000b16ec>] worker_thread+0x140/0x474
[ 2856.049216] [<
ffffffc0000b5f44>] kthread+0xd8/0xf0
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Jaewon Kim [Mon, 13 Apr 2015 12:27:21 +0000 (21:27 +0900)]
LOCAL / arm64: dts: enable ehci dt node for tm2 board
This patch enables ehci and related PHY to use
HSIC(High-Speed Interchip) function for modem.
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Jaewon Kim [Mon, 13 Apr 2015 13:14:42 +0000 (22:14 +0900)]
usb: ehci-exynos: fix clock disble order after usb_put_hcd()
This patch fixes clock disable order to prevent kernel panic.
If driver turn off ehci clock entering reboot state,
sometime kernel panic occured.
[<
ffffffc00050715c>] ehci_halt+0x4c/0xac
[<
ffffffc0005071d0>] ehci_silence_controller+0x14/0xcc
[<
ffffffc000507b8c>] ehci_shutdown+0x48/0x64
[<
ffffffc0004e6b54>] usb_hcd_platform_shutdown+0x18/0x24
[<
ffffffc00044ab88>] platform_drv_shutdown+0x1c/0x38
[<
ffffffc000446f1c>] device_shutdown+0xd8/0x1ec
[<
ffffffc0000b85d0>] kernel_restart_prepare+0x30/0x3c
[<
ffffffc0000b86ac>] kernel_restart+0x10/0x74
[<
ffffffc0000b8984>] SyS_reboot+0x10c/0x214
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Jaewon Kim [Mon, 13 Apr 2015 13:32:40 +0000 (22:32 +0900)]
LOCAL / phy: Kconfig: Add description for Exynos SoCs
This patch adds desciptions to choose USB phy.
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Jaewon Kim [Mon, 13 Apr 2015 13:30:37 +0000 (22:30 +0900)]
phy: exynos5250-usb2: add USB2.0 PHY for Exynos5433 SoC
Exynos5433 USB2.0 PHY register layout similar as Exynos5250.
But Exynos5433 has only one USB2.0 Host and one HSIC.
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Jaewon Kim [Fri, 10 Apr 2015 13:23:49 +0000 (22:23 +0900)]
LOCAL / dts: add extcon property in charger
This patch adds extcon property to support reverse boost capability
to use USB OTG function.
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Jaewon Kim [Fri, 10 Apr 2015 13:24:46 +0000 (22:24 +0900)]
power: max77843_charger: update to support OTG VBUS control
This patch adds OTG VBUS control function via extcon framwork.
If OTG accessories attached to MUIC(Micro USB Inter), current direction
should change to reverse(Battary -> USB VBUS).
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Inki Dae [Mon, 13 Apr 2015 13:01:54 +0000 (22:01 +0900)]
LOCAL: arm64: dts: fix video clock frequency
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Beomho Seo [Mon, 13 Apr 2015 09:53:06 +0000 (18:53 +0900)]
LOCAL / arm64: dts: Fix wrong x-size of touchscreen
This patch fix wrong x-size of touchscreen.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>