1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/ 4 * Copyright (C) 2018 Robert Bosch Power Tools GmbH 5 */ 6/dts-v1/; 7 8#include "am33xx.dtsi" 9#include <dt-bindings/input/input.h> 10#include <dt-bindings/interrupt-controller/irq.h> 11 12/ { 13 model = "Bosch AM335x Guardian"; 14 compatible = "bosch,am335x-guardian", "ti,am33xx"; 15 16 chosen { 17 stdout-path = &uart0; 18 tick-timer = &timer2; 19 }; 20 21 cpus { 22 cpu@0 { 23 cpu0-supply = <&dcdc2_reg>; 24 }; 25 }; 26 27 memory@80000000 { 28 device_type = "memory"; 29 reg = <0x80000000 0x10000000>; /* 256 MB */ 30 }; 31 32 guardian_buttons: gpio-keys { 33 pinctrl-names = "default"; 34 pinctrl-0 = <&guardian_button_pins>; 35 compatible = "gpio-keys"; 36 37 select-button { 38 label = "guardian-select-button"; 39 linux,code = <KEY_5>; 40 gpios = <&gpio1 31 GPIO_ACTIVE_LOW>; 41 wakeup-source; 42 }; 43 44 power-button { 45 label = "guardian-power-button"; 46 linux,code = <KEY_POWER>; 47 gpios = <&gpio2 21 GPIO_ACTIVE_LOW>; 48 wakeup-source; 49 }; 50 }; 51 52 guardian_leds: gpio-leds { 53 pinctrl-names = "default"; 54 pinctrl-0 = <&guardian_led_pins>; 55 compatible = "gpio-leds"; 56 57 life-led { 58 label = "guardian:life-led"; 59 gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>; 60 linux,default-trigger = "heartbeat"; 61 default-state = "off"; 62 }; 63 }; 64 65 gpio-poweroff { 66 compatible = "gpio-poweroff"; 67 gpios = <&gpio0 1 GPIO_ACTIVE_LOW>; 68 }; 69 70 panel { 71 compatible = "ti,tilcdc,panel"; 72 pinctrl-names = "default", "sleep"; 73 pinctrl-0 = <&lcd_pins_default &lcd_disen_pins>; 74 pinctrl-1 = <&lcd_pins_sleep>; 75 76 display-timings { 77 320x240 { 78 hactive = <320>; 79 vactive = <240>; 80 hback-porch = <68>; 81 hfront-porch = <20>; 82 hsync-len = <1>; 83 vback-porch = <18>; 84 vfront-porch = <4>; 85 vsync-len = <1>; 86 clock-frequency = <9000000>; 87 hsync-active = <0>; 88 vsync-active = <0>; 89 }; 90 }; 91 panel-info { 92 ac-bias = <255>; 93 ac-bias-intrpt = <0>; 94 dma-burst-sz = <16>; 95 bpp = <24>; 96 bus-width = <16>; 97 fdd = <0x80>; 98 sync-edge = <0>; 99 sync-ctrl = <1>; 100 raster-order = <0>; 101 fifo-th = <0>; 102 }; 103 104 }; 105 106 guardian_beeper: dmtimer-pwm@7 { 107 compatible = "ti,omap-dmtimer-pwm"; 108 ti,timers = <&timer7>; 109 pinctrl-names = "default"; 110 pinctrl-0 = <&guardian_beeper_pins>; 111 ti,clock-source = <0x01>; 112 }; 113 114 vmmcsd_fixed: fixedregulator0 { 115 compatible = "regulator-fixed"; 116 regulator-name = "vmmcsd_fixed"; 117 regulator-min-microvolt = <3300000>; 118 regulator-max-microvolt = <3300000>; 119 }; 120 121 mt_keypad: mt_keypad@0 { 122 compatible = "gpio-mt-keypad"; 123 debounce-delay-ms = <10>; 124 col-scan-delay-us = <2>; 125 keypad,num-lines = <5>; 126 linux,no-autorepeat; 127 gpio-activelow; 128 line-gpios = < 129 &gpio1 24 GPIO_ACTIVE_LOW /*gpio_56*/ 130 &gpio1 23 GPIO_ACTIVE_LOW /*gpio_55*/ 131 &gpio1 22 GPIO_ACTIVE_LOW /*gpio_54*/ 132 &gpio1 20 GPIO_ACTIVE_LOW /*gpio_52*/ 133 &gpio1 16 GPIO_ACTIVE_LOW /*gpio_48*/ 134 >; 135 }; 136}; 137 138&elm { 139 status = "okay"; 140}; 141 142&gpmc { 143 pinctrl-names = "default"; 144 pinctrl-0 = <&nandflash_pins>; 145 ranges = <0 0 0x08000000 0x1000000>; /* CS0: 16MB for NAND */ 146 status = "okay"; 147 148 nand@0,0 { 149 compatible = "ti,omap2-nand"; 150 reg = <0 0 4>; /* CS0, offset 0, IO size 4 */ 151 interrupt-parent = <&gpmc>; 152 interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */ 153 <1 IRQ_TYPE_NONE>; /* termcount */ 154 rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 */ 155 ti,nand-xfer-type = "prefetch-dma"; 156 ti,nand-ecc-opt = "bch16"; 157 ti,elm-id = <&elm>; 158 nand-bus-width = <8>; 159 gpmc,device-width = <1>; 160 gpmc,sync-clk-ps = <0>; 161 gpmc,cs-on-ns = <0>; 162 gpmc,cs-rd-off-ns = <30>; 163 gpmc,cs-wr-off-ns = <30>; 164 gpmc,adv-on-ns = <0>; 165 gpmc,adv-rd-off-ns = <30>; 166 gpmc,adv-wr-off-ns = <30>; 167 gpmc,we-on-ns = <0>; 168 gpmc,we-off-ns = <15>; 169 gpmc,oe-on-ns = <1>; 170 gpmc,oe-off-ns = <15>; 171 gpmc,access-ns = <30>; 172 gpmc,rd-cycle-ns = <30>; 173 gpmc,wr-cycle-ns = <30>; 174 gpmc,bus-turnaround-ns = <0>; 175 gpmc,cycle2cycle-delay-ns = <0>; 176 gpmc,clk-activation-ns = <0>; 177 gpmc,wr-access-ns = <0>; 178 gpmc,wr-data-mux-bus-ns = <0>; 179 180 /* 181 * MTD partition table 182 * 183 * All SPL-* partitions are sized to minimal length which can 184 * be independently programmable. For NAND flash this is equal 185 * to size of erase-block. 186 */ 187 #address-cells = <1>; 188 #size-cells = <1>; 189 190 partition@0 { 191 label = "SPL"; 192 reg = <0x0 0x40000>; 193 }; 194 195 partition@1 { 196 label = "SPL.backup1"; 197 reg = <0x40000 0x40000>; 198 }; 199 200 partition@2 { 201 label = "SPL.backup2"; 202 reg = <0x80000 0x40000>; 203 }; 204 205 partition@3 { 206 label = "SPL.backup3"; 207 reg = <0xc0000 0x40000>; 208 }; 209 210 partition@4 { 211 label = "u-boot"; 212 reg = <0x100000 0x100000>; 213 }; 214 215 partition@5 { 216 label = "u-boot.backup1"; 217 reg = <0x200000 0x100000>; 218 }; 219 220 partition@6 { 221 label = "u-boot-2"; 222 reg = <0x300000 0x100000>; 223 }; 224 225 partition@7 { 226 label = "u-boot-2.backup1"; 227 reg = <0x400000 0x100000>; 228 }; 229 230 partition@8 { 231 label = "u-boot-env"; 232 reg = <0x500000 0x40000>; 233 }; 234 235 partition@9 { 236 label = "u-boot-env.backup1"; 237 reg = <0x540000 0x40000>; 238 }; 239 240 partition@10 { 241 label = "splash-screen"; 242 reg = <0x580000 0x40000>; 243 }; 244 245 partition@11 { 246 label = "UBI"; 247 reg = <0x5c0000 0x1fa40000>; 248 }; 249 }; 250}; 251 252&i2c0 { 253 pinctrl-names = "default"; 254 pinctrl-0 = <&i2c0_pins>; 255 clock-frequency = <400000>; 256 status = "okay"; 257 258 tps: tps@24 { 259 reg = <0x24>; 260 }; 261}; 262 263&lcdc { 264 blue-and-red-wiring = "crossed"; 265 status = "okay"; 266 port { 267 lcdc_0: endpoint@0 { 268 remote-endpoint = <0>; 269 }; 270 }; 271}; 272 273&mmc1 { 274 bus-width = <0x4>; 275 pinctrl-names = "default"; 276 pinctrl-0 = <&mmc1_pins>; 277 cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; 278 vmmc-supply = <&vmmcsd_fixed>; 279 status = "okay"; 280}; 281 282&rtc { 283 clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>; 284 clock-names = "ext-clk", "int-clk"; 285}; 286 287&spi0 { 288 ti,pindir-d0-out-d1-in; 289 pinctrl-names = "default"; 290 pinctrl-0 = <&spi0_pins>; 291 status = "okay"; 292}; 293 294#include "tps65217.dtsi" 295 296&tps { 297 /* 298 * Configure pmic to enter OFF-state instead of SLEEP-state ("RTC-only 299 * mode") at poweroff. Most BeagleBone versions do not support RTC-only 300 * mode and risk hardware damage if this mode is entered. 301 * 302 * For details, see linux-omap mailing list May 2015 thread 303 * [PATCH] ARM: dts: am335x-bone* enable pmic-shutdown-controller 304 * In particular, messages: 305 * http://www.spinics.net/lists/linux-omap/msg118585.html 306 * http://www.spinics.net/lists/linux-omap/msg118615.html 307 * 308 * You can override this later with 309 * &tps { /delete-property/ ti,pmic-shutdown-controller; } 310 * if you want to use RTC-only mode and made sure you are not affected 311 * by the hardware problems. (Tip: double-check by performing a current 312 * measurement after shutdown: it should be less than 1 mA.) 313 */ 314 ti,pmic-shutdown-controller; 315 interrupt-parent = <&intc>; 316 interrupts = <7>; /* NMI */ 317 318 backlight { 319 isel = <1>; /* 1 - ISET1, 2 ISET2 */ 320 fdim = <500>; /* TPS65217_BL_FDIM_500HZ */ 321 default-brightness = <50>; 322 /* 1(on) - enable current sink, while initialization */ 323 /* 0(off) - disable current sink, while initialization */ 324 isink-en = <1>; 325 }; 326 327 regulators { 328 dcdc1_reg: regulator@0 { 329 regulator-name = "vdds_dpr"; 330 regulator-always-on; 331 }; 332 333 dcdc2_reg: regulator@1 { 334 /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */ 335 regulator-name = "vdd_mpu"; 336 regulator-min-microvolt = <925000>; 337 regulator-max-microvolt = <1351500>; 338 regulator-boot-on; 339 regulator-always-on; 340 }; 341 342 dcdc3_reg: regulator@2 { 343 /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */ 344 regulator-name = "vdd_core"; 345 regulator-min-microvolt = <925000>; 346 regulator-max-microvolt = <1150000>; 347 regulator-boot-on; 348 regulator-always-on; 349 }; 350 351 ldo1_reg: regulator@3 { 352 regulator-name = "vio,vrtc,vdds"; 353 regulator-always-on; 354 }; 355 356 ldo2_reg: regulator@4 { 357 regulator-name = "vdd_3v3aux"; 358 regulator-always-on; 359 }; 360 361 ldo3_reg: regulator@5 { 362 regulator-name = "vdd_1v8"; 363 regulator-min-microvolt = <1800000>; 364 regulator-max-microvolt = <1800000>; 365 regulator-always-on; 366 }; 367 368 ldo4_reg: regulator@6 { 369 regulator-name = "vdd_3v3a"; 370 regulator-always-on; 371 }; 372 }; 373}; 374 375&tscadc { 376 status = "okay"; 377 378 adc { 379 ti,adc-channels = <0 1 2 3 4 5 6>; 380 }; 381}; 382 383&gpio0 { 384 gpio-line-names = 385 "", 386 "", 387 "", 388 "", 389 "", 390 "", 391 "", 392 "", 393 "", 394 "", 395 "", 396 "", 397 "", 398 "", 399 "", 400 "", 401 "", 402 "", 403 "", 404 "", 405 "", 406 "", 407 "", 408 "", 409 "", 410 "", 411 "", 412 "", 413 "", 414 "MirxWakeup", 415 "", 416 ""; 417}; 418 419&gpio3 { 420 ti,gpio-always-on; 421 ti,no-reset-on-init; 422 gpio-line-names = 423 "", 424 "MirxBtReset", 425 "", 426 "CcVolAdcEn", 427 "MirxBlePause", 428 "", 429 "", 430 "", 431 "", 432 "", 433 "", 434 "", 435 "", 436 "", 437 "AspEn", 438 "", 439 "", 440 "", 441 "", 442 "", 443 "", 444 "BatVolAdcEn", 445 "", 446 "", 447 "", 448 "", 449 "", 450 "", 451 "", 452 "", 453 "", 454 ""; 455}; 456 457&uart0 { 458 pinctrl-names = "default"; 459 pinctrl-0 = <&uart0_pins>; 460 status = "okay"; 461}; 462 463&uart2 { 464 pinctrl-names = "default"; 465 pinctrl-0 = <&uart2_pins>; 466 status = "okay"; 467}; 468 469&usb0 { 470 dr_mode = "peripheral"; 471}; 472 473&usb1 { 474 dr_mode = "host"; 475 /delete-property/dmas; 476 /delete-property/dma-names; 477}; 478 479&am33xx_pinmux { 480 pinctrl-names = "default"; 481 pinctrl-0 = <&clkout2_pin &guardian_interface_pins>; 482 483 clkout2_pin: pinmux_clkout2_pin { 484 pinctrl-single,pins = < 485 /* xdma_event_intr1.clkout2 */ 486 AM33XX_IOPAD(0x9b4, PIN_OUTPUT_PULLDOWN | MUX_MODE3) 487 >; 488 }; 489 490 guardian_interface_pins: pinmux_interface_pins { 491 pinctrl-single,pins = < 492 /* ADC_BATSENSE_EN */ 493 /* (A14) MCASP0_AHCLKx.gpio3[21] */ 494 AM33XX_IOPAD(0x9ac, PIN_OUTPUT_PULLDOWN | MUX_MODE7 ) 495 /* ADC_COINCELL_EN */ 496 /* (J16) MII1_TX_EN.gpio3[3] */ 497 AM33XX_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE7 ) 498 /* ASP_ENABLE */ 499 /* (A13) MCASP0_ACLKx.gpio3[14] */ 500 AM33XX_IOPAD(0x990, PIN_OUTPUT_PULLUP | MUX_MODE7) 501 /* (D16) uart1_rxd.uart1_rxd */ 502 AM33XX_IOPAD(0x980, PIN_INPUT | MUX_MODE7) 503 /* (D15) uart1_txd.uart1_txd */ 504 AM33XX_IOPAD(0x984, PIN_INPUT | MUX_MODE7) 505 /*SWITCH-OFF_3V6*/ 506 /* (M18) gpio0[1] */ 507 AM33XX_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE7) 508 /* MIRACULIX */ 509 /* (H17) gmii1_crs.gpio3[1] */ 510 AM33XX_IOPAD(0x90c, PIN_OUTPUT_PULLDOWN | MUX_MODE7 ) 511 /* (H18) rmii1_refclk.gpio0[29] */ 512 AM33XX_IOPAD(0x944, PIN_OUTPUT_PULLDOWN | MUX_MODE7 ) 513 /* (J18) gmii1_txd3.gpio0[16] */ 514 AM33XX_IOPAD(0x91c, PIN_INPUT | MUX_MODE7 ) 515 /* (J17) gmii1_rxdv.gpio3[4] */ 516 AM33XX_IOPAD(0x918, PIN_OUTPUT_PULLDOWN | MUX_MODE7 ) 517 >; 518 }; 519 520 guardian_beeper_pins: pinmux_dmtimer7_pins { 521 pinctrl-single,pins = < 522 AM33XX_IOPAD(0x968, PIN_OUTPUT | MUX_MODE5) /* (E18) timer7 */ 523 >; 524 }; 525 526 guardian_button_pins: pinmux_guardian_button_pins { 527 pinctrl-single,pins = < 528 AM33XX_IOPAD(0x940, PIN_INPUT | MUX_MODE7) /* (M16) gmii1_rxd0.gpio2[21] */ 529 AM33XX_IOPAD(0x884, PIN_INPUT | MUX_MODE7) /* (V9) gpmc_csn2.gpio1[31] */ 530 >; 531 }; 532 533 534 i2c0_pins: pinmux_i2c0_pins { 535 pinctrl-single,pins = < 536 AM33XX_IOPAD(0x988, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */ 537 AM33XX_IOPAD(0x98c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */ 538 >; 539 }; 540 541 led_bl_pins: gpio_led_bl_pins { 542 pinctrl-single,pins = < 543 /* P9_14, gpmc_a[2].GPIO1[18] (backlight control) */ 544 AM33XX_IOPAD(0x848, PIN_OUTPUT | MUX_MODE7) 545 >; 546 }; 547 548 lcd_disen_pins: pinmux_lcd_disen_pins { 549 pinctrl-single,pins = < 550 /* P9_27, mcasp0_fsr.gpio3[19] (lcd_disen) */ 551 AM33XX_IOPAD(0x9a4, PIN_OUTPUT_PULLUP | SLEWCTRL_SLOW | MUX_MODE7) 552 >; 553 }; 554 555 lcd_pins_default: pinmux_lcd_pins_default { 556 pinctrl-single,pins = < 557 /* (U10) gpmc_ad8.lcd_data23 */ 558 AM33XX_IOPAD(0x820, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 559 /* (T10) gpmc_ad9.lcd_data22 */ 560 AM33XX_IOPAD(0x824, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 561 /* (T11) gpmc_ad10.lcd_data21 */ 562 AM33XX_IOPAD(0x828, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 563 /* (U12) gpmc_ad11.lcd_data20 */ 564 AM33XX_IOPAD(0x82c, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 565 /* (T12) gpmc_ad12.lcd_data19 */ 566 AM33XX_IOPAD(0x830, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 567 /* (R12) gpmc_ad13.lcd_data18 */ 568 AM33XX_IOPAD(0x834, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 569 /* (V13) gpmc_ad14.lcd_data17 */ 570 AM33XX_IOPAD(0x838, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 571 /* (U13) gpmc_ad15.lcd_data16 */ 572 AM33XX_IOPAD(0x83c, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE1) 573 /* lcd_data0.lcd_data0 */ 574 AM33XX_IOPAD(0x8a0, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 575 /* lcd_data1.lcd_data1 */ 576 AM33XX_IOPAD(0x8a4, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 577 /* lcd_data2.lcd_data2 */ 578 AM33XX_IOPAD(0x8a8, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 579 /* lcd_data3.lcd_data3 */ 580 AM33XX_IOPAD(0x8ac, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 581 /* lcd_data4.lcd_data4 */ 582 AM33XX_IOPAD(0x8b0, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 583 /* lcd_data5.lcd_data5 */ 584 AM33XX_IOPAD(0x8b4, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 585 /* lcd_data6.lcd_data6 */ 586 AM33XX_IOPAD(0x8b8, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 587 /* lcd_data7.lcd_data7 */ 588 AM33XX_IOPAD(0x8bc, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 589 /* lcd_data8.lcd_data8 */ 590 AM33XX_IOPAD(0x8c0, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 591 /* lcd_data9.lcd_data9 */ 592 AM33XX_IOPAD(0x8c4, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 593 /* lcd_data10.lcd_data10 */ 594 AM33XX_IOPAD(0x8c8, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 595 /* lcd_data11.lcd_data11 */ 596 AM33XX_IOPAD(0x8cc, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 597 /* lcd_data12.lcd_data12 */ 598 AM33XX_IOPAD(0x8d0, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 599 /* lcd_data13.lcd_data13 */ 600 AM33XX_IOPAD(0x8d4, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 601 /* lcd_data14.lcd_data14 */ 602 AM33XX_IOPAD(0x8d8, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 603 /* lcd_data15.lcd_data15 */ 604 AM33XX_IOPAD(0x8dc, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 605 /* lcd_vsync.lcd_vsync */ 606 AM33XX_IOPAD(0x8e0, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 607 /* lcd_hsync.lcd_hsync */ 608 AM33XX_IOPAD(0x8e4, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 609 /* lcd_pclk.lcd_pclk */ 610 AM33XX_IOPAD(0x8e8, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 611 /* lcd_ac_bias_en.lcd_ac_bias_en */ 612 AM33XX_IOPAD(0x8ec, PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE0) 613 >; 614 }; 615 616 lcd_pins_sleep: pinmux_lcd_pins_sleep { 617 pinctrl-single,pins = < 618 /* lcd_data0.lcd_data0 */ 619 AM33XX_IOPAD(0x8a0, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 620 /* lcd_data1.lcd_data1 */ 621 AM33XX_IOPAD(0x8a4, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 622 /* lcd_data2.lcd_data2 */ 623 AM33XX_IOPAD(0x8a8, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 624 /* lcd_data3.lcd_data3 */ 625 AM33XX_IOPAD(0x8ac, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 626 /* lcd_data4.lcd_data4 */ 627 AM33XX_IOPAD(0x8b0, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 628 /* lcd_data5.lcd_data5 */ 629 AM33XX_IOPAD(0x8b4, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 630 /* lcd_data6.lcd_data6 */ 631 AM33XX_IOPAD(0x8b8, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 632 /* lcd_data7.lcd_data7 */ 633 AM33XX_IOPAD(0x8bc, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 634 /* lcd_data8.lcd_data8 */ 635 AM33XX_IOPAD(0x8c0, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 636 /* lcd_data9.lcd_data9 */ 637 AM33XX_IOPAD(0x8c4, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 638 /* lcd_data10.lcd_data10 */ 639 AM33XX_IOPAD(0x8c8, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 640 /* lcd_data11.lcd_data11 */ 641 AM33XX_IOPAD(0x8cc, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 642 /* lcd_data12.lcd_data12 */ 643 AM33XX_IOPAD(0x8d0, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 644 /* lcd_data13.lcd_data13 */ 645 AM33XX_IOPAD(0x8d4, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 646 /* lcd_data14.lcd_data14 */ 647 AM33XX_IOPAD(0x8d8, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 648 /* lcd_data15.lcd_data15 */ 649 AM33XX_IOPAD(0x8dc, PULL_DISABLE | SLEWCTRL_SLOW | MUX_MODE7) 650 /* lcd_vsync.lcd_vsync */ 651 AM33XX_IOPAD(0x8e0, PIN_INPUT_PULLDOWN | SLEWCTRL_SLOW | MUX_MODE7) 652 /* lcd_hsync.lcd_hsync */ 653 AM33XX_IOPAD(0x8e4, PIN_INPUT_PULLDOWN | SLEWCTRL_SLOW | MUX_MODE7) 654 /* lcd_pclk.lcd_pclk */ 655 AM33XX_IOPAD(0x8e8, PIN_INPUT_PULLDOWN | SLEWCTRL_SLOW | MUX_MODE7) 656 /* lcd_ac_bias_en.lcd_ac_bias_en */ 657 AM33XX_IOPAD(0x8ec, PIN_INPUT_PULLDOWN | SLEWCTRL_SLOW | MUX_MODE7) 658 >; 659 }; 660 661 guardian_led_pins: pinmux_guardian_led_pins { 662 pinctrl-single,pins = < 663 AM33XX_IOPAD(0x868, PIN_OUTPUT | MUX_MODE7) /* (T16) gpmc_a10.gpio1[26] */ 664 >; 665 }; 666 667 mmc1_pins: pinmux_mmc1_pins { 668 pinctrl-single,pins = < 669 AM33XX_IOPAD(0x8f0, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat3.mmc0_dat3 */ 670 AM33XX_IOPAD(0x8f4, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat2.mmc0_dat2 */ 671 AM33XX_IOPAD(0x8f8, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat1.mmc0_dat1 */ 672 AM33XX_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat0.mmc0_dat0 */ 673 AM33XX_IOPAD(0x900, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_clk.mmc0_clk */ 674 AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_cmd.mmc0_cmd */ 675 AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* GPIO0_6 */ 676 >; 677 }; 678 679 spi0_pins: pinmux_spi0_pins { 680 pinctrl-single,pins = < 681 /* SPI0_CLK - spi0_clk.spi */ 682 AM33XX_IOPAD(0x950, PIN_OUTPUT_PULLDOWN | MUX_MODE0) 683 /* SPI0_MOSI - spi0_d0.spi0 */ 684 AM33XX_IOPAD(0x954, PIN_OUTPUT_PULLUP | MUX_MODE0) 685 /* SPI0_MISO - spi0_d1.spi0 */ 686 AM33XX_IOPAD(0x958, PIN_INPUT_PULLUP | MUX_MODE0) 687 /* SPI0_CS0 - spi */ 688 AM33XX_IOPAD(0x95c, PIN_OUTPUT_PULLUP | MUX_MODE0) 689 >; 690 }; 691 692 uart0_pins: pinmux_uart0_pins { 693 pinctrl-single,pins = < 694 /* uart0_rxd.uart0_rxd */ 695 AM33XX_IOPAD(0x970, PIN_INPUT_PULLUP | MUX_MODE0) 696 /* uart0_txd.uart0_txd */ 697 AM33XX_IOPAD(0x974, PIN_OUTPUT_PULLDOWN | MUX_MODE0) 698 >; 699 }; 700 701 uart2_pins: pinmux_uart2_pins { 702 pinctrl-single,pins = < 703 /* K18 uart2_rxd.mirx_txd */ 704 AM33XX_IOPAD(0x92c, PIN_INPUT_PULLUP | MUX_MODE1) 705 /* L18 uart2_txd.mirx_rxd */ 706 AM33XX_IOPAD(0x930, PIN_OUTPUT_PULLDOWN | MUX_MODE1) 707 >; 708 }; 709 710 nandflash_pins: pinmux_nandflash_pins { 711 pinctrl-single,pins = < 712 /* (U7) gpmc_ad0.gpmc_ad0 */ 713 AM33XX_IOPAD(0x800, PIN_INPUT | MUX_MODE0) 714 /* (V7) gpmc_ad1.gpmc_ad1 */ 715 AM33XX_IOPAD(0x804, PIN_INPUT | MUX_MODE0) 716 /* (R8) gpmc_ad2.gpmc_ad2 */ 717 AM33XX_IOPAD(0x808, PIN_INPUT | MUX_MODE0) 718 /* (T8) gpmc_ad3.gpmc_ad3 */ 719 AM33XX_IOPAD(0x80c, PIN_INPUT | MUX_MODE0) 720 /* (U8) gpmc_ad4.gpmc_ad4 */ 721 AM33XX_IOPAD(0x810, PIN_INPUT | MUX_MODE0) 722 /* (V8) gpmc_ad5.gpmc_ad5 */ 723 AM33XX_IOPAD(0x814, PIN_INPUT | MUX_MODE0) 724 /* (R9) gpmc_ad6.gpmc_ad6 */ 725 AM33XX_IOPAD(0x818, PIN_INPUT | MUX_MODE0) 726 /* (T9) gpmc_ad7.gpmc_ad7 */ 727 AM33XX_IOPAD(0x81c, PIN_INPUT | MUX_MODE0) 728 /* (T17) gpmc_wait0.gpmc_wait0 */ 729 AM33XX_IOPAD(0x870, PIN_INPUT | MUX_MODE0) 730 /* (U17) gpmc_wpn.gpmc_wpn */ 731 AM33XX_IOPAD(0x874, PIN_OUTPUT | MUX_MODE0) 732 /* (V6) gpmc_csn0.gpmc_csn0 */ 733 AM33XX_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0) 734 /* (R7) gpmc_advn_ale.gpmc_advn_ale */ 735 AM33XX_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0) 736 /* (T7) gpmc_oen_ren.gpmc_oen_ren */ 737 AM33XX_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0) 738 /* (U6) gpmc_wen.gpmc_wen */ 739 AM33XX_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0) 740 /* (T6) gpmc_be0n_cle.gpmc_be0n_cle */ 741 AM33XX_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0) 742 >; 743 }; 744}; 745