devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates
@ 2018-05-17  9:30 Jerome Brunet
  2018-05-17  9:30 ` [PATCH v2 1/4] ARM64: dts: meson-axg: clean-up i2c nodes Jerome Brunet
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Jerome Brunet @ 2018-05-17  9:30 UTC (permalink / raw)
  To: Kevin Hilman, Carlo Caione
  Cc: Jerome Brunet, devicetree, linux-arm-kernel, linux-amlogic, linux-kernel

This patchset fixes a few problems found in the i2c nodes of
amlogic's meson-axg platform. It also adds the missing pins for
AO controller so we can use it on the S400

This series has been tested on the S400 board.

Jerome Brunet (4):
  ARM64: dts: meson-axg: clean-up i2c nodes
  ARM64: dts: meson-axg: correct i2c AO clock
  ARM64: dts: meson-axg: add i2c AO pins
  ARM64: dts: meson-axg: enable i2c AO on the S400 board

 arch/arm64/boot/dts/amlogic/meson-axg-s400.dts |  6 ++
 arch/arm64/boot/dts/amlogic/meson-axg.dtsi     | 79 ++++++++++++++++++--------
 2 files changed, 62 insertions(+), 23 deletions(-)

-- 
2.14.3

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

* [PATCH v2 1/4] ARM64: dts: meson-axg: clean-up i2c nodes
  2018-05-17  9:30 [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Jerome Brunet
@ 2018-05-17  9:30 ` Jerome Brunet
  2018-05-17  9:30 ` [PATCH v2 2/4] ARM64: dts: meson-axg: correct i2c AO clock Jerome Brunet
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Jerome Brunet @ 2018-05-17  9:30 UTC (permalink / raw)
  To: Kevin Hilman, Carlo Caione
  Cc: Jerome Brunet, devicetree, linux-arm-kernel, linux-amlogic, linux-kernel

Remove undocumented and unused "clk_i2c" clock name and the second
interrupt from i2c nodes of meson-axg platform. Those seems to have
been copy/pasted from the vendor kernel

Fixes: dc6f858e2690 ("ARM64: dts: meson-axg: add I2C DT info for Meson-AXG SoC")
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
---
 arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 37 +++++++++++-------------------
 1 file changed, 14 insertions(+), 23 deletions(-)

diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
index 381bd2c707a7..b59f341104d7 100644
--- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
@@ -214,50 +214,42 @@
 
 			i2c0: i2c@1f000 {
 				compatible = "amlogic,meson-axg-i2c";
-				status = "disabled";
 				reg = <0x0 0x1f000 0x0 0x20>;
-				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>,
-					<GIC_SPI 47 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
+				clocks = <&clkc CLKID_I2C>;
 				#address-cells = <1>;
 				#size-cells = <0>;
-				clocks = <&clkc CLKID_I2C>;
-				clock-names = "clk_i2c";
+				status = "disabled";
 			};
 
 			i2c1: i2c@1e000 {
 				compatible = "amlogic,meson-axg-i2c";
+				reg = <0x0 0x1e000 0x0 0x20>;
+				interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>;
+				clocks = <&clkc CLKID_I2C>;
 				#address-cells = <1>;
 				#size-cells = <0>;
-				reg = <0x0 0x1e000 0x0 0x20>;
 				status = "disabled";
-				interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>,
-					<GIC_SPI 48 IRQ_TYPE_EDGE_RISING>;
-				clocks = <&clkc CLKID_I2C>;
-				clock-names = "clk_i2c";
 			};
 
 			i2c2: i2c@1d000 {
 				compatible = "amlogic,meson-axg-i2c";
-				status = "disabled";
 				reg = <0x0 0x1d000 0x0 0x20>;
-				interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>,
-					<GIC_SPI 49 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>;
+				clocks = <&clkc CLKID_I2C>;
 				#address-cells = <1>;
 				#size-cells = <0>;
-				clocks = <&clkc CLKID_I2C>;
-				clock-names = "clk_i2c";
+				status = "disabled";
 			};
 
 			i2c3: i2c@1c000 {
 				compatible = "amlogic,meson-axg-i2c";
-				status = "disabled";
 				reg = <0x0 0x1c000 0x0 0x20>;
-				interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>,
-					<GIC_SPI 50 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
+				clocks = <&clkc CLKID_I2C>;
 				#address-cells = <1>;
 				#size-cells = <0>;
-				clocks = <&clkc CLKID_I2C>;
-				clock-names = "clk_i2c";
+				status = "disabled";
 			};
 
 			uart_A: serial@24000 {
@@ -1116,13 +1108,12 @@
 
 			i2c_AO: i2c@5000 {
 				compatible = "amlogic,meson-axg-i2c";
-				status = "disabled";
 				reg = <0x0 0x05000 0x0 0x20>;
 				interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
+				clocks = <&clkc CLKID_I2C>;
 				#address-cells = <1>;
 				#size-cells = <0>;
-				clocks = <&clkc CLKID_I2C>;
-				clock-names = "clk_i2c";
+				status = "disabled";
 			};
 
 			uart_AO: serial@3000 {
-- 
2.14.3

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

* [PATCH v2 2/4] ARM64: dts: meson-axg: correct i2c AO clock
  2018-05-17  9:30 [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Jerome Brunet
  2018-05-17  9:30 ` [PATCH v2 1/4] ARM64: dts: meson-axg: clean-up i2c nodes Jerome Brunet
@ 2018-05-17  9:30 ` Jerome Brunet
  2018-05-17  9:30 ` [PATCH v2 3/4] ARM64: dts: meson-axg: add i2c AO pins Jerome Brunet
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Jerome Brunet @ 2018-05-17  9:30 UTC (permalink / raw)
  To: Kevin Hilman, Carlo Caione
  Cc: Jerome Brunet, devicetree, linux-arm-kernel, linux-amlogic, linux-kernel

The clock specified for the i2c AO controller is the one for the EE
domain, which is incorrect as this controller needs the clock for AO
i2c controller.

Fixes: dc6f858e2690 ("ARM64: dts: meson-axg: add I2C DT info for Meson-AXG SoC")
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
---
 arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
index b59f341104d7..d213ab715e03 100644
--- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
@@ -1110,7 +1110,7 @@
 				compatible = "amlogic,meson-axg-i2c";
 				reg = <0x0 0x05000 0x0 0x20>;
 				interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
-				clocks = <&clkc CLKID_I2C>;
+				clocks = <&clkc CLKID_AO_I2C>;
 				#address-cells = <1>;
 				#size-cells = <0>;
 				status = "disabled";
-- 
2.14.3

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

* [PATCH v2 3/4] ARM64: dts: meson-axg: add i2c AO pins
  2018-05-17  9:30 [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Jerome Brunet
  2018-05-17  9:30 ` [PATCH v2 1/4] ARM64: dts: meson-axg: clean-up i2c nodes Jerome Brunet
  2018-05-17  9:30 ` [PATCH v2 2/4] ARM64: dts: meson-axg: correct i2c AO clock Jerome Brunet
@ 2018-05-17  9:30 ` Jerome Brunet
  2018-05-17  9:31 ` [PATCH v2 4/4] ARM64: dts: meson-axg: enable i2c AO on the S400 board Jerome Brunet
  2018-05-23 17:06 ` [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Kevin Hilman
  4 siblings, 0 replies; 6+ messages in thread
From: Jerome Brunet @ 2018-05-17  9:30 UTC (permalink / raw)
  To: Kevin Hilman, Carlo Caione
  Cc: Jerome Brunet, devicetree, linux-arm-kernel, linux-amlogic, linux-kernel

Add the pins related to the i2c AO controller of the meson-axg platform

Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
---
 arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 42 ++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
index d213ab715e03..e315701cb6ac 100644
--- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
@@ -1046,6 +1046,48 @@
 					gpio-ranges = <&pinctrl_aobus 0 0 15>;
 				};
 
+				i2c_ao_sck_4_pins: i2c_ao_sck_4 {
+					mux {
+						groups = "i2c_ao_sck_4";
+						function = "i2c_ao";
+					};
+				};
+
+				i2c_ao_sck_8_pins: i2c_ao_sck_8 {
+					mux {
+						groups = "i2c_ao_sck_8";
+						function = "i2c_ao";
+					};
+				};
+
+				i2c_ao_sck_10_pins: i2c_ao_sck_10 {
+					mux {
+						groups = "i2c_ao_sck_10";
+						function = "i2c_ao";
+					};
+				};
+
+				i2c_ao_sda_5_pins: i2c_ao_sda_5 {
+					mux {
+						groups = "i2c_ao_sda_5";
+						function = "i2c_ao";
+					};
+				};
+
+				i2c_ao_sda_9_pins: i2c_ao_sda_9 {
+					mux {
+						groups = "i2c_ao_sda_9";
+						function = "i2c_ao";
+					};
+				};
+
+				i2c_ao_sda_11_pins: i2c_ao_sda_11 {
+					mux {
+						groups = "i2c_ao_sda_11";
+						function = "i2c_ao";
+					};
+				};
+
 				remote_input_ao_pins: remote_input_ao {
 					mux {
 						groups = "remote_input_ao";
-- 
2.14.3

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

* [PATCH v2 4/4] ARM64: dts: meson-axg: enable i2c AO on the S400 board
  2018-05-17  9:30 [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Jerome Brunet
                   ` (2 preceding siblings ...)
  2018-05-17  9:30 ` [PATCH v2 3/4] ARM64: dts: meson-axg: add i2c AO pins Jerome Brunet
@ 2018-05-17  9:31 ` Jerome Brunet
  2018-05-23 17:06 ` [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Kevin Hilman
  4 siblings, 0 replies; 6+ messages in thread
From: Jerome Brunet @ 2018-05-17  9:31 UTC (permalink / raw)
  To: Kevin Hilman, Carlo Caione
  Cc: Jerome Brunet, devicetree, linux-arm-kernel, linux-amlogic, linux-kernel

The i2c AO is used for the MIC daughter card of the S400 board

Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
---
 arch/arm64/boot/dts/amlogic/meson-axg-s400.dts | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts b/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts
index b3e1bdca32bb..4b3331fbfe39 100644
--- a/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts
@@ -95,6 +95,12 @@
 	pinctrl-names = "default";
 };
 
+&i2c_AO {
+	status = "okay";
+	pinctrl-0 = <&i2c_ao_sck_10_pins>, <&i2c_ao_sda_11_pins>;
+	pinctrl-names = "default";
+};
+
 &pwm_ab {
 	status = "okay";
 	pinctrl-0 = <&pwm_a_x20_pins>;
-- 
2.14.3

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

* Re: [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates
  2018-05-17  9:30 [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Jerome Brunet
                   ` (3 preceding siblings ...)
  2018-05-17  9:31 ` [PATCH v2 4/4] ARM64: dts: meson-axg: enable i2c AO on the S400 board Jerome Brunet
@ 2018-05-23 17:06 ` Kevin Hilman
  4 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2018-05-23 17:06 UTC (permalink / raw)
  To: Jerome Brunet
  Cc: Carlo Caione, devicetree, linux-arm-kernel, linux-amlogic, linux-kernel

Jerome Brunet <jbrunet@baylibre.com> writes:

> This patchset fixes a few problems found in the i2c nodes of
> amlogic's meson-axg platform. It also adds the missing pins for
> AO controller so we can use it on the S400
>
> This series has been tested on the S400 board.
>
> Jerome Brunet (4):
>   ARM64: dts: meson-axg: clean-up i2c nodes
>   ARM64: dts: meson-axg: correct i2c AO clock
>   ARM64: dts: meson-axg: add i2c AO pins
>   ARM64: dts: meson-axg: enable i2c AO on the S400 board

Applied to v4.18/dt64,

Kevin

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

end of thread, other threads:[~2018-05-23 17:06 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-17  9:30 [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Jerome Brunet
2018-05-17  9:30 ` [PATCH v2 1/4] ARM64: dts: meson-axg: clean-up i2c nodes Jerome Brunet
2018-05-17  9:30 ` [PATCH v2 2/4] ARM64: dts: meson-axg: correct i2c AO clock Jerome Brunet
2018-05-17  9:30 ` [PATCH v2 3/4] ARM64: dts: meson-axg: add i2c AO pins Jerome Brunet
2018-05-17  9:31 ` [PATCH v2 4/4] ARM64: dts: meson-axg: enable i2c AO on the S400 board Jerome Brunet
2018-05-23 17:06 ` [PATCH v2 0/4] ARM64: dts: meson-axg: i2c updates Kevin Hilman

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).