From 0e879a3e7d35613ed0e7e1e53614e915ffa7297a Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Wed, 18 Jan 2017 12:50:13 -0300 Subject: [PATCH 1/7] arm64: dts: exynos: Remove unneeded unit names in Exynos5433 nodes The "samsung,exynos5433-mipi-video-phy" and "samsung,exynos5250-dwusb3" DT bindings don't specify a reg property for these nodes, so having a unit name leads to the following DTC warnings: Node /soc/video-phy@105c0710 has a unit name, but no reg property Node /soc/usb@15400000 has a unit name, but no reg property Node /soc/usb@15a00000 has a unit name, but no reg property Signed-off-by: Javier Martinez Canillas Signed-off-by: Krzysztof Kozlowski --- arch/arm64/boot/dts/exynos/exynos5433.dtsi | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi index f120d99fd595..c626988241e7 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi @@ -706,7 +706,7 @@ gic: interrupt-controller@11001000 { interrupts = ; }; - mipi_phy: video-phy@105c0710 { + mipi_phy: video-phy { compatible = "samsung,exynos5433-mipi-video-phy"; #phy-cells = <1>; samsung,pmu-syscon = <&pmu_system_controller>; @@ -1357,7 +1357,7 @@ hsi2c_11: hsi2c@14df0000 { status = "disabled"; }; - usbdrd30: usb@15400000 { + usbdrd30: usbdrd { compatible = "samsung,exynos5250-dwusb3"; clocks = <&cmu_fsys CLK_ACLK_USBDRD30>, <&cmu_fsys CLK_SCLK_USBDRD30>; @@ -1404,7 +1404,7 @@ usbhost30_phy: phy@15580000 { status = "disabled"; }; - usbhost30: usb@15a00000 { + usbhost30: usbhost { compatible = "samsung,exynos5250-dwusb3"; clocks = <&cmu_fsys CLK_ACLK_USBHOST30>, <&cmu_fsys CLK_SCLK_USBHOST30>; From 5205761d7a2ecf7af559f285b061da2345ea79ac Mon Sep 17 00:00:00 2001 From: Jaechul Lee Date: Tue, 17 Jan 2017 14:54:39 +0900 Subject: [PATCH 2/7] arm64: dts: exynos: Add TM2 touchkey node Add DT node for TM2 touchkey device. Signed-off-by: Beomho Seo Signed-off-by: Jaechul Lee Signed-off-by: Andi Shyti Reviewed-by: Javier Martinez Canillas Reviewed-by: Chanwoo Choi Tested-by: Chanwoo Choi Signed-off-by: Krzysztof Kozlowski --- arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts index 2449266b268f..ddba2f889326 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts @@ -18,6 +18,19 @@ / { compatible = "samsung,tm2", "samsung,exynos5433"; }; +&hsi2c_9 { + status = "okay"; + + touchkey@20 { + compatible = "cypress,tm2-touchkey"; + reg = <0x20>; + interrupt-parent = <&gpa3>; + interrupts = <2 IRQ_TYPE_EDGE_FALLING>; + vcc-supply = <&ldo32_reg>; + vdd-supply = <&ldo33_reg>; + }; +}; + &ldo31_reg { regulator-name = "TSP_VDD_1.85V_AP"; regulator-min-microvolt = <1850000>; From 20422a0c2956e67f15da5b589a93a14611a4087b Mon Sep 17 00:00:00 2001 From: Marek Szyprowski Date: Fri, 20 Jan 2017 07:56:53 +0100 Subject: [PATCH 3/7] arm64: dts: exynos: Disable pull down for audio pins in Exynos5433 SoCs Common definition for I2S, PMC, SPDIF buses should not define any pull control for the individual pins. Correct this by changing samsung,pin-pud property to EXYNOS_PIN_PULL_NONE like it is defined for other Exynos SoCs. Signed-off-by: Marek Szyprowski Reviewed-by: Javier Martinez Canillas Signed-off-by: Krzysztof Kozlowski --- arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi index d49879bd34bb..50403700274b 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi @@ -135,14 +135,14 @@ i2s0_bus: i2s0-bus { samsung,pins = "gpz0-0", "gpz0-1", "gpz0-2", "gpz0-3", "gpz0-4", "gpz0-5", "gpz0-6"; samsung,pin-function = ; - samsung,pin-pud = ; + samsung,pin-pud = ; samsung,pin-drv = ; }; pcm0_bus: pcm0-bus { samsung,pins = "gpz1-0", "gpz1-1", "gpz1-2", "gpz1-3"; samsung,pin-function = ; - samsung,pin-pud = ; + samsung,pin-pud = ; samsung,pin-drv = ; }; @@ -569,7 +569,7 @@ i2s1_bus: i2s1-bus { samsung,pins = "gpd4-0", "gpd4-1", "gpd4-2", "gpd4-3", "gpd4-4"; samsung,pin-function = ; - samsung,pin-pud = ; + samsung,pin-pud = ; samsung,pin-drv = ; }; @@ -577,14 +577,14 @@ pcm1_bus: pcm1-bus { samsung,pins = "gpd4-0", "gpd4-1", "gpd4-2", "gpd4-3", "gpd4-4"; samsung,pin-function = ; - samsung,pin-pud = ; + samsung,pin-pud = ; samsung,pin-drv = ; }; spdif_bus: spdif-bus { samsung,pins = "gpd4-3", "gpd4-4"; samsung,pin-function = ; - samsung,pin-pud = ; + samsung,pin-pud = ; samsung,pin-drv = ; }; From 9f6fe6f0137642d487a5add88fc205a7496e4f69 Mon Sep 17 00:00:00 2001 From: Pankaj Dubey Date: Fri, 20 Jan 2017 09:49:55 +0530 Subject: [PATCH 4/7] arm64: dts: exynos: Fix drive strength of sd0_xxx pin definitions As per Exynos7 datasheet FSYS1 pinctrl block does not support drive strength value of 0x3. This patch fixes this and update the correct drive strength for sd0_xxx pin definitions. Signed-off-by: Pankaj Dubey Reviewed-by: Alim Akhtar Signed-off-by: Krzysztof Kozlowski --- arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi b/arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi index 82321984e1fb..7ebb93927f13 100644 --- a/arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi @@ -497,49 +497,49 @@ sd0_clk: sd0-clk { samsung,pins = "gpr0-0"; samsung,pin-function = <2>; samsung,pin-pud = <0>; - samsung,pin-drv = <3>; + samsung,pin-drv = <4>; }; sd0_cmd: sd0-cmd { samsung,pins = "gpr0-1"; samsung,pin-function = <2>; samsung,pin-pud = <3>; - samsung,pin-drv = <3>; + samsung,pin-drv = <4>; }; sd0_ds: sd0-ds { samsung,pins = "gpr0-2"; samsung,pin-function = <2>; samsung,pin-pud = <1>; - samsung,pin-drv = <3>; + samsung,pin-drv = <4>; }; sd0_qrdy: sd0-qrdy { samsung,pins = "gpr0-3"; samsung,pin-function = <2>; samsung,pin-pud = <1>; - samsung,pin-drv = <3>; + samsung,pin-drv = <4>; }; sd0_bus1: sd0-bus-width1 { samsung,pins = "gpr1-0"; samsung,pin-function = <2>; samsung,pin-pud = <3>; - samsung,pin-drv = <3>; + samsung,pin-drv = <4>; }; sd0_bus4: sd0-bus-width4 { samsung,pins = "gpr1-1", "gpr1-2", "gpr1-3"; samsung,pin-function = <2>; samsung,pin-pud = <3>; - samsung,pin-drv = <3>; + samsung,pin-drv = <4>; }; sd0_bus8: sd0-bus-width8 { samsung,pins = "gpr1-4", "gpr1-5", "gpr1-6", "gpr1-7"; samsung,pin-function = <2>; samsung,pin-pud = <3>; - samsung,pin-drv = <3>; + samsung,pin-drv = <4>; }; sd1_clk: sd1-clk { From 4e09f4a6b620d6617f2ce7ee858c6d98176d156e Mon Sep 17 00:00:00 2001 From: Andrzej Hajda Date: Mon, 23 Jan 2017 11:05:49 +0100 Subject: [PATCH 5/7] arm64: dts: exynos: configure TV path clocks for Ultra HD modes Ultra HD modes requires clock ticking at increased rate. Signed-off-by: Andrzej Hajda Signed-off-by: Krzysztof Kozlowski --- .../arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi index a5c866901e93..13a0950b57e2 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi @@ -217,6 +217,18 @@ &cmu_aud { assigned-clock-parents = <&cmu_top CLK_FOUT_AUD_PLL>; }; +&cmu_disp { + assigned-clocks = <&cmu_mif CLK_MOUT_SCLK_DECON_TV_ECLK_A>, + <&cmu_mif CLK_DIV_SCLK_DECON_TV_ECLK>, + <&cmu_disp CLK_MOUT_SCLK_DECON_TV_ECLK_USER>, + <&cmu_disp CLK_MOUT_SCLK_DECON_TV_ECLK>; + assigned-clock-parents = <&cmu_mif CLK_MOUT_BUS_PLL_DIV2>, + <0>, + <&cmu_mif CLK_SCLK_DECON_TV_ECLK_DISP>, + <&cmu_disp CLK_MOUT_SCLK_DECON_TV_ECLK_USER>; + assigned-clock-rates = <0>, <400000000>; +}; + &cmu_fsys { assigned-clocks = <&cmu_top CLK_MOUT_SCLK_USBDRD30>, <&cmu_top CLK_MOUT_SCLK_USBHOST30>, From 6c992d35b8891646f838a8dc13ba042a1cc0cef0 Mon Sep 17 00:00:00 2001 From: Andrzej Hajda Date: Tue, 24 Jan 2017 13:45:28 +0100 Subject: [PATCH 6/7] arm64: dts: exynos: set LDO7 regulator as always on LDO7 regulator beside DSI and HDMI provides power for core blocks in Exynos 5433 SoC. Disabling it causes serious current leak - about 200mA. Signed-off-by: Andrzej Hajda Signed-off-by: Krzysztof Kozlowski --- arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi index 13a0950b57e2..53fd0683d400 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi @@ -432,6 +432,10 @@ ldo7_reg: LDO7 { regulator-name = "VDD18_MIPI2L_1.8V_AP"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-state-mem { + regulator-off-in-suspend; + }; }; ldo8_reg: LDO8 { From 7547162ac351483df3641f64e99e10be329dd6a2 Mon Sep 17 00:00:00 2001 From: Marek Szyprowski Date: Thu, 26 Jan 2017 09:33:50 +0100 Subject: [PATCH 7/7] arm64: dts: exynos: Add clocks to Exynos5433 LPASS module Exynos5433 LPASS module requires some clocks for proper operation with power domain. Signed-off-by: Marek Szyprowski Signed-off-by: Krzysztof Kozlowski --- arch/arm64/boot/dts/exynos/exynos5433.dtsi | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi index c626988241e7..7b02fd6e33e1 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi @@ -1494,6 +1494,8 @@ pdma1: pdma@15600000 { audio-subsystem@11400000 { compatible = "samsung,exynos5433-lpass"; reg = <0x11400000 0x100>, <0x11500000 0x08>; + clocks = <&cmu_aud CLK_PCLK_SFR0_CTRL>; + clock-names = "sfr0_ctrl"; samsung,pmu-syscon = <&pmu_system_controller>; #address-cells = <1>; #size-cells = <1>;