1/* 2 * Copyright 2013 Freescale Semiconductor, Inc. 3 * 4 * This file is dual-licensed: you can use it either under the terms 5 * of the GPL or the X11 license, at your option. Note that this dual 6 * licensing only applies to this file, and not this project as a 7 * whole. 8 * 9 * a) This file is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License 11 * version 2 as published by the Free Software Foundation. 12 * 13 * This file is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * Or, alternatively, 19 * 20 * b) Permission is hereby granted, free of charge, to any person 21 * obtaining a copy of this software and associated documentation 22 * files (the "Software"), to deal in the Software without 23 * restriction, including without limitation the rights to use, 24 * copy, modify, merge, publish, distribute, sublicense, and/or 25 * sell copies of the Software, and to permit persons to whom the 26 * Software is furnished to do so, subject to the following 27 * conditions: 28 * 29 * The above copyright notice and this permission notice shall be 30 * included in all copies or substantial portions of the Software. 31 * 32 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 33 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 34 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 35 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 36 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 37 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 38 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 39 * OTHER DEALINGS IN THE SOFTWARE. 40 */ 41 42#include "vf610-pinfunc.h" 43#include <dt-bindings/clock/vf610-clock.h> 44#include <dt-bindings/interrupt-controller/irq.h> 45#include <dt-bindings/gpio/gpio.h> 46 47/ { 48 aliases { 49 can0 = &can0; 50 can1 = &can1; 51 ethernet0 = &fec0; 52 ethernet1 = &fec1; 53 serial0 = &uart0; 54 serial1 = &uart1; 55 serial2 = &uart2; 56 serial3 = &uart3; 57 serial4 = &uart4; 58 serial5 = &uart5; 59 gpio0 = &gpio0; 60 gpio1 = &gpio1; 61 gpio2 = &gpio2; 62 gpio3 = &gpio3; 63 gpio4 = &gpio4; 64 usbphy0 = &usbphy0; 65 usbphy1 = &usbphy1; 66 }; 67 68 fxosc: fxosc { 69 compatible = "fixed-clock"; 70 #clock-cells = <0>; 71 clock-frequency = <24000000>; 72 }; 73 74 sxosc: sxosc { 75 compatible = "fixed-clock"; 76 #clock-cells = <0>; 77 clock-frequency = <32768>; 78 }; 79 80 reboot: syscon-reboot { 81 compatible = "syscon-reboot"; 82 regmap = <&src>; 83 offset = <0x0>; 84 mask = <0x1000>; 85 }; 86 87 soc { 88 #address-cells = <1>; 89 #size-cells = <1>; 90 compatible = "simple-bus"; 91 interrupt-parent = <&mscm_ir>; 92 ranges; 93 94 aips0: aips-bus@40000000 { 95 compatible = "fsl,aips-bus", "simple-bus"; 96 #address-cells = <1>; 97 #size-cells = <1>; 98 reg = <0x40000000 0x00070000>; 99 ranges; 100 101 mscm_cpucfg: cpucfg@40001000 { 102 compatible = "fsl,vf610-mscm-cpucfg", "syscon"; 103 reg = <0x40001000 0x800>; 104 }; 105 106 mscm_ir: interrupt-controller@40001800 { 107 compatible = "fsl,vf610-mscm-ir"; 108 reg = <0x40001800 0x400>; 109 fsl,cpucfg = <&mscm_cpucfg>; 110 interrupt-controller; 111 #interrupt-cells = <2>; 112 }; 113 114 edma0: dma-controller@40018000 { 115 #dma-cells = <2>; 116 compatible = "fsl,vf610-edma"; 117 reg = <0x40018000 0x2000>, 118 <0x40024000 0x1000>, 119 <0x40025000 0x1000>; 120 dma-channels = <32>; 121 interrupts = <8 IRQ_TYPE_LEVEL_HIGH>, 122 <9 IRQ_TYPE_LEVEL_HIGH>; 123 interrupt-names = "edma-tx", "edma-err"; 124 clock-names = "dmamux0", "dmamux1"; 125 clocks = <&clks VF610_CLK_DMAMUX0>, 126 <&clks VF610_CLK_DMAMUX1>; 127 status = "disabled"; 128 }; 129 130 can0: flexcan@40020000 { 131 compatible = "fsl,vf610-flexcan"; 132 reg = <0x40020000 0x4000>; 133 interrupts = <58 IRQ_TYPE_LEVEL_HIGH>; 134 clocks = <&clks VF610_CLK_FLEXCAN0>, 135 <&clks VF610_CLK_FLEXCAN0>; 136 clock-names = "ipg", "per"; 137 status = "disabled"; 138 }; 139 140 uart0: serial@40027000 { 141 compatible = "fsl,vf610-lpuart"; 142 reg = <0x40027000 0x1000>; 143 interrupts = <61 IRQ_TYPE_LEVEL_HIGH>; 144 clocks = <&clks VF610_CLK_UART0>; 145 clock-names = "ipg"; 146 dmas = <&edma0 0 2>, 147 <&edma0 0 3>; 148 dma-names = "rx","tx"; 149 status = "disabled"; 150 }; 151 152 uart1: serial@40028000 { 153 compatible = "fsl,vf610-lpuart"; 154 reg = <0x40028000 0x1000>; 155 interrupts = <62 IRQ_TYPE_LEVEL_HIGH>; 156 clocks = <&clks VF610_CLK_UART1>; 157 clock-names = "ipg"; 158 dmas = <&edma0 0 4>, 159 <&edma0 0 5>; 160 dma-names = "rx","tx"; 161 status = "disabled"; 162 }; 163 164 uart2: serial@40029000 { 165 compatible = "fsl,vf610-lpuart"; 166 reg = <0x40029000 0x1000>; 167 interrupts = <63 IRQ_TYPE_LEVEL_HIGH>; 168 clocks = <&clks VF610_CLK_UART2>; 169 clock-names = "ipg"; 170 dmas = <&edma0 0 6>, 171 <&edma0 0 7>; 172 dma-names = "rx","tx"; 173 status = "disabled"; 174 }; 175 176 uart3: serial@4002a000 { 177 compatible = "fsl,vf610-lpuart"; 178 reg = <0x4002a000 0x1000>; 179 interrupts = <64 IRQ_TYPE_LEVEL_HIGH>; 180 clocks = <&clks VF610_CLK_UART3>; 181 clock-names = "ipg"; 182 dmas = <&edma0 0 8>, 183 <&edma0 0 9>; 184 dma-names = "rx","tx"; 185 status = "disabled"; 186 }; 187 188 dspi0: dspi0@4002c000 { 189 #address-cells = <1>; 190 #size-cells = <0>; 191 compatible = "fsl,vf610-dspi"; 192 reg = <0x4002c000 0x1000>; 193 interrupts = <67 IRQ_TYPE_LEVEL_HIGH>; 194 clocks = <&clks VF610_CLK_DSPI0>; 195 clock-names = "dspi"; 196 spi-num-chipselects = <6>; 197 dmas = <&edma1 1 12>, 198 <&edma1 1 13>; 199 dma-names = "rx", "tx"; 200 status = "disabled"; 201 }; 202 203 dspi1: dspi1@4002d000 { 204 #address-cells = <1>; 205 #size-cells = <0>; 206 compatible = "fsl,vf610-dspi"; 207 reg = <0x4002d000 0x1000>; 208 interrupts = <68 IRQ_TYPE_LEVEL_HIGH>; 209 clocks = <&clks VF610_CLK_DSPI1>; 210 clock-names = "dspi"; 211 spi-num-chipselects = <4>; 212 dmas = <&edma1 1 14>, 213 <&edma1 1 15>; 214 dma-names = "rx", "tx"; 215 status = "disabled"; 216 }; 217 218 sai0: sai@4002f000 { 219 compatible = "fsl,vf610-sai"; 220 reg = <0x4002f000 0x1000>; 221 interrupts = <84 IRQ_TYPE_LEVEL_HIGH>; 222 clocks = <&clks VF610_CLK_SAI0>, 223 <&clks VF610_CLK_SAI0_DIV>, 224 <&clks 0>, <&clks 0>; 225 clock-names = "bus", "mclk1", "mclk2", "mclk3"; 226 dma-names = "tx", "rx"; 227 dmas = <&edma0 0 17>, 228 <&edma0 0 16>; 229 status = "disabled"; 230 }; 231 232 sai1: sai@40030000 { 233 compatible = "fsl,vf610-sai"; 234 reg = <0x40030000 0x1000>; 235 interrupts = <85 IRQ_TYPE_LEVEL_HIGH>; 236 clocks = <&clks VF610_CLK_SAI1>, 237 <&clks VF610_CLK_SAI1_DIV>, 238 <&clks 0>, <&clks 0>; 239 clock-names = "bus", "mclk1", "mclk2", "mclk3"; 240 dma-names = "tx", "rx"; 241 dmas = <&edma0 0 19>, 242 <&edma0 0 18>; 243 status = "disabled"; 244 }; 245 246 sai2: sai@40031000 { 247 compatible = "fsl,vf610-sai"; 248 reg = <0x40031000 0x1000>; 249 interrupts = <86 IRQ_TYPE_LEVEL_HIGH>; 250 clocks = <&clks VF610_CLK_SAI2>, 251 <&clks VF610_CLK_SAI2_DIV>, 252 <&clks 0>, <&clks 0>; 253 clock-names = "bus", "mclk1", "mclk2", "mclk3"; 254 dma-names = "tx", "rx"; 255 dmas = <&edma0 0 21>, 256 <&edma0 0 20>; 257 status = "disabled"; 258 }; 259 260 sai3: sai@40032000 { 261 compatible = "fsl,vf610-sai"; 262 reg = <0x40032000 0x1000>; 263 interrupts = <87 IRQ_TYPE_LEVEL_HIGH>; 264 clocks = <&clks VF610_CLK_SAI3>, 265 <&clks VF610_CLK_SAI3_DIV>, 266 <&clks 0>, <&clks 0>; 267 clock-names = "bus", "mclk1", "mclk2", "mclk3"; 268 dma-names = "tx", "rx"; 269 dmas = <&edma0 1 9>, 270 <&edma0 1 8>; 271 status = "disabled"; 272 }; 273 274 pit: pit@40037000 { 275 compatible = "fsl,vf610-pit"; 276 reg = <0x40037000 0x1000>; 277 interrupts = <39 IRQ_TYPE_LEVEL_HIGH>; 278 clocks = <&clks VF610_CLK_PIT>; 279 clock-names = "pit"; 280 }; 281 282 pwm0: pwm@40038000 { 283 compatible = "fsl,vf610-ftm-pwm"; 284 #pwm-cells = <3>; 285 reg = <0x40038000 0x1000>; 286 clock-names = "ftm_sys", "ftm_ext", 287 "ftm_fix", "ftm_cnt_clk_en"; 288 clocks = <&clks VF610_CLK_FTM0>, 289 <&clks VF610_CLK_FTM0_EXT_SEL>, 290 <&clks VF610_CLK_FTM0_FIX_SEL>, 291 <&clks VF610_CLK_FTM0_EXT_FIX_EN>; 292 status = "disabled"; 293 }; 294 295 pwm1: pwm@40039000 { 296 compatible = "fsl,vf610-ftm-pwm"; 297 #pwm-cells = <3>; 298 reg = <0x40039000 0x1000>; 299 clock-names = "ftm_sys", "ftm_ext", 300 "ftm_fix", "ftm_cnt_clk_en"; 301 clocks = <&clks VF610_CLK_FTM1>, 302 <&clks VF610_CLK_FTM1_EXT_SEL>, 303 <&clks VF610_CLK_FTM1_FIX_SEL>, 304 <&clks VF610_CLK_FTM1_EXT_FIX_EN>; 305 status = "disabled"; 306 }; 307 308 adc0: adc@4003b000 { 309 compatible = "fsl,vf610-adc"; 310 reg = <0x4003b000 0x1000>; 311 interrupts = <53 IRQ_TYPE_LEVEL_HIGH>; 312 clocks = <&clks VF610_CLK_ADC0>; 313 clock-names = "adc"; 314 #io-channel-cells = <1>; 315 status = "disabled"; 316 fsl,adck-max-frequency = <30000000>, <40000000>, 317 <20000000>; 318 }; 319 320 tcon0: timing-controller@4003d000 { 321 compatible = "fsl,vf610-tcon"; 322 reg = <0x4003d000 0x1000>; 323 clocks = <&clks VF610_CLK_TCON0>; 324 clock-names = "ipg"; 325 status = "disabled"; 326 }; 327 328 wdoga5: wdog@4003e000 { 329 compatible = "fsl,vf610-wdt", "fsl,imx21-wdt"; 330 reg = <0x4003e000 0x1000>; 331 interrupts = <20 IRQ_TYPE_LEVEL_HIGH>; 332 clocks = <&clks VF610_CLK_WDT>; 333 clock-names = "wdog"; 334 status = "disabled"; 335 }; 336 337 qspi0: quadspi@40044000 { 338 #address-cells = <1>; 339 #size-cells = <0>; 340 compatible = "fsl,vf610-qspi"; 341 reg = <0x40044000 0x1000>, <0x20000000 0x10000000>; 342 reg-names = "QuadSPI", "QuadSPI-memory"; 343 interrupts = <24 IRQ_TYPE_LEVEL_HIGH>; 344 clocks = <&clks VF610_CLK_QSPI0_EN>, 345 <&clks VF610_CLK_QSPI0>; 346 clock-names = "qspi_en", "qspi"; 347 status = "disabled"; 348 }; 349 350 iomuxc: iomuxc@40048000 { 351 compatible = "fsl,vf610-iomuxc"; 352 reg = <0x40048000 0x1000>; 353 }; 354 355 gpio0: gpio@40049000 { 356 compatible = "fsl,vf610-gpio"; 357 reg = <0x40049000 0x1000 0x400ff000 0x40>; 358 gpio-controller; 359 #gpio-cells = <2>; 360 interrupts = <107 IRQ_TYPE_LEVEL_HIGH>; 361 interrupt-controller; 362 #interrupt-cells = <2>; 363 gpio-ranges = <&iomuxc 0 0 32>; 364 }; 365 366 gpio1: gpio@4004a000 { 367 compatible = "fsl,vf610-gpio"; 368 reg = <0x4004a000 0x1000 0x400ff040 0x40>; 369 gpio-controller; 370 #gpio-cells = <2>; 371 interrupts = <108 IRQ_TYPE_LEVEL_HIGH>; 372 interrupt-controller; 373 #interrupt-cells = <2>; 374 gpio-ranges = <&iomuxc 0 32 32>; 375 }; 376 377 gpio2: gpio@4004b000 { 378 compatible = "fsl,vf610-gpio"; 379 reg = <0x4004b000 0x1000 0x400ff080 0x40>; 380 gpio-controller; 381 #gpio-cells = <2>; 382 interrupts = <109 IRQ_TYPE_LEVEL_HIGH>; 383 interrupt-controller; 384 #interrupt-cells = <2>; 385 gpio-ranges = <&iomuxc 0 64 32>; 386 }; 387 388 gpio3: gpio@4004c000 { 389 compatible = "fsl,vf610-gpio"; 390 reg = <0x4004c000 0x1000 0x400ff0c0 0x40>; 391 gpio-controller; 392 #gpio-cells = <2>; 393 interrupts = <110 IRQ_TYPE_LEVEL_HIGH>; 394 interrupt-controller; 395 #interrupt-cells = <2>; 396 gpio-ranges = <&iomuxc 0 96 32>; 397 }; 398 399 gpio4: gpio@4004d000 { 400 compatible = "fsl,vf610-gpio"; 401 reg = <0x4004d000 0x1000 0x400ff100 0x40>; 402 gpio-controller; 403 #gpio-cells = <2>; 404 interrupts = <111 IRQ_TYPE_LEVEL_HIGH>; 405 interrupt-controller; 406 #interrupt-cells = <2>; 407 gpio-ranges = <&iomuxc 0 128 7>; 408 }; 409 410 anatop: anatop@40050000 { 411 compatible = "fsl,vf610-anatop", "syscon"; 412 reg = <0x40050000 0x400>; 413 }; 414 415 usbphy0: usbphy@40050800 { 416 compatible = "fsl,vf610-usbphy"; 417 reg = <0x40050800 0x400>; 418 interrupts = <50 IRQ_TYPE_LEVEL_HIGH>; 419 clocks = <&clks VF610_CLK_USBPHY0>; 420 fsl,anatop = <&anatop>; 421 status = "disabled"; 422 }; 423 424 usbphy1: usbphy@40050c00 { 425 compatible = "fsl,vf610-usbphy"; 426 reg = <0x40050c00 0x400>; 427 interrupts = <51 IRQ_TYPE_LEVEL_HIGH>; 428 clocks = <&clks VF610_CLK_USBPHY1>; 429 fsl,anatop = <&anatop>; 430 status = "disabled"; 431 }; 432 433 dcu0: dcu@40058000 { 434 compatible = "fsl,vf610-dcu"; 435 reg = <0x40058000 0x1200>; 436 interrupts = <30 IRQ_TYPE_LEVEL_HIGH>; 437 clocks = <&clks VF610_CLK_DCU0>, 438 <&clks VF610_CLK_DCU0_DIV>; 439 clock-names = "dcu", "pix"; 440 fsl,tcon = <&tcon0>; 441 status = "disabled"; 442 }; 443 444 i2c0: i2c@40066000 { 445 #address-cells = <1>; 446 #size-cells = <0>; 447 compatible = "fsl,vf610-i2c"; 448 reg = <0x40066000 0x1000>; 449 interrupts = <71 IRQ_TYPE_LEVEL_HIGH>; 450 clocks = <&clks VF610_CLK_I2C0>; 451 clock-names = "ipg"; 452 dmas = <&edma0 0 50>, 453 <&edma0 0 51>; 454 dma-names = "rx","tx"; 455 status = "disabled"; 456 }; 457 458 i2c1: i2c@40067000 { 459 #address-cells = <1>; 460 #size-cells = <0>; 461 compatible = "fsl,vf610-i2c"; 462 reg = <0x40067000 0x1000>; 463 interrupts = <72 IRQ_TYPE_LEVEL_HIGH>; 464 clocks = <&clks VF610_CLK_I2C1>; 465 clock-names = "ipg"; 466 dmas = <&edma0 0 52>, 467 <&edma0 0 53>; 468 dma-names = "rx","tx"; 469 status = "disabled"; 470 }; 471 472 clks: ccm@4006b000 { 473 compatible = "fsl,vf610-ccm"; 474 reg = <0x4006b000 0x1000>; 475 clocks = <&sxosc>, <&fxosc>; 476 clock-names = "sxosc", "fxosc"; 477 #clock-cells = <1>; 478 }; 479 480 usbdev0: usb@40034000 { 481 compatible = "fsl,vf610-usb", "fsl,imx27-usb"; 482 reg = <0x40034000 0x800>; 483 interrupts = <75 IRQ_TYPE_LEVEL_HIGH>; 484 clocks = <&clks VF610_CLK_USBC0>; 485 fsl,usbphy = <&usbphy0>; 486 fsl,usbmisc = <&usbmisc0 0>; 487 dr_mode = "peripheral"; 488 status = "disabled"; 489 }; 490 491 usbmisc0: usb@40034800 { 492 #index-cells = <1>; 493 compatible = "fsl,vf610-usbmisc"; 494 reg = <0x40034800 0x200>; 495 clocks = <&clks VF610_CLK_USBC0>; 496 status = "disabled"; 497 }; 498 499 src: src@4006e000 { 500 compatible = "fsl,vf610-src", "syscon"; 501 reg = <0x4006e000 0x1000>; 502 interrupts = <96 IRQ_TYPE_LEVEL_HIGH>; 503 }; 504 }; 505 506 aips1: aips-bus@40080000 { 507 compatible = "fsl,aips-bus", "simple-bus"; 508 #address-cells = <1>; 509 #size-cells = <1>; 510 reg = <0x40080000 0x0007f000>; 511 ranges; 512 513 edma1: dma-controller@40098000 { 514 #dma-cells = <2>; 515 compatible = "fsl,vf610-edma"; 516 reg = <0x40098000 0x2000>, 517 <0x400a1000 0x1000>, 518 <0x400a2000 0x1000>; 519 dma-channels = <32>; 520 interrupts = <10 IRQ_TYPE_LEVEL_HIGH>, 521 <11 IRQ_TYPE_LEVEL_HIGH>; 522 interrupt-names = "edma-tx", "edma-err"; 523 clock-names = "dmamux0", "dmamux1"; 524 clocks = <&clks VF610_CLK_DMAMUX2>, 525 <&clks VF610_CLK_DMAMUX3>; 526 status = "disabled"; 527 }; 528 529 ocotp: ocotp@400a5000 { 530 compatible = "fsl,vf610-ocotp"; 531 reg = <0x400a5000 0x1000>; 532 clocks = <&clks VF610_CLK_OCOTP>; 533 }; 534 535 snvs0: snvs@400a7000 { 536 compatible = "fsl,sec-v4.0-mon", "syscon", "simple-mfd"; 537 reg = <0x400a7000 0x2000>; 538 539 snvsrtc: snvs-rtc-lp { 540 compatible = "fsl,sec-v4.0-mon-rtc-lp"; 541 regmap = <&snvs0>; 542 offset = <0x34>; 543 interrupts = <100 IRQ_TYPE_LEVEL_HIGH>; 544 clocks = <&clks VF610_CLK_SNVS>; 545 clock-names = "snvs-rtc"; 546 }; 547 }; 548 549 uart4: serial@400a9000 { 550 compatible = "fsl,vf610-lpuart"; 551 reg = <0x400a9000 0x1000>; 552 interrupts = <65 IRQ_TYPE_LEVEL_HIGH>; 553 clocks = <&clks VF610_CLK_UART4>; 554 clock-names = "ipg"; 555 status = "disabled"; 556 }; 557 558 uart5: serial@400aa000 { 559 compatible = "fsl,vf610-lpuart"; 560 reg = <0x400aa000 0x1000>; 561 interrupts = <66 IRQ_TYPE_LEVEL_HIGH>; 562 clocks = <&clks VF610_CLK_UART5>; 563 clock-names = "ipg"; 564 status = "disabled"; 565 }; 566 567 dspi2: dspi2@400ac000 { 568 #address-cells = <1>; 569 #size-cells = <0>; 570 compatible = "fsl,vf610-dspi"; 571 reg = <0x400ac000 0x1000>; 572 interrupts = <69 IRQ_TYPE_LEVEL_HIGH>; 573 clocks = <&clks VF610_CLK_DSPI2>; 574 clock-names = "dspi"; 575 spi-num-chipselects = <2>; 576 dmas = <&edma1 0 10>, 577 <&edma1 0 11>; 578 dma-names = "rx", "tx"; 579 status = "disabled"; 580 }; 581 582 dspi3: dspi3@400ad000 { 583 #address-cells = <1>; 584 #size-cells = <0>; 585 compatible = "fsl,vf610-dspi"; 586 reg = <0x400ad000 0x1000>; 587 interrupts = <70 IRQ_TYPE_LEVEL_HIGH>; 588 clocks = <&clks VF610_CLK_DSPI3>; 589 clock-names = "dspi"; 590 spi-num-chipselects = <2>; 591 dmas = <&edma1 0 12>, 592 <&edma1 0 13>; 593 dma-names = "rx", "tx"; 594 status = "disabled"; 595 }; 596 597 adc1: adc@400bb000 { 598 compatible = "fsl,vf610-adc"; 599 reg = <0x400bb000 0x1000>; 600 interrupts = <54 IRQ_TYPE_LEVEL_HIGH>; 601 clocks = <&clks VF610_CLK_ADC1>; 602 clock-names = "adc"; 603 #io-channel-cells = <1>; 604 status = "disabled"; 605 fsl,adck-max-frequency = <30000000>, <40000000>, 606 <20000000>; 607 }; 608 609 esdhc0: esdhc@400b1000 { 610 compatible = "fsl,imx53-esdhc"; 611 reg = <0x400b1000 0x1000>; 612 interrupts = <27 IRQ_TYPE_LEVEL_HIGH>; 613 clocks = <&clks VF610_CLK_IPG_BUS>, 614 <&clks VF610_CLK_PLATFORM_BUS>, 615 <&clks VF610_CLK_ESDHC0>; 616 clock-names = "ipg", "ahb", "per"; 617 status = "disabled"; 618 }; 619 620 esdhc1: esdhc@400b2000 { 621 compatible = "fsl,imx53-esdhc"; 622 reg = <0x400b2000 0x1000>; 623 interrupts = <28 IRQ_TYPE_LEVEL_HIGH>; 624 clocks = <&clks VF610_CLK_IPG_BUS>, 625 <&clks VF610_CLK_PLATFORM_BUS>, 626 <&clks VF610_CLK_ESDHC1>; 627 clock-names = "ipg", "ahb", "per"; 628 status = "disabled"; 629 }; 630 631 usbh1: usb@400b4000 { 632 compatible = "fsl,vf610-usb", "fsl,imx27-usb"; 633 reg = <0x400b4000 0x800>; 634 interrupts = <76 IRQ_TYPE_LEVEL_HIGH>; 635 clocks = <&clks VF610_CLK_USBC1>; 636 fsl,usbphy = <&usbphy1>; 637 fsl,usbmisc = <&usbmisc1 0>; 638 dr_mode = "host"; 639 status = "disabled"; 640 }; 641 642 usbmisc1: usb@400b4800 { 643 #index-cells = <1>; 644 compatible = "fsl,vf610-usbmisc"; 645 reg = <0x400b4800 0x200>; 646 clocks = <&clks VF610_CLK_USBC1>; 647 status = "disabled"; 648 }; 649 650 ftm: ftm@400b8000 { 651 compatible = "fsl,ftm-timer"; 652 reg = <0x400b8000 0x1000 0x400b9000 0x1000>; 653 interrupts = <44 IRQ_TYPE_LEVEL_HIGH>; 654 clock-names = "ftm-evt", "ftm-src", 655 "ftm-evt-counter-en", "ftm-src-counter-en"; 656 clocks = <&clks VF610_CLK_FTM2>, 657 <&clks VF610_CLK_FTM3>, 658 <&clks VF610_CLK_FTM2_EXT_FIX_EN>, 659 <&clks VF610_CLK_FTM3_EXT_FIX_EN>; 660 status = "disabled"; 661 }; 662 663 qspi1: quadspi@400c4000 { 664 #address-cells = <1>; 665 #size-cells = <0>; 666 compatible = "fsl,vf610-qspi"; 667 reg = <0x400c4000 0x1000>, <0x50000000 0x10000000>; 668 reg-names = "QuadSPI", "QuadSPI-memory"; 669 interrupts = <25 IRQ_TYPE_LEVEL_HIGH>; 670 clocks = <&clks VF610_CLK_QSPI1_EN>, 671 <&clks VF610_CLK_QSPI1>; 672 clock-names = "qspi_en", "qspi"; 673 status = "disabled"; 674 }; 675 676 dac0: dac@400cc000 { 677 compatible = "fsl,vf610-dac"; 678 reg = <0x400cc000 1000>; 679 interrupts = <55 IRQ_TYPE_LEVEL_HIGH>; 680 clock-names = "dac"; 681 clocks = <&clks VF610_CLK_DAC0>; 682 status = "disabled"; 683 }; 684 685 dac1: dac@400cd000 { 686 compatible = "fsl,vf610-dac"; 687 reg = <0x400cd000 1000>; 688 interrupts = <56 IRQ_TYPE_LEVEL_HIGH>; 689 clock-names = "dac"; 690 clocks = <&clks VF610_CLK_DAC1>; 691 status = "disabled"; 692 }; 693 694 fec0: ethernet@400d0000 { 695 compatible = "fsl,mvf600-fec"; 696 reg = <0x400d0000 0x1000>; 697 interrupts = <78 IRQ_TYPE_LEVEL_HIGH>; 698 clocks = <&clks VF610_CLK_ENET0>, 699 <&clks VF610_CLK_ENET0>, 700 <&clks VF610_CLK_ENET>; 701 clock-names = "ipg", "ahb", "ptp"; 702 status = "disabled"; 703 }; 704 705 fec1: ethernet@400d1000 { 706 compatible = "fsl,mvf600-fec"; 707 reg = <0x400d1000 0x1000>; 708 interrupts = <79 IRQ_TYPE_LEVEL_HIGH>; 709 clocks = <&clks VF610_CLK_ENET1>, 710 <&clks VF610_CLK_ENET1>, 711 <&clks VF610_CLK_ENET>; 712 clock-names = "ipg", "ahb", "ptp"; 713 status = "disabled"; 714 }; 715 716 can1: flexcan@400d4000 { 717 compatible = "fsl,vf610-flexcan"; 718 reg = <0x400d4000 0x4000>; 719 interrupts = <59 IRQ_TYPE_LEVEL_HIGH>; 720 clocks = <&clks VF610_CLK_FLEXCAN1>, 721 <&clks VF610_CLK_FLEXCAN1>; 722 clock-names = "ipg", "per"; 723 status = "disabled"; 724 }; 725 726 nfc: nand@400e0000 { 727 #address-cells = <1>; 728 #size-cells = <0>; 729 compatible = "fsl,vf610-nfc"; 730 reg = <0x400e0000 0x4000>; 731 interrupts = <83 IRQ_TYPE_LEVEL_HIGH>; 732 clocks = <&clks VF610_CLK_NFC>; 733 clock-names = "nfc"; 734 status = "disabled"; 735 }; 736 737 i2c2: i2c@400e6000 { 738 #address-cells = <1>; 739 #size-cells = <0>; 740 compatible = "fsl,vf610-i2c"; 741 reg = <0x400e6000 0x1000>; 742 interrupts = <73 IRQ_TYPE_LEVEL_HIGH>; 743 clocks = <&clks VF610_CLK_I2C2>; 744 clock-names = "ipg"; 745 dmas = <&edma0 1 36>, 746 <&edma0 1 37>; 747 dma-names = "rx","tx"; 748 status = "disabled"; 749 }; 750 751 i2c3: i2c@400e7000 { 752 #address-cells = <1>; 753 #size-cells = <0>; 754 compatible = "fsl,vf610-i2c"; 755 reg = <0x400e7000 0x1000>; 756 interrupts = <74 IRQ_TYPE_LEVEL_HIGH>; 757 clocks = <&clks VF610_CLK_I2C3>; 758 clock-names = "ipg"; 759 dmas = <&edma0 1 38>, 760 <&edma0 1 39>; 761 dma-names = "rx","tx"; 762 status = "disabled"; 763 }; 764 }; 765 766 iio-hwmon { 767 compatible = "iio-hwmon"; 768 io-channels = <&adc0 16>, <&adc1 16>; 769 }; 770 }; 771}; 772