linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/4] Devicetree updates for Exynos 5260
@ 2019-02-19 13:03 Stuart Menefy
  2019-02-19 13:03 ` [PATCH v2 1/4] ARM: dts: exynos: Use bustop PLL as the source for MMC clocks on Exynos5260 Stuart Menefy
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Stuart Menefy @ 2019-02-19 13:03 UTC (permalink / raw)
  To: Rob Herring, Mark Rutland, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

These four patches are stand alone updates for the Exynos 5260 device
tree, which do not depend on any other code changes. They either
fix issues or add functionality which is already available
on other Exynos devices. They were previously posted as version 1
of the larger patch series "Resuscitate Exynos 5260 support"
https://www.spinics.net/lists/linux-samsung-soc/#65035
which was only posted to the samsung-soc mailing list.

Changes since v1:
- Removed from larger patch set for easier review
- Applied reviewer comments to patch 2/4 "Add high speed I2C ports
  for exynos5260"
- Expanded patch comments

Stuart Menefy (4):
  ARM: dts: exynos: Use bustop PLL as the source for MMC clocks on
    Exynos5260
  ARM: dts: exynos: Add high speed I2C ports for exynos5260
  ARM: dts: exynos: Add interrupts for dedicated EINTs on Exynos5260
  ARM: dts: exynos: Fix interrupt for shared EINTs on Exynos5260

 arch/arm/boot/dts/exynos5260-pinctrl.dtsi | 16 ++++++
 arch/arm/boot/dts/exynos5260.dtsi         | 82 ++++++++++++++++++++++++++++++-
 2 files changed, 97 insertions(+), 1 deletion(-)

-- 
2.13.6


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v2 1/4] ARM: dts: exynos: Use bustop PLL as the source for MMC clocks on Exynos5260
  2019-02-19 13:03 [PATCH v2 0/4] Devicetree updates for Exynos 5260 Stuart Menefy
@ 2019-02-19 13:03 ` Stuart Menefy
  2019-02-19 13:03 ` [PATCH v2 2/4] ARM: dts: exynos: Add high speed I2C ports for exynos5260 Stuart Menefy
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Stuart Menefy @ 2019-02-19 13:03 UTC (permalink / raw)
  To: Rob Herring, Mark Rutland, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

From: Stuart Menefy <stuart.menefy@mathembedded.com>

By default the MMC clock will be derived from mediatop PLL, which
usually runs at 666MHz. However as most SD and MMC clocks are multiples
or fractions of 100MHz, it makes more sense to use the bustop PLL
which runs at 800MHz. This matches the behaviour of the Samsung vendor
supplied 3.4 kernel.

Signed-off-by: Stuart Menefy <stuart.menefy@mathembedded.com>
---
 arch/arm/boot/dts/exynos5260.dtsi | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/arch/arm/boot/dts/exynos5260.dtsi b/arch/arm/boot/dts/exynos5260.dtsi
index 55167850619c..14b423de9137 100644
--- a/arch/arm/boot/dts/exynos5260.dtsi
+++ b/arch/arm/boot/dts/exynos5260.dtsi
@@ -288,6 +288,14 @@
 			#size-cells = <0>;
 			clocks = <&clock_fsys FSYS_CLK_MMC0>, <&clock_top TOP_SCLK_MMC0>;
 			clock-names = "biu", "ciu";
+			assigned-clocks =
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC0_SDCLKIN_A>,
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC0_SDCLKIN_B>,
+				<&clock_top TOP_SCLK_MMC0>;
+			assigned-clock-parents =
+				<&clock_top TOP_MOUT_BUSTOP_PLL_USER>,
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC0_SDCLKIN_A>;
+			assigned-clock-rates = <0>, <0>, <800000000>;
 			fifo-depth = <64>;
 			status = "disabled";
 		};
@@ -300,6 +308,14 @@
 			#size-cells = <0>;
 			clocks = <&clock_fsys FSYS_CLK_MMC1>, <&clock_top TOP_SCLK_MMC1>;
 			clock-names = "biu", "ciu";
+			assigned-clocks =
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC1_SDCLKIN_A>,
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC1_SDCLKIN_B>,
+				<&clock_top TOP_SCLK_MMC1>;
+			assigned-clock-parents =
+				<&clock_top TOP_MOUT_BUSTOP_PLL_USER>,
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC1_SDCLKIN_A>;
+			assigned-clock-rates = <0>, <0>, <800000000>;
 			fifo-depth = <64>;
 			status = "disabled";
 		};
@@ -312,6 +328,14 @@
 			#size-cells = <0>;
 			clocks = <&clock_fsys FSYS_CLK_MMC2>, <&clock_top TOP_SCLK_MMC2>;
 			clock-names = "biu", "ciu";
+			assigned-clocks =
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC2_SDCLKIN_A>,
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC2_SDCLKIN_B>,
+				<&clock_top TOP_SCLK_MMC2>;
+			assigned-clock-parents =
+				<&clock_top TOP_MOUT_BUSTOP_PLL_USER>,
+				<&clock_top TOP_MOUT_SCLK_FSYS_MMC2_SDCLKIN_A>;
+			assigned-clock-rates = <0>, <0>, <800000000>;
 			fifo-depth = <64>;
 			status = "disabled";
 		};
-- 
2.13.6


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v2 2/4] ARM: dts: exynos: Add high speed I2C ports for exynos5260
  2019-02-19 13:03 [PATCH v2 0/4] Devicetree updates for Exynos 5260 Stuart Menefy
  2019-02-19 13:03 ` [PATCH v2 1/4] ARM: dts: exynos: Use bustop PLL as the source for MMC clocks on Exynos5260 Stuart Menefy
@ 2019-02-19 13:03 ` Stuart Menefy
  2019-02-19 13:03 ` [PATCH v2 3/4] ARM: dts: exynos: Add interrupts for dedicated EINTs on Exynos5260 Stuart Menefy
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Stuart Menefy @ 2019-02-19 13:03 UTC (permalink / raw)
  To: Rob Herring, Mark Rutland, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

From: Stuart Menefy <stuart.menefy@mathembedded.com>

Most of the work to support the high speed I2C ports on the Exynos 5260
was added in commit 218e1496135e ("i2c: exynos5: add support for HSI2C
on Exynos5260 SoC") and the pinctrl nodes have always been available.
All that is missing to get them working is the additon of the DT bindings.

Signed-off-by: Stuart Menefy <stuart.menefy@mathembedded.com>
---

Changes since v1:
- Removed unused attribute: samsung,check-transdone-int
- Reordered additions so they now appear in address order
- Changed hex addresses to lower case

 arch/arm/boot/dts/exynos5260.dtsi | 56 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)

diff --git a/arch/arm/boot/dts/exynos5260.dtsi b/arch/arm/boot/dts/exynos5260.dtsi
index 14b423de9137..a8c7c6e589a0 100644
--- a/arch/arm/boot/dts/exynos5260.dtsi
+++ b/arch/arm/boot/dts/exynos5260.dtsi
@@ -17,6 +17,10 @@
 	#size-cells = <1>;
 
 	aliases {
+		i2c0 = &hsi2c_0;
+		i2c1 = &hsi2c_1;
+		i2c2 = &hsi2c_2;
+		i2c3 = &hsi2c_3;
 		pinctrl0 = &pinctrl_0;
 		pinctrl1 = &pinctrl_1;
 		pinctrl2 = &pinctrl_2;
@@ -339,6 +343,58 @@
 			fifo-depth = <64>;
 			status = "disabled";
 		};
+
+		hsi2c_0: hsi2c@12da0000 {
+			compatible = "samsung,exynos5260-hsi2c";
+			reg = <0x12DA0000 0x1000>;
+			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c0_hs_bus>;
+			clocks = <&clock_peri PERI_CLK_HSIC0>;
+			clock-names = "hsi2c";
+			status = "disabled";
+		};
+
+		hsi2c_1: hsi2c@12db0000 {
+			compatible = "samsung,exynos5260-hsi2c";
+			reg = <0x12DB0000 0x1000>;
+			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c1_hs_bus>;
+			clocks = <&clock_peri PERI_CLK_HSIC1>;
+			clock-names = "hsi2c";
+			status = "disabled";
+		};
+
+		hsi2c_2: hsi2c@12dc0000 {
+			compatible = "samsung,exynos5260-hsi2c";
+			reg = <0x12DC0000 0x1000>;
+			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c2_hs_bus>;
+			clocks = <&clock_peri PERI_CLK_HSIC2>;
+			clock-names = "hsi2c";
+			status = "disabled";
+		};
+
+		hsi2c_3: hsi2c@12dd0000 {
+			compatible = "samsung,exynos5260-hsi2c";
+			reg = <0x12DD0000 0x1000>;
+			interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c3_hs_bus>;
+			clocks = <&clock_peri PERI_CLK_HSIC3>;
+			clock-names = "hsi2c";
+			status = "disabled";
+		};
 	};
 };
 
-- 
2.13.6


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v2 3/4] ARM: dts: exynos: Add interrupts for dedicated EINTs on Exynos5260
  2019-02-19 13:03 [PATCH v2 0/4] Devicetree updates for Exynos 5260 Stuart Menefy
  2019-02-19 13:03 ` [PATCH v2 1/4] ARM: dts: exynos: Use bustop PLL as the source for MMC clocks on Exynos5260 Stuart Menefy
  2019-02-19 13:03 ` [PATCH v2 2/4] ARM: dts: exynos: Add high speed I2C ports for exynos5260 Stuart Menefy
@ 2019-02-19 13:03 ` Stuart Menefy
  2019-02-19 13:03 ` [PATCH v2 4/4] ARM: dts: exynos: Fix interrupt for shared " Stuart Menefy
  2019-02-20 13:59 ` [PATCH v2 0/4] Devicetree updates for Exynos 5260 Krzysztof Kozlowski
  4 siblings, 0 replies; 6+ messages in thread
From: Stuart Menefy @ 2019-02-19 13:03 UTC (permalink / raw)
  To: Rob Herring, Mark Rutland, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

From: Stuart Menefy <stuart.menefy@mathembedded.com>

Add the missing interrupt information for the GPIO lines with
dedicated EINT interrupts.

Signed-off-by: Stuart Menefy <stuart.menefy@mathembedded.com>
---
 arch/arm/boot/dts/exynos5260-pinctrl.dtsi | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/arch/arm/boot/dts/exynos5260-pinctrl.dtsi b/arch/arm/boot/dts/exynos5260-pinctrl.dtsi
index b1edb20b789e..17e2f3e0d71e 100644
--- a/arch/arm/boot/dts/exynos5260-pinctrl.dtsi
+++ b/arch/arm/boot/dts/exynos5260-pinctrl.dtsi
@@ -153,6 +153,14 @@
 		#gpio-cells = <2>;
 
 		interrupt-controller;
+		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
 		#interrupt-cells = <2>;
 	};
 
@@ -161,6 +169,14 @@
 		#gpio-cells = <2>;
 
 		interrupt-controller;
+		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>,
+			     <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
 		#interrupt-cells = <2>;
 	};
 
-- 
2.13.6


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v2 4/4] ARM: dts: exynos: Fix interrupt for shared EINTs on Exynos5260
  2019-02-19 13:03 [PATCH v2 0/4] Devicetree updates for Exynos 5260 Stuart Menefy
                   ` (2 preceding siblings ...)
  2019-02-19 13:03 ` [PATCH v2 3/4] ARM: dts: exynos: Add interrupts for dedicated EINTs on Exynos5260 Stuart Menefy
@ 2019-02-19 13:03 ` Stuart Menefy
  2019-02-20 13:59 ` [PATCH v2 0/4] Devicetree updates for Exynos 5260 Krzysztof Kozlowski
  4 siblings, 0 replies; 6+ messages in thread
From: Stuart Menefy @ 2019-02-19 13:03 UTC (permalink / raw)
  To: Rob Herring, Mark Rutland, Russell King, Kukjin Kim,
	Krzysztof Kozlowski, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

From: Stuart Menefy <stuart.menefy@mathembedded.com>

Fix the interrupt information for the GPIO lines with a shared EINT
interrupt.

Signed-off-by: Stuart Menefy <stuart.menefy@mathembedded.com>
---
 arch/arm/boot/dts/exynos5260.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/exynos5260.dtsi b/arch/arm/boot/dts/exynos5260.dtsi
index a8c7c6e589a0..3581b57fbbf7 100644
--- a/arch/arm/boot/dts/exynos5260.dtsi
+++ b/arch/arm/boot/dts/exynos5260.dtsi
@@ -227,7 +227,7 @@
 			wakeup-interrupt-controller {
 				compatible = "samsung,exynos4210-wakeup-eint";
 				interrupt-parent = <&gic>;
-				interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
+				interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
 			};
 		};
 
-- 
2.13.6


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 0/4] Devicetree updates for Exynos 5260
  2019-02-19 13:03 [PATCH v2 0/4] Devicetree updates for Exynos 5260 Stuart Menefy
                   ` (3 preceding siblings ...)
  2019-02-19 13:03 ` [PATCH v2 4/4] ARM: dts: exynos: Fix interrupt for shared " Stuart Menefy
@ 2019-02-20 13:59 ` Krzysztof Kozlowski
  4 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2019-02-20 13:59 UTC (permalink / raw)
  To: Stuart Menefy
  Cc: Rob Herring, Mark Rutland, Russell King, Kukjin Kim, devicetree,
	linux-arm-kernel, linux-samsung-soc, linux-kernel

On Tue, 19 Feb 2019 at 14:03, Stuart Menefy
<stuart.menefy@mathembedded.com> wrote:
>
> These four patches are stand alone updates for the Exynos 5260 device
> tree, which do not depend on any other code changes. They either
> fix issues or add functionality which is already available
> on other Exynos devices. They were previously posted as version 1
> of the larger patch series "Resuscitate Exynos 5260 support"
> https://www.spinics.net/lists/linux-samsung-soc/#65035
> which was only posted to the samsung-soc mailing list.
>
> Changes since v1:
> - Removed from larger patch set for easier review
> - Applied reviewer comments to patch 2/4 "Add high speed I2C ports
>   for exynos5260"
> - Expanded patch comments
>
> Stuart Menefy (4):
>   ARM: dts: exynos: Use bustop PLL as the source for MMC clocks on
>     Exynos5260
>   ARM: dts: exynos: Add high speed I2C ports for exynos5260
>   ARM: dts: exynos: Add interrupts for dedicated EINTs on Exynos5260
>   ARM: dts: exynos: Fix interrupt for shared EINTs on Exynos5260

Thanks for the changes. All look fine to me but it is too late to pick
them up in this cycle. I will take them after merge window.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-02-20 13:59 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-19 13:03 [PATCH v2 0/4] Devicetree updates for Exynos 5260 Stuart Menefy
2019-02-19 13:03 ` [PATCH v2 1/4] ARM: dts: exynos: Use bustop PLL as the source for MMC clocks on Exynos5260 Stuart Menefy
2019-02-19 13:03 ` [PATCH v2 2/4] ARM: dts: exynos: Add high speed I2C ports for exynos5260 Stuart Menefy
2019-02-19 13:03 ` [PATCH v2 3/4] ARM: dts: exynos: Add interrupts for dedicated EINTs on Exynos5260 Stuart Menefy
2019-02-19 13:03 ` [PATCH v2 4/4] ARM: dts: exynos: Fix interrupt for shared " Stuart Menefy
2019-02-20 13:59 ` [PATCH v2 0/4] Devicetree updates for Exynos 5260 Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).