1/* 2 * Copyright 2012 Shawn Guo <shawn.guo@linaro.org> 3 * Copyright 2013 Lothar Waßmann <LW@KARO-electronics.de> 4 * 5 * The code contained herein is licensed under the GNU General Public 6 * License. You may obtain a copy of the GNU General Public License 7 * Version 2 at the following locations: 8 * 9 * http://www.opensource.org/licenses/gpl-license.html 10 * http://www.gnu.org/copyleft/gpl.html 11 */ 12 13/dts-v1/; 14#include "imx28.dtsi" 15#include <dt-bindings/gpio/gpio.h> 16 17/ { 18 model = "Ka-Ro electronics TX28 module"; 19 compatible = "karo,tx28", "fsl,imx28"; 20 21 aliases { 22 can0 = &can0; 23 can1 = &can1; 24 display = &display0; 25 ds1339 = &ds1339; 26 gpio5 = &gpio5; 27 lcdif = &lcdif; 28 lcdif_23bit_pins = &tx28_lcdif_23bit_pins; 29 lcdif_24bit_pins = &lcdif_24bit_pins_a; 30 reg_can_xcvr = ®_can_xcvr; 31 spi_gpio = &spi_gpio; 32 spi_mxs = &ssp3; 33 stk5led = &user_led; 34 usbotg = &usb0; 35 }; 36 37 memory { 38 reg = <0 0>; /* will be filled in by U-Boot */ 39 }; 40 41 onewire { 42 compatible = "w1-gpio"; 43 gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>; 44 status = "disabled"; 45 }; 46 47 regulators { 48 compatible = "simple-bus"; 49 #address-cells = <1>; 50 #size-cells = <0>; 51 52 reg_usb0_vbus: regulator@0 { 53 compatible = "regulator-fixed"; 54 reg = <0>; 55 regulator-name = "usb0_vbus"; 56 regulator-min-microvolt = <5000000>; 57 regulator-max-microvolt = <5000000>; 58 gpio = <&gpio0 18 GPIO_ACTIVE_HIGH>; 59 enable-active-high; 60 }; 61 62 reg_usb1_vbus: regulator@1 { 63 compatible = "regulator-fixed"; 64 reg = <1>; 65 regulator-name = "usb1_vbus"; 66 regulator-min-microvolt = <5000000>; 67 regulator-max-microvolt = <5000000>; 68 gpio = <&gpio3 27 GPIO_ACTIVE_HIGH>; 69 enable-active-high; 70 }; 71 72 reg_2p5v: regulator@2 { 73 compatible = "regulator-fixed"; 74 reg = <2>; 75 regulator-name = "2P5V"; 76 regulator-min-microvolt = <2500000>; 77 regulator-max-microvolt = <2500000>; 78 regulator-always-on; 79 }; 80 81 reg_3p3v: regulator@3 { 82 compatible = "regulator-fixed"; 83 reg = <3>; 84 regulator-name = "3P3V"; 85 regulator-min-microvolt = <3300000>; 86 regulator-max-microvolt = <3300000>; 87 regulator-always-on; 88 }; 89 90 reg_can_xcvr: regulator@4 { 91 compatible = "regulator-fixed"; 92 reg = <4>; 93 regulator-name = "CAN XCVR"; 94 regulator-min-microvolt = <3300000>; 95 regulator-max-microvolt = <3300000>; 96 gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; 97 pinctrl-names = "default"; 98 pinctrl-0 = <&tx28_flexcan_xcvr_pins>; 99 }; 100 101 reg_lcd: regulator@5 { 102 compatible = "regulator-fixed"; 103 reg = <5>; 104 regulator-name = "LCD POWER"; 105 regulator-min-microvolt = <3300000>; 106 regulator-max-microvolt = <3300000>; 107 gpio = <&gpio1 31 GPIO_ACTIVE_HIGH>; 108 enable-active-high; 109 }; 110 111 reg_lcd_reset: regulator@6 { 112 compatible = "regulator-fixed"; 113 reg = <6>; 114 regulator-name = "LCD RESET"; 115 regulator-min-microvolt = <3300000>; 116 regulator-max-microvolt = <3300000>; 117 gpio = <&gpio3 30 GPIO_ACTIVE_HIGH>; 118 startup-delay-us = <300000>; 119 enable-active-high; 120 regulator-always-on; 121 regulator-boot-on; 122 }; 123 }; 124 125 clocks { 126 #address-cells = <1>; 127 #size-cells = <0>; 128 mclk: clock@0 { 129 compatible = "fixed-clock"; 130 reg = <0>; 131 #clock-cells = <0>; 132 clock-frequency = <27000000>; 133 }; 134 }; 135 136 sound { 137 compatible = "fsl,imx28-tx28-sgtl5000", 138 "fsl,mxs-audio-sgtl5000"; 139 model = "imx28-tx28-sgtl5000"; 140 saif-controllers = <&saif0 &saif1>; 141 audio-codec = <&sgtl5000>; 142 }; 143 144 leds { 145 compatible = "gpio-leds"; 146 147 user_led: user { 148 label = "Heartbeat"; 149 gpios = <&gpio4 10 GPIO_ACTIVE_HIGH>; 150 linux,default-trigger = "heartbeat"; 151 }; 152 }; 153 154 backlight { 155 compatible = "pwm-backlight"; 156 pwms = <&pwm 0 500000>; 157 /* 158 * a silly way to create a 1:1 relationship between the 159 * PWM value and the actual duty cycle 160 */ 161 brightness-levels = < 0 1 2 3 4 5 6 7 8 9 162 10 11 12 13 14 15 16 17 18 19 163 20 21 22 23 24 25 26 27 28 29 164 30 31 32 33 34 35 36 37 38 39 165 40 41 42 43 44 45 46 47 48 49 166 50 51 52 53 54 55 56 57 58 59 167 60 61 62 63 64 65 66 67 68 69 168 70 71 72 73 74 75 76 77 78 79 169 80 81 82 83 84 85 86 87 88 89 170 90 91 92 93 94 95 96 97 98 99 171 100>; 172 default-brightness-level = <50>; 173 }; 174 175 matrix_keypad: matrix-keypad@0 { 176 compatible = "gpio-matrix-keypad"; 177 col-gpios = < 178 &gpio5 0 GPIO_ACTIVE_HIGH 179 &gpio5 1 GPIO_ACTIVE_HIGH 180 &gpio5 2 GPIO_ACTIVE_HIGH 181 &gpio5 3 GPIO_ACTIVE_HIGH 182 >; 183 row-gpios = < 184 &gpio5 4 GPIO_ACTIVE_HIGH 185 &gpio5 5 GPIO_ACTIVE_HIGH 186 &gpio5 6 GPIO_ACTIVE_HIGH 187 &gpio5 7 GPIO_ACTIVE_HIGH 188 >; 189 /* sample keymap */ 190 linux,keymap = < 191 0x00000074 /* row 0, col 0, KEY_POWER */ 192 0x00010052 /* row 0, col 1, KEY_KP0 */ 193 0x0002004f /* row 0, col 2, KEY_KP1 */ 194 0x00030050 /* row 0, col 3, KEY_KP2 */ 195 0x01000051 /* row 1, col 0, KEY_KP3 */ 196 0x0101004b /* row 1, col 1, KEY_KP4 */ 197 0x0102004c /* row 1, col 2, KEY_KP5 */ 198 0x0103004d /* row 1, col 3, KEY_KP6 */ 199 0x02000047 /* row 2, col 0, KEY_KP7 */ 200 0x02010048 /* row 2, col 1, KEY_KP8 */ 201 0x02020049 /* row 2, col 2, KEY_KP9 */ 202 >; 203 gpio-activelow; 204 linux,wakeup; 205 debounce-delay-ms = <100>; 206 col-scan-delay-us = <5000>; 207 linux,no-autorepeat; 208 }; 209 210 spi_gpio: spi-gpio { 211 compatible = "spi-gpio"; 212 #address-cells = <1>; 213 #size-cells = <0>; 214 pinctrl-names = "default"; 215 pinctrl-0 = <&tx28_spi_gpio_pins>; 216 217 gpio-sck = <&gpio2 24 GPIO_ACTIVE_HIGH>; 218 gpio-mosi = <&gpio2 25 GPIO_ACTIVE_HIGH>; 219 gpio-miso = <&gpio2 26 GPIO_ACTIVE_HIGH>; 220 num-chipselects = <3>; 221 cs-gpios = < 222 &gpio2 27 GPIO_ACTIVE_LOW 223 &gpio3 8 GPIO_ACTIVE_LOW 224 &gpio3 9 GPIO_ACTIVE_LOW 225 >; 226 /* enable this and disable ssp3 below, if you need full duplex SPI transfer */ 227 status = "disabled"; 228 229 spi@0 { 230 compatible = "spidev"; 231 reg = <0>; 232 spi-max-frequency = <57600000>; 233 }; 234 235 spi@1 { 236 compatible = "spidev"; 237 reg = <1>; 238 spi-max-frequency = <57600000>; 239 }; 240 241 spi@2 { 242 compatible = "spidev"; 243 reg = <2>; 244 spi-max-frequency = <57600000>; 245 }; 246 }; 247}; 248 249/* 2nd TX-Std UART - (A)UART1 */ 250&auart1 { 251 pinctrl-names = "default"; 252 pinctrl-0 = <&auart1_pins_a>; 253 status = "okay"; 254}; 255 256/* 3rd TX-Std UART - (A)UART3 */ 257&auart3 { 258 pinctrl-names = "default"; 259 pinctrl-0 = <&auart3_pins_a>; 260 status = "okay"; 261}; 262 263&can0 { 264 pinctrl-names = "default"; 265 pinctrl-0 = <&can0_pins_a>; 266 xceiver-supply = <®_can_xcvr>; 267 status = "okay"; 268}; 269 270&can1 { 271 pinctrl-names = "default"; 272 pinctrl-0 = <&can1_pins_a>; 273 xceiver-supply = <®_can_xcvr>; 274 status = "okay"; 275}; 276 277&digctl { 278 status = "okay"; 279}; 280 281/* 1st TX-Std UART - (D)UART */ 282&duart { 283 pinctrl-names = "default"; 284 pinctrl-0 = <&duart_4pins_a>; 285 status = "okay"; 286}; 287 288&gpmi { 289 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>; 290 nand-on-flash-bbt; 291 status = "okay"; 292}; 293 294&i2c0 { 295 pinctrl-names = "default"; 296 pinctrl-0 = <&i2c0_pins_a>; 297 clock-frequency = <400000>; 298 status = "okay"; 299 300 sgtl5000: sgtl5000@0a { 301 compatible = "fsl,sgtl5000"; 302 reg = <0x0a>; 303 VDDA-supply = <®_2p5v>; 304 VDDIO-supply = <®_3p3v>; 305 clocks = <&mclk>; 306 }; 307 308 gpio5: pca953x@20 { 309 compatible = "nxp,pca9554"; 310 reg = <0x20>; 311 pinctrl-names = "default"; 312 pinctrl-0 = <&tx28_pca9554_pins>; 313 interrupt-parent = <&gpio3>; 314 interrupts = <28 0>; 315 gpio-controller; 316 #gpio-cells = <2>; 317 interrupt-controller; 318 #interrupt-cells = <2>; 319 }; 320 321 polytouch: edt-ft5x06@38 { 322 compatible = "edt,edt-ft5x06"; 323 reg = <0x38>; 324 pinctrl-names = "default"; 325 pinctrl-0 = <&tx28_edt_ft5x06_pins>; 326 interrupt-parent = <&gpio2>; 327 interrupts = <5 0>; 328 reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>; 329 wake-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>; 330 }; 331 332 touchscreen: tsc2007@48 { 333 compatible = "ti,tsc2007"; 334 reg = <0x48>; 335 pinctrl-names = "default"; 336 pinctrl-0 = <&tx28_tsc2007_pins>; 337 interrupt-parent = <&gpio3>; 338 interrupts = <20 0>; 339 pendown-gpio = <&gpio3 20 GPIO_ACTIVE_LOW>; 340 ti,x-plate-ohms = /bits/ 16 <660>; 341 }; 342 343 ds1339: rtc@68 { 344 compatible = "mxim,ds1339"; 345 reg = <0x68>; 346 }; 347}; 348 349&lcdif { 350 pinctrl-names = "default"; 351 pinctrl-0 = <&lcdif_24bit_pins_a &lcdif_sync_pins_a &tx28_lcdif_ctrl_pins>; 352 lcd-supply = <®_lcd>; 353 display = <&display0>; 354 status = "okay"; 355 356 display0: display0 { 357 bits-per-pixel = <32>; 358 bus-width = <24>; 359 display-timings { 360 native-mode = <&timing5>; 361 timing0: timing0 { 362 panel-name = "VGA"; 363 clock-frequency = <25175000>; 364 hactive = <640>; 365 vactive = <480>; 366 hback-porch = <48>; 367 hsync-len = <96>; 368 hfront-porch = <16>; 369 vback-porch = <33>; 370 vsync-len = <2>; 371 vfront-porch = <10>; 372 hsync-active = <0>; 373 vsync-active = <0>; 374 de-active = <1>; 375 pixelclk-active = <1>; 376 }; 377 378 timing1: timing1 { 379 panel-name = "ETV570"; 380 clock-frequency = <25175000>; 381 hactive = <640>; 382 vactive = <480>; 383 hback-porch = <114>; 384 hsync-len = <30>; 385 hfront-porch = <16>; 386 vback-porch = <32>; 387 vsync-len = <3>; 388 vfront-porch = <10>; 389 hsync-active = <0>; 390 vsync-active = <0>; 391 de-active = <1>; 392 pixelclk-active = <1>; 393 }; 394 395 timing2: timing2 { 396 panel-name = "ET0350"; 397 clock-frequency = <6500000>; 398 hactive = <320>; 399 vactive = <240>; 400 hback-porch = <34>; 401 hsync-len = <34>; 402 hfront-porch = <20>; 403 vback-porch = <15>; 404 vsync-len = <3>; 405 vfront-porch = <4>; 406 hsync-active = <0>; 407 vsync-active = <0>; 408 de-active = <1>; 409 pixelclk-active = <1>; 410 }; 411 412 timing3: timing3 { 413 panel-name = "ET0430"; 414 clock-frequency = <9000000>; 415 hactive = <480>; 416 vactive = <272>; 417 hback-porch = <2>; 418 hsync-len = <41>; 419 hfront-porch = <2>; 420 vback-porch = <2>; 421 vsync-len = <10>; 422 vfront-porch = <2>; 423 hsync-active = <0>; 424 vsync-active = <0>; 425 de-active = <1>; 426 pixelclk-active = <1>; 427 }; 428 429 timing4: timing4 { 430 panel-name = "ET0500", "ET0700"; 431 clock-frequency = <33260000>; 432 hactive = <800>; 433 vactive = <480>; 434 hback-porch = <88>; 435 hsync-len = <128>; 436 hfront-porch = <40>; 437 vback-porch = <33>; 438 vsync-len = <2>; 439 vfront-porch = <10>; 440 hsync-active = <0>; 441 vsync-active = <0>; 442 de-active = <1>; 443 pixelclk-active = <1>; 444 }; 445 446 timing5: timing5 { 447 panel-name = "ETQ570"; 448 clock-frequency = <6400000>; 449 hactive = <320>; 450 vactive = <240>; 451 hback-porch = <38>; 452 hsync-len = <30>; 453 hfront-porch = <30>; 454 vback-porch = <16>; 455 vsync-len = <3>; 456 vfront-porch = <4>; 457 hsync-active = <0>; 458 vsync-active = <0>; 459 de-active = <1>; 460 pixelclk-active = <1>; 461 }; 462 }; 463 }; 464}; 465 466&lradc { 467 fsl,lradc-touchscreen-wires = <4>; 468 status = "okay"; 469}; 470 471&mac0 { 472 phy-mode = "rmii"; 473 pinctrl-names = "default", "gpio_mode"; 474 pinctrl-0 = <&mac0_pins_a>; 475 pinctrl-1 = <&tx28_mac0_pins_gpio>; 476 status = "okay"; 477}; 478 479&mac1 { 480 phy-mode = "rmii"; 481 pinctrl-names = "default"; 482 pinctrl-0 = <&mac1_pins_a>; 483 /* not enabled by default */ 484}; 485 486&mxs_rtc { 487 status = "okay"; 488}; 489 490&ocotp { 491 status = "okay"; 492}; 493 494&pwm { 495 pinctrl-names = "default"; 496 pinctrl-0 = <&pwm0_pins_a>; 497 status = "okay"; 498}; 499 500&pinctrl { 501 pinctrl-names = "default"; 502 pinctrl-0 = <&hog_pins_a>; 503 504 hog_pins_a: hog@0 { 505 reg = <0>; 506 fsl,pinmux-ids = < 507 MX28_PAD_ENET0_RXD3__GPIO_4_10 /* module LED */ 508 >; 509 fsl,drive-strength = <MXS_DRIVE_4mA>; 510 fsl,voltage = <MXS_VOLTAGE_HIGH>; 511 fsl,pull-up = <MXS_PULL_DISABLE>; 512 }; 513 514 tx28_edt_ft5x06_pins: tx28-edt-ft5x06-pins { 515 fsl,pinmux-ids = < 516 MX28_PAD_SSP0_DATA6__GPIO_2_6 /* RESET */ 517 MX28_PAD_SSP0_DATA5__GPIO_2_5 /* IRQ */ 518 MX28_PAD_ENET0_RXD2__GPIO_4_9 /* WAKE */ 519 >; 520 fsl,drive-strength = <MXS_DRIVE_4mA>; 521 fsl,voltage = <MXS_VOLTAGE_HIGH>; 522 fsl,pull-up = <MXS_PULL_DISABLE>; 523 }; 524 525 tx28_flexcan_xcvr_pins: tx28-flexcan-xcvr-pins { 526 fsl,pinmux-ids = < 527 MX28_PAD_LCD_D00__GPIO_1_0 528 >; 529 fsl,drive-strength = <MXS_DRIVE_4mA>; 530 fsl,voltage = <MXS_VOLTAGE_HIGH>; 531 fsl,pull-up = <MXS_PULL_DISABLE>; 532 }; 533 534 tx28_lcdif_23bit_pins: tx28-lcdif-23bit { 535 fsl,pinmux-ids = < 536 /* LCD_D00 may be used as Flexcan Transceiver Enable on STK5-V5 */ 537 MX28_PAD_LCD_D01__LCD_D1 538 MX28_PAD_LCD_D02__LCD_D2 539 MX28_PAD_LCD_D03__LCD_D3 540 MX28_PAD_LCD_D04__LCD_D4 541 MX28_PAD_LCD_D05__LCD_D5 542 MX28_PAD_LCD_D06__LCD_D6 543 MX28_PAD_LCD_D07__LCD_D7 544 MX28_PAD_LCD_D08__LCD_D8 545 MX28_PAD_LCD_D09__LCD_D9 546 MX28_PAD_LCD_D10__LCD_D10 547 MX28_PAD_LCD_D11__LCD_D11 548 MX28_PAD_LCD_D12__LCD_D12 549 MX28_PAD_LCD_D13__LCD_D13 550 MX28_PAD_LCD_D14__LCD_D14 551 MX28_PAD_LCD_D15__LCD_D15 552 MX28_PAD_LCD_D16__LCD_D16 553 MX28_PAD_LCD_D17__LCD_D17 554 MX28_PAD_LCD_D18__LCD_D18 555 MX28_PAD_LCD_D19__LCD_D19 556 MX28_PAD_LCD_D20__LCD_D20 557 MX28_PAD_LCD_D21__LCD_D21 558 MX28_PAD_LCD_D22__LCD_D22 559 MX28_PAD_LCD_D23__LCD_D23 560 >; 561 fsl,drive-strength = <MXS_DRIVE_4mA>; 562 fsl,voltage = <MXS_VOLTAGE_HIGH>; 563 fsl,pull-up = <MXS_PULL_DISABLE>; 564 }; 565 566 tx28_lcdif_ctrl_pins: tx28-lcdif-ctrl { 567 fsl,pinmux-ids = < 568 MX28_PAD_LCD_ENABLE__GPIO_1_31 /* Enable */ 569 MX28_PAD_LCD_RESET__GPIO_3_30 /* Reset */ 570 >; 571 fsl,drive-strength = <MXS_DRIVE_4mA>; 572 fsl,voltage = <MXS_VOLTAGE_HIGH>; 573 fsl,pull-up = <MXS_PULL_DISABLE>; 574 }; 575 576 tx28_mac0_pins_gpio: tx28-mac0-gpio-pins { 577 fsl,pinmux-ids = < 578 MX28_PAD_ENET0_MDC__GPIO_4_0 579 MX28_PAD_ENET0_MDIO__GPIO_4_1 580 MX28_PAD_ENET0_RX_EN__GPIO_4_2 581 MX28_PAD_ENET0_RXD0__GPIO_4_3 582 MX28_PAD_ENET0_RXD1__GPIO_4_4 583 MX28_PAD_ENET0_TX_EN__GPIO_4_6 584 MX28_PAD_ENET0_TXD0__GPIO_4_7 585 MX28_PAD_ENET0_TXD1__GPIO_4_8 586 MX28_PAD_ENET_CLK__GPIO_4_16 587 >; 588 fsl,drive-strength = <MXS_DRIVE_4mA>; 589 fsl,voltage = <MXS_VOLTAGE_HIGH>; 590 fsl,pull-up = <MXS_PULL_DISABLE>; 591 }; 592 593 tx28_pca9554_pins: tx28-pca9554-pins { 594 fsl,pinmux-ids = < 595 MX28_PAD_PWM3__GPIO_3_28 596 >; 597 fsl,drive-strength = <MXS_DRIVE_4mA>; 598 fsl,voltage = <MXS_VOLTAGE_HIGH>; 599 fsl,pull-up = <MXS_PULL_DISABLE>; 600 }; 601 602 tx28_spi_gpio_pins: spi-gpiogrp { 603 fsl,pinmux-ids = < 604 MX28_PAD_AUART2_RX__GPIO_3_8 605 MX28_PAD_AUART2_TX__GPIO_3_9 606 MX28_PAD_SSP3_SCK__GPIO_2_24 607 MX28_PAD_SSP3_MOSI__GPIO_2_25 608 MX28_PAD_SSP3_MISO__GPIO_2_26 609 MX28_PAD_SSP3_SS0__GPIO_2_27 610 >; 611 fsl,drive-strength = <MXS_DRIVE_8mA>; 612 fsl,voltage = <MXS_VOLTAGE_HIGH>; 613 fsl,pull-up = <MXS_PULL_DISABLE>; 614 }; 615 616 tx28_tsc2007_pins: tx28-tsc2007-pins { 617 fsl,pinmux-ids = < 618 MX28_PAD_SAIF0_MCLK__GPIO_3_20 /* TSC2007 IRQ */ 619 >; 620 fsl,drive-strength = <MXS_DRIVE_4mA>; 621 fsl,voltage = <MXS_VOLTAGE_HIGH>; 622 fsl,pull-up = <MXS_PULL_DISABLE>; 623 }; 624 625 626 tx28_usbphy0_pins: tx28-usbphy0-pins { 627 fsl,pinmux-ids = < 628 MX28_PAD_GPMI_CE2N__GPIO_0_18 /* USBOTG_VBUSEN */ 629 MX28_PAD_GPMI_CE3N__GPIO_0_19 /* USBOTH_OC */ 630 >; 631 fsl,drive-strength = <MXS_DRIVE_12mA>; 632 fsl,voltage = <MXS_VOLTAGE_HIGH>; 633 fsl,pull-up = <MXS_PULL_DISABLE>; 634 }; 635 636 tx28_usbphy1_pins: tx28-usbphy1-pins { 637 fsl,pinmux-ids = < 638 MX28_PAD_SPDIF__GPIO_3_27 /* USBH_VBUSEN */ 639 MX28_PAD_JTAG_RTCK__GPIO_4_20 /* USBH_OC */ 640 >; 641 fsl,drive-strength = <MXS_DRIVE_12mA>; 642 fsl,voltage = <MXS_VOLTAGE_HIGH>; 643 fsl,pull-up = <MXS_PULL_DISABLE>; 644 }; 645}; 646 647&saif0 { 648 pinctrl-names = "default"; 649 pinctrl-0 = <&saif0_pins_b>; 650 fsl,saif-master; 651 status = "okay"; 652}; 653 654&saif1 { 655 pinctrl-names = "default"; 656 pinctrl-0 = <&saif1_pins_a>; 657 status = "okay"; 658}; 659 660&ssp0 { 661 compatible = "fsl,imx28-mmc"; 662 pinctrl-names = "default", "special"; 663 pinctrl-0 = <&mmc0_4bit_pins_a 664 &mmc0_cd_cfg 665 &mmc0_sck_cfg>; 666 bus-width = <4>; 667 status = "okay"; 668}; 669 670&ssp3 { 671 compatible = "fsl,imx28-spi"; 672 pinctrl-names = "default"; 673 pinctrl-0 = <&spi3_pins_a>; 674 clock-frequency = <57600000>; 675 status = "okay"; 676 677 spi@0 { 678 compatible = "spidev"; 679 reg = <0>; 680 spi-max-frequency = <57600000>; 681 }; 682 683 spi@1 { 684 compatible = "spidev"; 685 reg = <1>; 686 spi-max-frequency = <57600000>; 687 }; 688 689 spi@2 { 690 compatible = "spidev"; 691 reg = <2>; 692 spi-max-frequency = <57600000>; 693 }; 694}; 695 696&usb0 { 697 vbus-supply = <®_usb0_vbus>; 698 disable-over-current; 699 dr_mode = "peripheral"; 700 status = "okay"; 701}; 702 703&usb1 { 704 vbus-supply = <®_usb1_vbus>; 705 disable-over-current; 706 dr_mode = "host"; 707 status = "okay"; 708}; 709 710&usbphy0 { 711 pinctrl-names = "default"; 712 pinctrl-0 = <&tx28_usbphy0_pins>; 713 phy_type = "utmi"; 714 status = "okay"; 715}; 716 717&usbphy1 { 718 pinctrl-names = "default"; 719 pinctrl-0 = <&tx28_usbphy1_pins>; 720 phy_type = "utmi"; 721 status = "okay"; 722}; 723