Skip to contentSkip to conversation

ARM: dts: imx23: Add i2c support

PATCH New Harald Geyer 4 participants 5 messages Apr 17, 2015 – Apr 27, 2015

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH v2 1/2 ARM: dts: imx23: Add i2c support

The imx23-olinuxino board has an i2c interface exposed on UEXT connector. This patch provides the generic devicetree infrastructure for a follow-up patch to add support to the actual board files.
Tested all three possible pin groups with MOD-LCD1x9 from Olimex.

This patch is based on work by Fadil Berisha with his permission. However all bugs are mine.

---
changes since v1:
split in generic and board specific patches

 arch/arm/boot/dts/imx23.dtsi |   40 +++++++++++++++++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)
arch/arm/boot/dts/imx23.dtsi +39 -1
index bbcfb5a..c892d58 100644
@@ -308,6 +308,39 @@
 					fsl,voltage = <MXS_VOLTAGE_HIGH>;
 					fsl,pull-up = <MXS_PULL_ENABLE>;
 				};
+
+				i2c_pins_a: i2c at 0 {
+					reg = <0>;
+					fsl,pinmux-ids = <
+						MX23_PAD_I2C_SCL__I2C_SCL
+						MX23_PAD_I2C_SDA__I2C_SDA
+					>;
+					fsl,drive-strength = <MXS_DRIVE_8mA>;
+					fsl,voltage = <MXS_VOLTAGE_HIGH>;
+					fsl,pull-up = <MXS_PULL_ENABLE>;
+				};
+
+				i2c_pins_b: i2c at 1 {
+					reg = <1>;
+					fsl,pinmux-ids = <
+						MX23_PAD_LCD_ENABLE__I2C_SCL
+						MX23_PAD_LCD_HSYNC__I2C_SDA
+					>;
+					fsl,drive-strength = <MXS_DRIVE_8mA>;
+					fsl,voltage = <MXS_VOLTAGE_HIGH>;
+					fsl,pull-up = <MXS_PULL_ENABLE>;
+				};
+
+				i2c_pins_c: i2c at 2 {
+					reg = <2>;
+					fsl,pinmux-ids = <
+						MX23_PAD_SSP1_DATA1__I2C_SCL
+						MX23_PAD_SSP1_DATA2__I2C_SDA
+					>;
+					fsl,drive-strength = <MXS_DRIVE_8mA>;
+					fsl,voltage = <MXS_VOLTAGE_HIGH>;
+					fsl,pull-up = <MXS_PULL_ENABLE>;
+				};
 			};
 
 			digctl at 8001c000 {
@@ -444,8 +477,13 @@
 				status = "disabled";
 			};
 
-			i2c at 80058000 {
+			i2c: i2c at 80058000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				compatible = "fsl,imx23-i2c";
 				reg = <0x80058000 0x2000>;
+				interrupts = <27>;
+				clock-frequency = <100000>;
 				dmas = <&dma_apbx 3>;
 				dma-names = "rx-tx";
 				status = "disabled";
Signature · 1 line
1.7.10.4
#1 lore raw

PATCH v2 2/2 ARM: dts: imx23-olinuxino: Add i2c support

The imx23-olinuxino board has an i2c interface exposed on UEXT connector. This patch enables i2c and selects the pin group used on UEXT connector. Tested with MOD-LCD1x9 from Olimex.

This patch is based on work by Fadil Berisha with his permission. However all bugs are mine.

---
changes since v1:
split in generic and board specific patches

 arch/arm/boot/dts/imx23-olinuxino.dts |    6 ++++++
 1 file changed, 6 insertions(+)
arch/arm/boot/dts/imx23-olinuxino.dts +6 -0
index 7e6eef2..85718df 100644
@@ -73,6 +73,12 @@
 				status = "okay";
 			};
 
+			i2c: i2c at 80058000 {
+				pinctrl-names = "default";
+				pinctrl-0 = <&i2c_pins_b>;
+				status = "okay";
+			};
+
 			duart: serial at 80070000 {
 				pinctrl-names = "default";
 				pinctrl-0 = <&duart_pins_a>;
Signature · 1 line
1.7.10.4
#2 lore raw

PATCH v2 1/2 ARM: dts: imx23: Add i2c support

In reply to Harald Geyer

Hi Harald,

[add Marek and Wolfram]

Quoted 11 lines

Harald Geyer <[email protected]> hat am 17. April 2015 um 16:43 geschrieben:

The imx23-olinuxino board has an i2c interface exposed on UEXT connector. This patch provides the generic devicetree infrastructure for a follow-up patch to add support to the actual board files.
Tested all three possible pin groups with MOD-LCD1x9 from Olimex.

This patch is based on work by Fadil Berisha with his permission. However all bugs are mine.

Quoted 7 lines

---
changes since v1:
split in generic and board specific patches arch/arm/boot/dts/imx23.dtsi | 40 +++++++++++++++++++++++++++++++++++++++-

1 file changed, 39 insertions(+), 1 deletion(-)
#3 lore raw

PATCH v2 1/2 ARM: dts: imx23: Add i2c support

Quoted 3 lines · Stefan Wahren

Hi Harald,

[add Marek and Wolfram]

Thanks!

Quoted 20 lines
Quoted 12 lines

Harald Geyer <[email protected]> hat am 17. April 2015 um 16:43 geschrieben:

The imx23-olinuxino board has an i2c interface exposed on UEXT connector. This patch provides the generic devicetree infrastructure for a follow-up patch to add support to the actual board files.
Tested all three possible pin groups with MOD-LCD1x9 from Olimex.

This patch is based on work by Fadil Berisha with his permission. However all bugs are mine.

Quoted 7 lines

---
changes since v1:
split in generic and board specific patches arch/arm/boot/dts/imx23.dtsi | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-)

Quoted 1 line

Best regards,
Marek Vasut

Applied
#4 lore raw

PATCH v2 1/2 ARM: dts: imx23: Add i2c support

In reply to Harald Geyer
Quoted 9 lines · Harald Geyer

The imx23-olinuxino board has an i2c interface exposed on UEXT connector. This patch provides the generic devicetree infrastructure for a follow-up patch to add support to the actual board files.
Tested all three possible pin groups with MOD-LCD1x9 from Olimex.

This patch is based on work by Fadil Berisha with his permission. However all bugs are mine.

Applied both, thanks.