imx23: add new target for i.MX233-based boards
[openwrt.git] / target / linux / imx23 / patches / 100-imx23-i2c.patch
1 diff -ruN linux-3.8.11.orig/arch/arm/boot/dts/imx23.dtsi linux-3.8.11/arch/arm/boot/dts/imx23.dtsi
2 --- linux-3.8.11.orig/arch/arm/boot/dts/imx23.dtsi      2013-05-01 18:56:10.000000000 +0200
3 +++ linux-3.8.11/arch/arm/boot/dts/imx23.dtsi   2013-05-07 01:17:33.000000000 +0200
4 @@ -292,8 +292,42 @@
5                                         fsl,voltage = <1>;
6                                         fsl,pull-up = <1>;
7                                 };
8 -                       };
9  
10 +                               i2c0_pins_a: i2c0@0 {
11 +                                       reg = <0>;
12 +                                       fsl,pinmux-ids = <
13 +                                               0x01e0 /* MX23_PAD_I2C_SCL__I2C_SCL */
14 +                                               0x01f0 /* MX23_PAD_I2C_SDA__I2C_SDA */
15 +                                       >;
16 +                                       fsl,drive-strength = <1>;
17 +                                       fsl,voltage = <1>;
18 +                                       fsl,pull-up = <1>;
19 +                               };
20 +                               
21 +                               i2c1_pins_a: i2c1@0 {
22 +                                       reg = <0>;
23 +                                       fsl,pinmux-ids = <
24 +                                               0x1171 /* MX23_PAD_LCD_ENABLE__I2C_SCL */
25 +                                               0x1181 /* MX23_PAD_LCD_HSYNC__I2C_SDA  */
26 +                                       >;
27 +                                       fsl,drive-strength = <1>;
28 +                                       fsl,voltage = <1>;
29 +                                       fsl,pull-up = <1>;
30 +                               };
31 +                               
32 +                               i2c2_pins_a: i2c2@0 {
33 +                                       reg = <0>;
34 +                                       fsl,pinmux-ids = <
35 +                                               0x2031 /* MX23_PAD_SSP1_DATA1__I2C_SCL  */
36 +                                               0x2041 /* MX23_PAD_SSP1_DATA2__I2C_SDA  */
37 +                                       >;
38 +                                       fsl,drive-strength = <1>;
39 +                                       fsl,voltage = <1>;
40 +                                       fsl,pull-up = <1>;
41 +                               };
42 +
43 +                       };
44 +                       
45                         digctl@8001c000 {
46                                 reg = <0x8001c000 2000>;
47                                 status = "disabled";
48 @@ -400,8 +434,14 @@
49                                 status = "disabled";
50                         };
51  
52 -                       i2c@80058000 {
53 +                       i2c0: i2c@80058000 {
54 +                               #address-cells = <1>;
55 +                               #size-cells = <0>;
56 +                               compatible = "fsl,imx28-i2c";
57                                 reg = <0x80058000 0x2000>;
58 +                               interrupts = <27 26>;
59 +                               clock-frequency = <100000>;
60 +                               fsl,i2c-dma-channel = <3>;
61                                 status = "disabled";
62                         };
63  
64 diff -ruN linux-3.8.11.orig/arch/arm/boot/dts/imx23-olinuxino.dts linux-3.8.11/arch/arm/boot/dts/imx23-olinuxino.dts
65 --- linux-3.8.11.orig/arch/arm/boot/dts/imx23-olinuxino.dts     2013-05-01 18:56:10.000000000 +0200
66 +++ linux-3.8.11/arch/arm/boot/dts/imx23-olinuxino.dts  2013-05-07 01:16:41.000000000 +0200
67 @@ -68,6 +68,12 @@
68                 };
69  
70                 apbx@80040000 {
71 +                       i2c0: i2c@80058000 {
72 +                               pinctrl-names = "default";
73 +                               pinctrl-0 = <&i2c1_pins_a>;
74 +                               status = "okay";
75 +                       };
76 +                       
77                         duart: serial@80070000 {
78                                 pinctrl-names = "default";
79                                 pinctrl-0 = <&duart_pins_a>;