aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2014-06-24 14:12:06 -0400
committerHeiko Stuebner <heiko@sntech.de>2014-07-26 17:35:29 -0400
commit9cdffd8cb9b5f30495a9c284ab05d5b803f3b457 (patch)
treeaff9869175fd8962e7378b27ffd9556b39354577
parentff84b90ecd1cfd00af3d1832fd8bf3c18e555d4e (diff)
ARM: dts: add rk3066 and rk3188 i2c device nodes and pinctrl settings
The core controller settings themself are identical, only the compatible and pinctrl settings differ. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
-rw-r--r--arch/arm/boot/dts/rk3066a.dtsi60
-rw-r--r--arch/arm/boot/dts/rk3188.dtsi65
-rw-r--r--arch/arm/boot/dts/rk3xxx.dtsi84
3 files changed, 209 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/rk3066a.dtsi b/arch/arm/boot/dts/rk3066a.dtsi
index 21b87dece38c..18e802c08a91 100644
--- a/arch/arm/boot/dts/rk3066a.dtsi
+++ b/arch/arm/boot/dts/rk3066a.dtsi
@@ -179,6 +179,41 @@
179 bias-disable; 179 bias-disable;
180 }; 180 };
181 181
182 i2c0 {
183 i2c0_xfer: i2c0-xfer {
184 rockchip,pins = <RK_GPIO2 28 RK_FUNC_1 &pcfg_pull_none>,
185 <RK_GPIO2 29 RK_FUNC_1 &pcfg_pull_none>;
186 };
187 };
188
189 i2c1 {
190 i2c1_xfer: i2c1-xfer {
191 rockchip,pins = <RK_GPIO2 30 RK_FUNC_1 &pcfg_pull_none>,
192 <RK_GPIO2 31 RK_FUNC_1 &pcfg_pull_none>;
193 };
194 };
195
196 i2c2 {
197 i2c2_xfer: i2c2-xfer {
198 rockchip,pins = <RK_GPIO3 0 RK_FUNC_1 &pcfg_pull_none>,
199 <RK_GPIO3 1 RK_FUNC_1 &pcfg_pull_none>;
200 };
201 };
202
203 i2c3 {
204 i2c3_xfer: i2c3-xfer {
205 rockchip,pins = <RK_GPIO3 2 RK_FUNC_2 &pcfg_pull_none>,
206 <RK_GPIO3 3 RK_FUNC_2 &pcfg_pull_none>;
207 };
208 };
209
210 i2c4 {
211 i2c4_xfer: i2c4-xfer {
212 rockchip,pins = <RK_GPIO3 4 RK_FUNC_1 &pcfg_pull_none>,
213 <RK_GPIO3 5 RK_FUNC_1 &pcfg_pull_none>;
214 };
215 };
216
182 uart0 { 217 uart0 {
183 uart0_xfer: uart0-xfer { 218 uart0_xfer: uart0-xfer {
184 rockchip,pins = <RK_GPIO1 0 RK_FUNC_1 &pcfg_pull_default>, 219 rockchip,pins = <RK_GPIO1 0 RK_FUNC_1 &pcfg_pull_default>,
@@ -292,6 +327,31 @@
292 }; 327 };
293}; 328};
294 329
330&i2c0 {
331 pinctrl-names = "default";
332 pinctrl-0 = <&i2c0_xfer>;
333};
334
335&i2c1 {
336 pinctrl-names = "default";
337 pinctrl-0 = <&i2c1_xfer>;
338};
339
340&i2c2 {
341 pinctrl-names = "default";
342 pinctrl-0 = <&i2c2_xfer>;
343};
344
345&i2c3 {
346 pinctrl-names = "default";
347 pinctrl-0 = <&i2c3_xfer>;
348};
349
350&i2c4 {
351 pinctrl-names = "default";
352 pinctrl-0 = <&i2c4_xfer>;
353};
354
295&mmc0 { 355&mmc0 {
296 pinctrl-names = "default"; 356 pinctrl-names = "default";
297 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4>; 357 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4>;
diff --git a/arch/arm/boot/dts/rk3188.dtsi b/arch/arm/boot/dts/rk3188.dtsi
index dd7f61fe98d4..ba1193ca00a7 100644
--- a/arch/arm/boot/dts/rk3188.dtsi
+++ b/arch/arm/boot/dts/rk3188.dtsi
@@ -147,6 +147,41 @@
147 bias-disable; 147 bias-disable;
148 }; 148 };
149 149
150 i2c0 {
151 i2c0_xfer: i2c0-xfer {
152 rockchip,pins = <RK_GPIO1 24 RK_FUNC_1 &pcfg_pull_none>,
153 <RK_GPIO1 25 RK_FUNC_1 &pcfg_pull_none>;
154 };
155 };
156
157 i2c1 {
158 i2c1_xfer: i2c1-xfer {
159 rockchip,pins = <RK_GPIO1 26 RK_FUNC_1 &pcfg_pull_none>,
160 <RK_GPIO1 27 RK_FUNC_1 &pcfg_pull_none>;
161 };
162 };
163
164 i2c2 {
165 i2c2_xfer: i2c2-xfer {
166 rockchip,pins = <RK_GPIO1 28 RK_FUNC_1 &pcfg_pull_none>,
167 <RK_GPIO1 29 RK_FUNC_1 &pcfg_pull_none>;
168 };
169 };
170
171 i2c3 {
172 i2c3_xfer: i2c3-xfer {
173 rockchip,pins = <RK_GPIO3 14 RK_FUNC_2 &pcfg_pull_none>,
174 <RK_GPIO3 15 RK_FUNC_2 &pcfg_pull_none>;
175 };
176 };
177
178 i2c4 {
179 i2c4_xfer: i2c4-xfer {
180 rockchip,pins = <RK_GPIO1 30 RK_FUNC_1 &pcfg_pull_none>,
181 <RK_GPIO1 31 RK_FUNC_1 &pcfg_pull_none>;
182 };
183 };
184
150 uart0 { 185 uart0 {
151 uart0_xfer: uart0-xfer { 186 uart0_xfer: uart0-xfer {
152 rockchip,pins = <RK_GPIO1 0 RK_FUNC_1 &pcfg_pull_up>, 187 rockchip,pins = <RK_GPIO1 0 RK_FUNC_1 &pcfg_pull_up>,
@@ -272,6 +307,36 @@
272 interrupts = <GIC_PPI 13 0xf04>; 307 interrupts = <GIC_PPI 13 0xf04>;
273}; 308};
274 309
310&i2c0 {
311 compatible = "rockchip,rk3188-i2c";
312 pinctrl-names = "default";
313 pinctrl-0 = <&i2c0_xfer>;
314};
315
316&i2c1 {
317 compatible = "rockchip,rk3188-i2c";
318 pinctrl-names = "default";
319 pinctrl-0 = <&i2c1_xfer>;
320};
321
322&i2c2 {
323 compatible = "rockchip,rk3188-i2c";
324 pinctrl-names = "default";
325 pinctrl-0 = <&i2c2_xfer>;
326};
327
328&i2c3 {
329 compatible = "rockchip,rk3188-i2c";
330 pinctrl-names = "default";
331 pinctrl-0 = <&i2c3_xfer>;
332};
333
334&i2c4 {
335 compatible = "rockchip,rk3188-i2c";
336 pinctrl-names = "default";
337 pinctrl-0 = <&i2c4_xfer>;
338};
339
275&uart0 { 340&uart0 {
276 pinctrl-names = "default"; 341 pinctrl-names = "default";
277 pinctrl-0 = <&uart0_xfer>; 342 pinctrl-0 = <&uart0_xfer>;
diff --git a/arch/arm/boot/dts/rk3xxx.dtsi b/arch/arm/boot/dts/rk3xxx.dtsi
index ad204da6c60f..d3fa4d1a2f8a 100644
--- a/arch/arm/boot/dts/rk3xxx.dtsi
+++ b/arch/arm/boot/dts/rk3xxx.dtsi
@@ -20,6 +20,14 @@
20/ { 20/ {
21 interrupt-parent = <&gic>; 21 interrupt-parent = <&gic>;
22 22
23 aliases {
24 i2c0 = &i2c0;
25 i2c1 = &i2c1;
26 i2c2 = &i2c2;
27 i2c3 = &i2c3;
28 i2c4 = &i2c4;
29 };
30
23 xin24m: oscillator { 31 xin24m: oscillator {
24 compatible = "fixed-clock"; 32 compatible = "fixed-clock";
25 clock-frequency = <24000000>; 33 clock-frequency = <24000000>;
@@ -117,6 +125,82 @@
117 reg = <0x20008000 0x200>; 125 reg = <0x20008000 0x200>;
118 }; 126 };
119 127
128 i2c0: i2c@2002d000 {
129 compatible = "rockchip,rk3066-i2c";
130 reg = <0x2002d000 0x1000>;
131 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
132 #address-cells = <1>;
133 #size-cells = <0>;
134
135 rockchip,grf = <&grf>;
136 rockchip,bus-index = <0>;
137
138 clock-names = "i2c";
139 clocks = <&cru PCLK_I2C0>;
140
141 status = "disabled";
142 };
143
144 i2c1: i2c@2002f000 {
145 compatible = "rockchip,rk3066-i2c";
146 reg = <0x2002f000 0x1000>;
147 interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
148 #address-cells = <1>;
149 #size-cells = <0>;
150
151 rockchip,grf = <&grf>;
152
153 clocks = <&cru PCLK_I2C1>;
154 clock-names = "i2c";
155
156 status = "disabled";
157 };
158
159 i2c2: i2c@20056000 {
160 compatible = "rockchip,rk3066-i2c";
161 reg = <0x20056000 0x1000>;
162 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
163 #address-cells = <1>;
164 #size-cells = <0>;
165
166 rockchip,grf = <&grf>;
167
168 clocks = <&cru PCLK_I2C2>;
169 clock-names = "i2c";
170
171 status = "disabled";
172 };
173
174 i2c3: i2c@2005a000 {
175 compatible = "rockchip,rk3066-i2c";
176 reg = <0x2005a000 0x1000>;
177 interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
178 #address-cells = <1>;
179 #size-cells = <0>;
180
181 rockchip,grf = <&grf>;
182
183 clocks = <&cru PCLK_I2C3>;
184 clock-names = "i2c";
185
186 status = "disabled";
187 };
188
189 i2c4: i2c@2005e000 {
190 compatible = "rockchip,rk3066-i2c";
191 reg = <0x2005e000 0x1000>;
192 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
193 #address-cells = <1>;
194 #size-cells = <0>;
195
196 rockchip,grf = <&grf>;
197
198 clocks = <&cru PCLK_I2C4>;
199 clock-names = "i2c";
200
201 status = "disabled";
202 };
203
120 uart2: serial@20064000 { 204 uart2: serial@20064000 {
121 compatible = "snps,dw-apb-uart"; 205 compatible = "snps,dw-apb-uart";
122 reg = <0x20064000 0x400>; 206 reg = <0x20064000 0x400>;