]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - board/karo/dts/tx53.dts
karo: tx6: rework PMIC code to allow for different configs for same chip
[karo-tx-uboot.git] / board / karo / dts / tx53.dts
1 /*
2  * Copyright 2012 <LW@KARO-electronics.de>
3  * based on imx53-qsb.dts
4  *   Copyright 2011 Freescale Semiconductor, Inc.
5  *   Copyright 2011 Linaro Ltd.
6  *
7  * The code contained herein is licensed under the GNU General Public
8  * License. You may obtain a copy of the GNU General Public License
9  * Version 2 at the following locations:
10  *
11  * http://www.opensource.org/licenses/gpl-license.html
12  * http://www.gnu.org/copyleft/gpl.html
13  */
14
15 /dts-v1/;
16 #include "mx53.dtsi"
17
18 / {
19         model = "Ka-Ro electronics TX53 module";
20         compatible = "karo,tx53", "fsl,imx53";
21
22         chosen {
23                 bootargs = "init=/linuxrc console=ttymxc0,115200 root=/dev/mtdblock3 rootfstype=jffs2 ro debug panic=1";
24         };
25
26         aliases {
27                 ipu = &ipu;
28         };
29
30         clocks {
31                 ckih1 {
32                         clock-frequency = <0>;
33                 };
34         };
35
36         soc {
37                 extmc: extmc@00000000 {
38                         sata: sata@10000000 {
39                                 status = "okay";
40                         };
41
42                         ipu: ipu@1e000000 {
43                                 status = "okay";
44                         };
45                 };
46
47                 aips1: aips@50000000 { /* AIPS1 */
48                         spba@50000000 {
49                                 mmc0: esdhc@50004000 { /* ESDHC1 */
50                                         status = "okay";
51                                         cd-gpios = <&gpio3 24 0>;
52                                         fsl,wp-controller;
53                                 };
54
55                                 mmc1: esdhc@50008000 { /* ESDHC2 */
56                                         status = "okay";
57                                         cd-gpios = <&gpio3 25 0>;
58                                         fsl,wp-controller;
59                                 };
60
61                                 uart3: uart@5000c000 {
62                                         status = "okay";
63                                         pinctrl-names = "default";
64                                         pinctrl-0 = <&pinctrl_uart3_1>;
65                                         fsl,uart-has-rtscts;
66                                 };
67
68                                 spi0: ecspi@50010000 { /* ECSPI1 */
69                                         status = "okay";
70
71                                         pinctrl-names = "default";
72                                         pinctrl-0 = <
73                                                 &pinctrl_ecspi1_1
74                                                 &pinctrl_cspi1_cs
75                                         >;
76
77                                         fsl,spi-num-chipselects = <2>;
78                                         cs-gpios = <&gpio2 30 0 &gpio3 19 0>;
79
80                                         spidev0: spi@0 {
81                                                 compatible = "spidev";
82                                                 reg = <0>;
83                                                 spi-max-frequency = <54000000>;
84                                         };
85                                 };
86                         };
87
88                         usbotg: imxotg@53f80000 {
89                                 status = "okay";
90
91                                 ignore-overcurrent;
92                                 enable-wakeup;
93                                 vbus-gpio = <&usbotg_vbus>;
94                         };
95
96                         usbh1: imxotg@53f80200 {
97                                 status = "okay";
98
99                                 ignore-overcurrent;
100                                 enable-wakeup;
101                                 vbus-gpio = <&usbh1_vbus>;
102                         };
103
104                         usbphy: imx-usb-phy@53f80800 {
105                                 status = "okay";
106
107                                 device-ports = <&usbotg>;
108                                 host-ports = <&usbotg &usbh1>;
109                         };
110
111                         keypad@53f94000 {
112                                 status = "okay";
113                                 /* sample keymap */
114                                 /* row/col 0,1 are mapped to KPP row/col 6,7 */
115                                 linux,keymap = < 0x06060074 /* row 6, col 6, KEY_POWER */
116                                                  0x06070052 /* row 6, col 7, KEY_KP0 */
117                                                  0x0602004f /* row 6, col 2, KEY_KP1 */
118                                                  0x06030050 /* row 6, col 3, KEY_KP2 */
119                                                  0x07060051 /* row 7, col 6, KEY_KP3 */
120                                                  0x0707004b /* row 7, col 7, KEY_KP4 */
121                                                  0x0702004c /* row 7, col 2, KEY_KP5 */
122                                                  0x0703004d /* row 7, col 3, KEY_KP6 */
123                                                  0x02060047 /* row 2, col 6, KEY_KP7 */
124                                                  0x02070048 /* row 2, col 7, KEY_KP8 */
125                                                  0x02020049 /* row 2, col 2, KEY_KP9 */
126                                                  >;
127                         };
128
129                         wdog@53f98000 { /* WDOG1 */
130                                 status = "okay";
131                         };
132
133                         iomuxc@53fa8000 {
134                                 compatible = "fsl,imx53-iomuxc-tx53";
135
136                                 pinctrl-names = "default";
137                                 pinctrl-0 = <&pinctrl_tsc2007_pd>;
138
139                                 pincontroller {
140                                         pinctrl_stk5_led: stk5-led-gpios {
141                                                 fsl,pins = <
142                                                         589 0xc0 /* MX53_PAD_EIM_A18__GPIO2_20 */
143                                                 >;
144                                         };
145
146                                         pinctrl_ds1339_int: ds1339-gpios {
147                                                 fsl,pins = <
148                                                         104 0xe0 /* MX53_PAD_DI0_PIN4__GPIO4_20 */
149                                                 >;
150                                         };
151
152                                         pinctrl_cspi1_cs: cspi1-cs-gpios {
153                                                 fsl,pins = <
154                                                         424 0xe0 /* MX53_PAD_EIM_EB2__GPIO2_30 */
155                                                         449 0xe0 /* MX53_PAD_EIM_D19__GPIO3_19 */
156                                                 >;
157                                         };
158
159                                         pinctrl_esdhc1_cd: esdhc1-cd-gpios {
160                                                 fsl,pins = <
161                                                         493 0x1f0 /* MX53_PAD_EIM_D24__GPIO3_24 */
162                                                 >;
163                                         };
164
165                                         pinctrl_esdhc2_cd: esdhc2-cd-gpios {
166                                                 fsl,pins = <
167                                                         501 0x1f0 /* MX53_PAD_EIM_D25__GPIO3_25 */
168                                                 >;
169                                         };
170
171                                         pinctrl_tsc2007_pd: pendown-gpios {
172                                                 fsl,pins = <
173                                                         517 0x1f0 /* MX53_PAD_EIM_D27__GPIO3_27 */
174                                                 >;
175                                         };
176                                 };
177                         };
178
179                         pwm2: pwm@53fb8000 {
180                                 status = "okay";
181                         };
182
183                         uart1: uart@53fbc000 {
184                                 status = "okay";
185                                 pinctrl-names = "default";
186                                 pinctrl-0 = <&pinctrl_uart1_2>;
187                                 fsl,uart-has-rtscts;
188                         };
189
190                         uart2: uart@53fc0000 {
191                                 status = "okay";
192                                 pinctrl-names = "default";
193                                 pinctrl-0 = <&pinctrl_uart2_1>;
194                                 fsl,uart-has-rtscts;
195                         };
196
197                         can1: flexcan@53fc8000 {
198                                 status = "okay";
199                                 transceiver-switch = <&flexcan_transceiver>;
200                         };
201
202                         can2: flexcan@53fcc000 {
203                                 status = "okay";
204                                 transceiver-switch = <&flexcan_transceiver>;
205                         };
206
207                         i2c@53fec000 { /* I2C3 */
208                                 status = "okay";
209
210                                 pinctrl-names = "default";
211                                 pinctrl-0 = <&pinctrl_i2c3_1>;
212
213                                 sgtl5000: sgtl5000@0a {
214                                         compatible = "fsl,sgtl5000";
215                                         reg = <0x0a>;
216                                         VDDA-supply = <&reg_2p5v>;
217                                         VDDIO-supply = <&reg_3p3v>;
218                                         clock-frequency = <26000000>;
219                                 };
220
221                                 touchscreen: tsc2007@48 {
222                                         compatible = "ti,tsc2007";
223                                         reg = <0x48>;
224                                         interrupt-parent = <&gpio3>;
225                                         interrupts = <26 0>;
226                                         pendown-gpio = <&gpio3 26 1>;
227                                         model = "2007";
228                                         x-plate-ohms = <660>;
229                                 };
230
231                                 polytouch: edt-ft5x06@ {
232                                         compatible = "edt,edt-ft5x06";
233                                         reg = <0x38>;
234                                         interrupt-parent = <&gpio6>;
235                                         interrupts = <15 0>;
236                                         reset-switch = <&edt_ft5x06_reset>;
237                                         wake-switch = <&edt_ft5x06_wake>;
238                                 };
239                         };
240                 };
241
242                 aips2: aips@60000000 {  /* AIPS2 */
243
244                         sdma@63fb0000 {
245                                 fsl,sdma-ram-script-name = "sdma-imx53.bin";
246                         };
247
248                         i2c@63fc8000 { /* I2C1 */
249                                 status = "okay";
250
251                                 pinctrl-names = "default";
252                                 pinctrl-0 = <
253                                         &pinctrl_i2c1_2
254                                         &pinctrl_ds1339_int
255                                 >;
256
257                                 rtc1: ds1339@68 {
258                                         compatible = "dallas,ds1339";
259                                         reg = <0x68>;
260                                         trickle-charge = <0xa5>;
261                                         interrupt-parent = <&gpio4>;
262                                         interrupts = <20 0>;
263                                 };
264
265                                 pmic: lt3589@48 {
266                                         compatible = "lt,lt3589";
267                                         reg = <0x48>;
268                                 };
269                         };
270
271                         ssi@63fcc000 {
272                                 status = "okay";
273                                 rx-dma = <28>;
274                                 tx-dma = <29>;
275                                 i2s-sync-mode;
276                         };
277
278                         ssi@50014000 {
279                                 status = "okay";
280                         };
281
282                         audmux@63fd0000 {
283                                 status = "okay";
284
285                                 pinctrl-names = "default";
286                                 pinctrl-0 = <&pinctrl_audmux_1>;
287                         };
288
289                         nand@63fdb000 {
290                                 status = "okay";
291
292                                 nand-bus-width = <8>;
293                                 nand-ecc-mode = "hw";
294                                 nand-on-flash-bbt;
295                         };
296
297                         ethernet@63fec000 {
298                                 status = "okay";
299
300                                 pinctrl-names = "default";
301                                 pinctrl-0 = <&pinctrl_fec_1>;
302
303                                 phy-mode = "rmii";
304                                 phy-reset-gpios = <&gpio7 6 0>;
305                                 phy-handle = <&phy0>;
306                                 mac-address = [000000000000];
307
308                                 phy0: ethernet-phy@0 {
309                                         interrupt-parent = <&gpio2>;
310                                         interrupts = <4>;
311                                         device_type = "ethernet-phy";
312                                 };
313                         };
314                 };
315         };
316
317         sound {
318                 compatible = "fsl,imx-sgtl5000";
319                 status = "okay";
320                 /* '1' based port numbers according to datasheet names */
321                 ssi-port = <1>;
322                 audmux-port = <5>;
323                 sysclk = <26000000>;
324         };
325
326         gpio-switch {
327                 compatible = "gpio-switches", "simple-bus";
328                 #address-cells = <1>;
329                 #size-cells = <0>;
330
331                 flexcan_transceiver: gpio-switch@0 {
332                         compatible = "linux,gpio-switch";
333                         gpio = <&gpio4 21 1>;
334                         label = "Flexcan Transceiver Enable";
335                         gpio-shared;
336                         init-state = <0>;
337                 };
338
339                 lcd_power: gpio-switch@1 {
340                         compatible = "linux,gpio-switch";
341                         gpio = <&gpio2 31 0>;
342                         label = "LCD Power Enable";
343                         init-state = <0>;
344                 };
345
346                 lcd_reset: gpio-switch@2 {
347                         compatible = "linux,gpio-switch";
348                         gpio = <&gpio3 29 1>;
349                         label = "LCD Reset";
350                         init-state = <1>;
351                 };
352
353                 edt_ft5x06_reset: gpio-switch@3 {
354                         compatible = "linux,gpio-switch";
355                         gpio = <&gpio2 22 1>;
356                         label = "EDT-FT5x06 RESET";
357                 };
358
359                 edt_ft5x06_wake: gpio-switch@4 {
360                         compatible = "linux,gpio-switch";
361                         gpio = <&gpio2 21 0>;
362                         label = "EDT-FT5x06 WAKE";
363                         init-state = <1>;
364                 };
365
366                 usbotg_vbus: gpio-switch@5 {
367                         compatible = "linux,gpio-switch";
368                         gpio = <&gpio1 7 0>;
369                         label = "USBOTG VBUS";
370                 };
371
372                 usbh1_vbus: gpio-switch@6 {
373                         compatible = "linux,gpio-switch";
374                         gpio = <&gpio3 31 0>;
375                         label = "USBH1 VBUS";
376                 };
377         };
378
379         leds {
380                 compatible = "gpio-leds";
381
382                 pinctrl-names = "default";
383                 pinctrl-0 = <&pinctrl_stk5_led>;
384
385                 user {
386                         label = "Heartbeat";
387                         gpios = <&gpio2 20 0>;
388                         linux,default-trigger = "heartbeat";
389                 };
390         };
391
392         lcd {
393                 compatible = "of-gpio-lcd";
394                 parent = <&ipu>;
395
396                 power-switch = <&lcd_power>;
397 /*
398                 reset-switch = <&lcd_reset>;
399                 reset-delay-us = <300>;
400 */
401         };
402
403         backlight: pwm-backlight {
404                 compatible = "pwm-backlight";
405
406                 pwm = <&pwm2>;
407                 inverted;
408                 max-brightness = <100>;
409                 dft-brightness = <50>;
410                 pwm-period-ns = <1000000>;
411         };
412
413         regulators {
414                 compatible = "simple-bus";
415
416                 reg_2p5v: 2p5v {
417                         compatible = "regulator-fixed";
418                         regulator-name = "2P5V";
419                         regulator-min-microvolt = <2500000>;
420                         regulator-max-microvolt = <2500000>;
421                         regulator-always-on;
422                 };
423
424                 reg_3p3v: 3p3v {
425                         compatible = "regulator-fixed";
426                         regulator-name = "3P3V";
427                         regulator-min-microvolt = <3300000>;
428                         regulator-max-microvolt = <3300000>;
429                         regulator-always-on;
430                 };
431         };
432 };