1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 28cc087a1SEmmanuel Vadot#include <dt-bindings/clock/ingenic,jz4780-cgu.h> 3c66ec88fSEmmanuel Vadot#include <dt-bindings/clock/ingenic,tcu.h> 4c66ec88fSEmmanuel Vadot#include <dt-bindings/dma/jz4780-dma.h> 5c66ec88fSEmmanuel Vadot 6c66ec88fSEmmanuel Vadot/ { 7c66ec88fSEmmanuel Vadot #address-cells = <1>; 8c66ec88fSEmmanuel Vadot #size-cells = <1>; 9c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780"; 10c66ec88fSEmmanuel Vadot 116be33864SEmmanuel Vadot cpus { 126be33864SEmmanuel Vadot #address-cells = <1>; 136be33864SEmmanuel Vadot #size-cells = <0>; 146be33864SEmmanuel Vadot 156be33864SEmmanuel Vadot cpu0: cpu@0 { 166be33864SEmmanuel Vadot device_type = "cpu"; 176be33864SEmmanuel Vadot compatible = "ingenic,xburst-fpu1.0-mxu1.1"; 186be33864SEmmanuel Vadot reg = <0>; 196be33864SEmmanuel Vadot 206be33864SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_CPU>; 216be33864SEmmanuel Vadot clock-names = "cpu"; 226be33864SEmmanuel Vadot }; 236be33864SEmmanuel Vadot 246be33864SEmmanuel Vadot cpu1: cpu@1 { 256be33864SEmmanuel Vadot device_type = "cpu"; 266be33864SEmmanuel Vadot compatible = "ingenic,xburst-fpu1.0-mxu1.1"; 276be33864SEmmanuel Vadot reg = <1>; 286be33864SEmmanuel Vadot 296be33864SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_CORE1>; 306be33864SEmmanuel Vadot clock-names = "cpu"; 316be33864SEmmanuel Vadot }; 326be33864SEmmanuel Vadot }; 336be33864SEmmanuel Vadot 34c66ec88fSEmmanuel Vadot cpuintc: interrupt-controller { 35c66ec88fSEmmanuel Vadot #address-cells = <0>; 36c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 37c66ec88fSEmmanuel Vadot interrupt-controller; 38c66ec88fSEmmanuel Vadot compatible = "mti,cpu-interrupt-controller"; 39c66ec88fSEmmanuel Vadot }; 40c66ec88fSEmmanuel Vadot 41c66ec88fSEmmanuel Vadot intc: interrupt-controller@10001000 { 42c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-intc"; 43c66ec88fSEmmanuel Vadot reg = <0x10001000 0x50>; 44c66ec88fSEmmanuel Vadot 45c66ec88fSEmmanuel Vadot interrupt-controller; 46c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 47c66ec88fSEmmanuel Vadot 48c66ec88fSEmmanuel Vadot interrupt-parent = <&cpuintc>; 49c66ec88fSEmmanuel Vadot interrupts = <2>; 50c66ec88fSEmmanuel Vadot }; 51c66ec88fSEmmanuel Vadot 52c66ec88fSEmmanuel Vadot ext: ext { 53c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 54c66ec88fSEmmanuel Vadot #clock-cells = <0>; 55c66ec88fSEmmanuel Vadot }; 56c66ec88fSEmmanuel Vadot 57c66ec88fSEmmanuel Vadot rtc: rtc { 58c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 59c66ec88fSEmmanuel Vadot #clock-cells = <0>; 60c66ec88fSEmmanuel Vadot clock-frequency = <32768>; 61c66ec88fSEmmanuel Vadot }; 62c66ec88fSEmmanuel Vadot 63c66ec88fSEmmanuel Vadot cgu: jz4780-cgu@10000000 { 645def4c47SEmmanuel Vadot compatible = "ingenic,jz4780-cgu", "simple-mfd"; 65c66ec88fSEmmanuel Vadot reg = <0x10000000 0x100>; 665def4c47SEmmanuel Vadot #address-cells = <1>; 675def4c47SEmmanuel Vadot #size-cells = <1>; 685def4c47SEmmanuel Vadot ranges = <0x0 0x10000000 0x100>; 695def4c47SEmmanuel Vadot 705def4c47SEmmanuel Vadot #clock-cells = <1>; 71c66ec88fSEmmanuel Vadot 72c66ec88fSEmmanuel Vadot clocks = <&ext>, <&rtc>; 73c66ec88fSEmmanuel Vadot clock-names = "ext", "rtc"; 74c66ec88fSEmmanuel Vadot 755def4c47SEmmanuel Vadot otg_phy: usb-phy@3c { 765def4c47SEmmanuel Vadot compatible = "ingenic,jz4780-phy"; 775def4c47SEmmanuel Vadot reg = <0x3c 0x10>; 785def4c47SEmmanuel Vadot 795def4c47SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_OTG1>; 805def4c47SEmmanuel Vadot 815def4c47SEmmanuel Vadot #phy-cells = <0>; 825def4c47SEmmanuel Vadot 835def4c47SEmmanuel Vadot status = "disabled"; 845def4c47SEmmanuel Vadot }; 855def4c47SEmmanuel Vadot 865def4c47SEmmanuel Vadot rng: rng@d8 { 875def4c47SEmmanuel Vadot compatible = "ingenic,jz4780-rng"; 885def4c47SEmmanuel Vadot reg = <0xd8 0x8>; 895def4c47SEmmanuel Vadot 905def4c47SEmmanuel Vadot status = "disabled"; 915def4c47SEmmanuel Vadot }; 92c66ec88fSEmmanuel Vadot }; 93c66ec88fSEmmanuel Vadot 94c66ec88fSEmmanuel Vadot tcu: timer@10002000 { 95c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-tcu", 96c66ec88fSEmmanuel Vadot "ingenic,jz4770-tcu", 97c66ec88fSEmmanuel Vadot "simple-mfd"; 98c66ec88fSEmmanuel Vadot reg = <0x10002000 0x1000>; 99c66ec88fSEmmanuel Vadot #address-cells = <1>; 100c66ec88fSEmmanuel Vadot #size-cells = <1>; 101c66ec88fSEmmanuel Vadot ranges = <0x0 0x10002000 0x1000>; 102c66ec88fSEmmanuel Vadot 103c66ec88fSEmmanuel Vadot #clock-cells = <1>; 104c66ec88fSEmmanuel Vadot 105c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_RTCLK>, 106c66ec88fSEmmanuel Vadot <&cgu JZ4780_CLK_EXCLK>, 107c66ec88fSEmmanuel Vadot <&cgu JZ4780_CLK_PCLK>; 108c66ec88fSEmmanuel Vadot clock-names = "rtc", "ext", "pclk"; 109c66ec88fSEmmanuel Vadot 110c66ec88fSEmmanuel Vadot interrupt-controller; 111c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 112c66ec88fSEmmanuel Vadot 113c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 114c66ec88fSEmmanuel Vadot interrupts = <27 26 25>; 115c66ec88fSEmmanuel Vadot 116c66ec88fSEmmanuel Vadot watchdog: watchdog@0 { 117c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-watchdog"; 118c66ec88fSEmmanuel Vadot reg = <0x0 0xc>; 119c66ec88fSEmmanuel Vadot 120c66ec88fSEmmanuel Vadot clocks = <&tcu TCU_CLK_WDT>; 121c66ec88fSEmmanuel Vadot clock-names = "wdt"; 122c66ec88fSEmmanuel Vadot }; 123c66ec88fSEmmanuel Vadot 124c66ec88fSEmmanuel Vadot pwm: pwm@40 { 125c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-pwm", "ingenic,jz4740-pwm"; 126c66ec88fSEmmanuel Vadot reg = <0x40 0x80>; 127c66ec88fSEmmanuel Vadot 128c66ec88fSEmmanuel Vadot #pwm-cells = <3>; 129c66ec88fSEmmanuel Vadot 130c66ec88fSEmmanuel Vadot clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER1>, 131c66ec88fSEmmanuel Vadot <&tcu TCU_CLK_TIMER2>, <&tcu TCU_CLK_TIMER3>, 132c66ec88fSEmmanuel Vadot <&tcu TCU_CLK_TIMER4>, <&tcu TCU_CLK_TIMER5>, 133c66ec88fSEmmanuel Vadot <&tcu TCU_CLK_TIMER6>, <&tcu TCU_CLK_TIMER7>; 134c66ec88fSEmmanuel Vadot clock-names = "timer0", "timer1", "timer2", "timer3", 135c66ec88fSEmmanuel Vadot "timer4", "timer5", "timer6", "timer7"; 136c66ec88fSEmmanuel Vadot }; 137c66ec88fSEmmanuel Vadot 138c66ec88fSEmmanuel Vadot ost: timer@e0 { 139c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-ost", "ingenic,jz4770-ost"; 140c66ec88fSEmmanuel Vadot reg = <0xe0 0x20>; 141c66ec88fSEmmanuel Vadot 142c66ec88fSEmmanuel Vadot clocks = <&tcu TCU_CLK_OST>; 143c66ec88fSEmmanuel Vadot clock-names = "ost"; 144c66ec88fSEmmanuel Vadot 145c66ec88fSEmmanuel Vadot interrupts = <15>; 146c66ec88fSEmmanuel Vadot }; 147c66ec88fSEmmanuel Vadot }; 148c66ec88fSEmmanuel Vadot 149c66ec88fSEmmanuel Vadot rtc_dev: rtc@10003000 { 150c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-rtc"; 151c66ec88fSEmmanuel Vadot reg = <0x10003000 0x4c>; 152c66ec88fSEmmanuel Vadot 153c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 154c66ec88fSEmmanuel Vadot interrupts = <32>; 155c66ec88fSEmmanuel Vadot 156c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_RTCLK>; 157c66ec88fSEmmanuel Vadot clock-names = "rtc"; 158*cb7aa33aSEmmanuel Vadot 159*cb7aa33aSEmmanuel Vadot #clock-cells = <0>; 160c66ec88fSEmmanuel Vadot }; 161c66ec88fSEmmanuel Vadot 162c66ec88fSEmmanuel Vadot pinctrl: pin-controller@10010000 { 163c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-pinctrl"; 164c66ec88fSEmmanuel Vadot reg = <0x10010000 0x600>; 165c66ec88fSEmmanuel Vadot 166c66ec88fSEmmanuel Vadot #address-cells = <1>; 167c66ec88fSEmmanuel Vadot #size-cells = <0>; 168c66ec88fSEmmanuel Vadot 169c66ec88fSEmmanuel Vadot gpa: gpio@0 { 170c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-gpio"; 171c66ec88fSEmmanuel Vadot reg = <0>; 172c66ec88fSEmmanuel Vadot 173c66ec88fSEmmanuel Vadot gpio-controller; 174c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 0 32>; 175c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 176c66ec88fSEmmanuel Vadot 177c66ec88fSEmmanuel Vadot interrupt-controller; 178c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 179c66ec88fSEmmanuel Vadot 180c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 181c66ec88fSEmmanuel Vadot interrupts = <17>; 182c66ec88fSEmmanuel Vadot }; 183c66ec88fSEmmanuel Vadot 184c66ec88fSEmmanuel Vadot gpb: gpio@1 { 185c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-gpio"; 186c66ec88fSEmmanuel Vadot reg = <1>; 187c66ec88fSEmmanuel Vadot 188c66ec88fSEmmanuel Vadot gpio-controller; 189c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 32 32>; 190c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 191c66ec88fSEmmanuel Vadot 192c66ec88fSEmmanuel Vadot interrupt-controller; 193c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 194c66ec88fSEmmanuel Vadot 195c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 196c66ec88fSEmmanuel Vadot interrupts = <16>; 197c66ec88fSEmmanuel Vadot }; 198c66ec88fSEmmanuel Vadot 199c66ec88fSEmmanuel Vadot gpc: gpio@2 { 200c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-gpio"; 201c66ec88fSEmmanuel Vadot reg = <2>; 202c66ec88fSEmmanuel Vadot 203c66ec88fSEmmanuel Vadot gpio-controller; 204c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 64 32>; 205c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 206c66ec88fSEmmanuel Vadot 207c66ec88fSEmmanuel Vadot interrupt-controller; 208c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 209c66ec88fSEmmanuel Vadot 210c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 211c66ec88fSEmmanuel Vadot interrupts = <15>; 212c66ec88fSEmmanuel Vadot }; 213c66ec88fSEmmanuel Vadot 214c66ec88fSEmmanuel Vadot gpd: gpio@3 { 215c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-gpio"; 216c66ec88fSEmmanuel Vadot reg = <3>; 217c66ec88fSEmmanuel Vadot 218c66ec88fSEmmanuel Vadot gpio-controller; 219c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 96 32>; 220c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 221c66ec88fSEmmanuel Vadot 222c66ec88fSEmmanuel Vadot interrupt-controller; 223c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 224c66ec88fSEmmanuel Vadot 225c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 226c66ec88fSEmmanuel Vadot interrupts = <14>; 227c66ec88fSEmmanuel Vadot }; 228c66ec88fSEmmanuel Vadot 229c66ec88fSEmmanuel Vadot gpe: gpio@4 { 230c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-gpio"; 231c66ec88fSEmmanuel Vadot reg = <4>; 232c66ec88fSEmmanuel Vadot 233c66ec88fSEmmanuel Vadot gpio-controller; 234c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 128 32>; 235c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 236c66ec88fSEmmanuel Vadot 237c66ec88fSEmmanuel Vadot interrupt-controller; 238c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 239c66ec88fSEmmanuel Vadot 240c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 241c66ec88fSEmmanuel Vadot interrupts = <13>; 242c66ec88fSEmmanuel Vadot }; 243c66ec88fSEmmanuel Vadot 244c66ec88fSEmmanuel Vadot gpf: gpio@5 { 245c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-gpio"; 246c66ec88fSEmmanuel Vadot reg = <5>; 247c66ec88fSEmmanuel Vadot 248c66ec88fSEmmanuel Vadot gpio-controller; 249c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 160 32>; 250c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 251c66ec88fSEmmanuel Vadot 252c66ec88fSEmmanuel Vadot interrupt-controller; 253c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 254c66ec88fSEmmanuel Vadot 255c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 256c66ec88fSEmmanuel Vadot interrupts = <12>; 257c66ec88fSEmmanuel Vadot }; 258c66ec88fSEmmanuel Vadot }; 259c66ec88fSEmmanuel Vadot 2608cc087a1SEmmanuel Vadot spi0: spi@10043000 { 2618cc087a1SEmmanuel Vadot compatible = "ingenic,jz4780-spi"; 2628cc087a1SEmmanuel Vadot reg = <0x10043000 0x1c>; 263c66ec88fSEmmanuel Vadot #address-cells = <1>; 264c66ec88fSEmmanuel Vadot #size-cells = <0>; 265c66ec88fSEmmanuel Vadot 2668cc087a1SEmmanuel Vadot interrupt-parent = <&intc>; 2678cc087a1SEmmanuel Vadot interrupts = <8>; 268c66ec88fSEmmanuel Vadot 2698cc087a1SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_SSI0>; 2708cc087a1SEmmanuel Vadot clock-names = "spi"; 2718cc087a1SEmmanuel Vadot 2728cc087a1SEmmanuel Vadot dmas = <&dma JZ4780_DMA_SSI0_RX 0xffffffff>, 2738cc087a1SEmmanuel Vadot <&dma JZ4780_DMA_SSI0_TX 0xffffffff>; 2748cc087a1SEmmanuel Vadot dma-names = "rx", "tx"; 2758cc087a1SEmmanuel Vadot 2768cc087a1SEmmanuel Vadot status = "disabled"; 277c66ec88fSEmmanuel Vadot }; 278c66ec88fSEmmanuel Vadot 279c66ec88fSEmmanuel Vadot uart0: serial@10030000 { 280c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-uart"; 281c66ec88fSEmmanuel Vadot reg = <0x10030000 0x100>; 282c66ec88fSEmmanuel Vadot 283c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 284c66ec88fSEmmanuel Vadot interrupts = <51>; 285c66ec88fSEmmanuel Vadot 286c66ec88fSEmmanuel Vadot clocks = <&ext>, <&cgu JZ4780_CLK_UART0>; 287c66ec88fSEmmanuel Vadot clock-names = "baud", "module"; 288c66ec88fSEmmanuel Vadot 289c66ec88fSEmmanuel Vadot status = "disabled"; 290c66ec88fSEmmanuel Vadot }; 291c66ec88fSEmmanuel Vadot 292c66ec88fSEmmanuel Vadot uart1: serial@10031000 { 293c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-uart"; 294c66ec88fSEmmanuel Vadot reg = <0x10031000 0x100>; 295c66ec88fSEmmanuel Vadot 296c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 297c66ec88fSEmmanuel Vadot interrupts = <50>; 298c66ec88fSEmmanuel Vadot 299c66ec88fSEmmanuel Vadot clocks = <&ext>, <&cgu JZ4780_CLK_UART1>; 300c66ec88fSEmmanuel Vadot clock-names = "baud", "module"; 301c66ec88fSEmmanuel Vadot 302c66ec88fSEmmanuel Vadot status = "disabled"; 303c66ec88fSEmmanuel Vadot }; 304c66ec88fSEmmanuel Vadot 305c66ec88fSEmmanuel Vadot uart2: serial@10032000 { 306c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-uart"; 307c66ec88fSEmmanuel Vadot reg = <0x10032000 0x100>; 308c66ec88fSEmmanuel Vadot 309c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 310c66ec88fSEmmanuel Vadot interrupts = <49>; 311c66ec88fSEmmanuel Vadot 312c66ec88fSEmmanuel Vadot clocks = <&ext>, <&cgu JZ4780_CLK_UART2>; 313c66ec88fSEmmanuel Vadot clock-names = "baud", "module"; 314c66ec88fSEmmanuel Vadot 315c66ec88fSEmmanuel Vadot status = "disabled"; 316c66ec88fSEmmanuel Vadot }; 317c66ec88fSEmmanuel Vadot 318c66ec88fSEmmanuel Vadot uart3: serial@10033000 { 319c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-uart"; 320c66ec88fSEmmanuel Vadot reg = <0x10033000 0x100>; 321c66ec88fSEmmanuel Vadot 322c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 323c66ec88fSEmmanuel Vadot interrupts = <48>; 324c66ec88fSEmmanuel Vadot 325c66ec88fSEmmanuel Vadot clocks = <&ext>, <&cgu JZ4780_CLK_UART3>; 326c66ec88fSEmmanuel Vadot clock-names = "baud", "module"; 327c66ec88fSEmmanuel Vadot 328c66ec88fSEmmanuel Vadot status = "disabled"; 329c66ec88fSEmmanuel Vadot }; 330c66ec88fSEmmanuel Vadot 331c66ec88fSEmmanuel Vadot uart4: serial@10034000 { 332c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-uart"; 333c66ec88fSEmmanuel Vadot reg = <0x10034000 0x100>; 334c66ec88fSEmmanuel Vadot 335c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 336c66ec88fSEmmanuel Vadot interrupts = <34>; 337c66ec88fSEmmanuel Vadot 338c66ec88fSEmmanuel Vadot clocks = <&ext>, <&cgu JZ4780_CLK_UART4>; 339c66ec88fSEmmanuel Vadot clock-names = "baud", "module"; 340c66ec88fSEmmanuel Vadot 341c66ec88fSEmmanuel Vadot status = "disabled"; 342c66ec88fSEmmanuel Vadot }; 343c66ec88fSEmmanuel Vadot 3448cc087a1SEmmanuel Vadot spi1: spi@10044000 { 3458cc087a1SEmmanuel Vadot compatible = "ingenic,jz4780-spi"; 3468cc087a1SEmmanuel Vadot reg = <0x10044000 0x1c>; 3478cc087a1SEmmanuel Vadot #address-cells = <1>; 3488cc087a1SEmmanuel Vadot #size-sells = <0>; 3498cc087a1SEmmanuel Vadot 3508cc087a1SEmmanuel Vadot interrupt-parent = <&intc>; 3518cc087a1SEmmanuel Vadot interrupts = <7>; 3528cc087a1SEmmanuel Vadot 3538cc087a1SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_SSI1>; 3548cc087a1SEmmanuel Vadot clock-names = "spi"; 3558cc087a1SEmmanuel Vadot 3568cc087a1SEmmanuel Vadot dmas = <&dma JZ4780_DMA_SSI1_RX 0xffffffff>, 3578cc087a1SEmmanuel Vadot <&dma JZ4780_DMA_SSI1_TX 0xffffffff>; 3588cc087a1SEmmanuel Vadot dma-names = "rx", "tx"; 3598cc087a1SEmmanuel Vadot 3608cc087a1SEmmanuel Vadot status = "disabled"; 3618cc087a1SEmmanuel Vadot }; 3628cc087a1SEmmanuel Vadot 363c66ec88fSEmmanuel Vadot i2c0: i2c@10050000 { 3645956d97fSEmmanuel Vadot compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c"; 365c66ec88fSEmmanuel Vadot #address-cells = <1>; 366c66ec88fSEmmanuel Vadot #size-cells = <0>; 367c66ec88fSEmmanuel Vadot 368c66ec88fSEmmanuel Vadot reg = <0x10050000 0x1000>; 369c66ec88fSEmmanuel Vadot 370c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 371c66ec88fSEmmanuel Vadot interrupts = <60>; 372c66ec88fSEmmanuel Vadot 373c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_SMB0>; 374c66ec88fSEmmanuel Vadot clock-frequency = <100000>; 375c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 376c66ec88fSEmmanuel Vadot pinctrl-0 = <&pins_i2c0_data>; 377c66ec88fSEmmanuel Vadot 378c66ec88fSEmmanuel Vadot status = "disabled"; 379c66ec88fSEmmanuel Vadot }; 380c66ec88fSEmmanuel Vadot 381c66ec88fSEmmanuel Vadot i2c1: i2c@10051000 { 3825956d97fSEmmanuel Vadot compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c"; 383c66ec88fSEmmanuel Vadot #address-cells = <1>; 384c66ec88fSEmmanuel Vadot #size-cells = <0>; 385c66ec88fSEmmanuel Vadot reg = <0x10051000 0x1000>; 386c66ec88fSEmmanuel Vadot 387c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 388c66ec88fSEmmanuel Vadot interrupts = <59>; 389c66ec88fSEmmanuel Vadot 390c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_SMB1>; 391c66ec88fSEmmanuel Vadot clock-frequency = <100000>; 392c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 393c66ec88fSEmmanuel Vadot pinctrl-0 = <&pins_i2c1_data>; 394c66ec88fSEmmanuel Vadot 395c66ec88fSEmmanuel Vadot status = "disabled"; 396c66ec88fSEmmanuel Vadot }; 397c66ec88fSEmmanuel Vadot 398c66ec88fSEmmanuel Vadot i2c2: i2c@10052000 { 3995956d97fSEmmanuel Vadot compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c"; 400c66ec88fSEmmanuel Vadot #address-cells = <1>; 401c66ec88fSEmmanuel Vadot #size-cells = <0>; 402c66ec88fSEmmanuel Vadot reg = <0x10052000 0x1000>; 403c66ec88fSEmmanuel Vadot 404c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 405c66ec88fSEmmanuel Vadot interrupts = <58>; 406c66ec88fSEmmanuel Vadot 407c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_SMB2>; 408c66ec88fSEmmanuel Vadot clock-frequency = <100000>; 409c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 410c66ec88fSEmmanuel Vadot pinctrl-0 = <&pins_i2c2_data>; 411c66ec88fSEmmanuel Vadot 412c66ec88fSEmmanuel Vadot status = "disabled"; 413c66ec88fSEmmanuel Vadot }; 414c66ec88fSEmmanuel Vadot 415c66ec88fSEmmanuel Vadot i2c3: i2c@10053000 { 4165956d97fSEmmanuel Vadot compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c"; 417c66ec88fSEmmanuel Vadot #address-cells = <1>; 418c66ec88fSEmmanuel Vadot #size-cells = <0>; 419c66ec88fSEmmanuel Vadot reg = <0x10053000 0x1000>; 420c66ec88fSEmmanuel Vadot 421c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 422c66ec88fSEmmanuel Vadot interrupts = <57>; 423c66ec88fSEmmanuel Vadot 424c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_SMB3>; 425c66ec88fSEmmanuel Vadot clock-frequency = <100000>; 426c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 427c66ec88fSEmmanuel Vadot pinctrl-0 = <&pins_i2c3_data>; 428c66ec88fSEmmanuel Vadot 429c66ec88fSEmmanuel Vadot status = "disabled"; 430c66ec88fSEmmanuel Vadot }; 431c66ec88fSEmmanuel Vadot 432c66ec88fSEmmanuel Vadot i2c4: i2c@10054000 { 4335956d97fSEmmanuel Vadot compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c"; 434c66ec88fSEmmanuel Vadot #address-cells = <1>; 435c66ec88fSEmmanuel Vadot #size-cells = <0>; 436c66ec88fSEmmanuel Vadot reg = <0x10054000 0x1000>; 437c66ec88fSEmmanuel Vadot 438c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 439c66ec88fSEmmanuel Vadot interrupts = <56>; 440c66ec88fSEmmanuel Vadot 441c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_SMB4>; 442c66ec88fSEmmanuel Vadot clock-frequency = <100000>; 443c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 444c66ec88fSEmmanuel Vadot pinctrl-0 = <&pins_i2c4_data>; 445c66ec88fSEmmanuel Vadot 446c66ec88fSEmmanuel Vadot status = "disabled"; 447c66ec88fSEmmanuel Vadot }; 448c66ec88fSEmmanuel Vadot 449e67e8565SEmmanuel Vadot hdmi: hdmi@10180000 { 450e67e8565SEmmanuel Vadot compatible = "ingenic,jz4780-dw-hdmi"; 451e67e8565SEmmanuel Vadot reg = <0x10180000 0x8000>; 452e67e8565SEmmanuel Vadot reg-io-width = <4>; 453e67e8565SEmmanuel Vadot 454e67e8565SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_AHB0>, <&cgu JZ4780_CLK_HDMI>; 455e67e8565SEmmanuel Vadot clock-names = "iahb", "isfr"; 456e67e8565SEmmanuel Vadot 457e67e8565SEmmanuel Vadot interrupt-parent = <&intc>; 458e67e8565SEmmanuel Vadot interrupts = <3>; 459e67e8565SEmmanuel Vadot 460e67e8565SEmmanuel Vadot status = "disabled"; 461e67e8565SEmmanuel Vadot }; 462e67e8565SEmmanuel Vadot 463e67e8565SEmmanuel Vadot lcdc0: lcdc0@13050000 { 464e67e8565SEmmanuel Vadot compatible = "ingenic,jz4780-lcd"; 465e67e8565SEmmanuel Vadot reg = <0x13050000 0x1800>; 466e67e8565SEmmanuel Vadot 467e67e8565SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_TVE>, <&cgu JZ4780_CLK_LCD0PIXCLK>; 468e67e8565SEmmanuel Vadot clock-names = "lcd", "lcd_pclk"; 469e67e8565SEmmanuel Vadot 470e67e8565SEmmanuel Vadot interrupt-parent = <&intc>; 471e67e8565SEmmanuel Vadot interrupts = <31>; 472e67e8565SEmmanuel Vadot 473e67e8565SEmmanuel Vadot status = "disabled"; 474e67e8565SEmmanuel Vadot }; 475e67e8565SEmmanuel Vadot 476e67e8565SEmmanuel Vadot lcdc1: lcdc1@130a0000 { 477e67e8565SEmmanuel Vadot compatible = "ingenic,jz4780-lcd"; 478e67e8565SEmmanuel Vadot reg = <0x130a0000 0x1800>; 479e67e8565SEmmanuel Vadot 480e67e8565SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_TVE>, <&cgu JZ4780_CLK_LCD1PIXCLK>; 481e67e8565SEmmanuel Vadot clock-names = "lcd", "lcd_pclk"; 482e67e8565SEmmanuel Vadot 483e67e8565SEmmanuel Vadot interrupt-parent = <&intc>; 484e67e8565SEmmanuel Vadot interrupts = <23>; 485e67e8565SEmmanuel Vadot 486e67e8565SEmmanuel Vadot status = "disabled"; 487e67e8565SEmmanuel Vadot }; 488e67e8565SEmmanuel Vadot 489c66ec88fSEmmanuel Vadot nemc: nemc@13410000 { 490c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-nemc", "simple-mfd"; 491c66ec88fSEmmanuel Vadot reg = <0x13410000 0x10000>; 492c66ec88fSEmmanuel Vadot #address-cells = <2>; 493c66ec88fSEmmanuel Vadot #size-cells = <1>; 494c66ec88fSEmmanuel Vadot ranges = <0 0 0x13410000 0x10000>, 495c66ec88fSEmmanuel Vadot <1 0 0x1b000000 0x1000000>, 496c66ec88fSEmmanuel Vadot <2 0 0x1a000000 0x1000000>, 497c66ec88fSEmmanuel Vadot <3 0 0x19000000 0x1000000>, 498c66ec88fSEmmanuel Vadot <4 0 0x18000000 0x1000000>, 499c66ec88fSEmmanuel Vadot <5 0 0x17000000 0x1000000>, 500c66ec88fSEmmanuel Vadot <6 0 0x16000000 0x1000000>; 501c66ec88fSEmmanuel Vadot 502c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_NEMC>; 503c66ec88fSEmmanuel Vadot 504c66ec88fSEmmanuel Vadot status = "disabled"; 505c66ec88fSEmmanuel Vadot 506c66ec88fSEmmanuel Vadot efuse: efuse@d0 { 507c66ec88fSEmmanuel Vadot reg = <0 0xd0 0x30>; 508c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-efuse"; 509c66ec88fSEmmanuel Vadot 510c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_AHB2>; 511c66ec88fSEmmanuel Vadot 512c66ec88fSEmmanuel Vadot #address-cells = <1>; 513c66ec88fSEmmanuel Vadot #size-cells = <1>; 514c66ec88fSEmmanuel Vadot 515c9ccf3a3SEmmanuel Vadot eth0_addr: eth-mac-addr@22 { 516c66ec88fSEmmanuel Vadot reg = <0x22 0x6>; 517c66ec88fSEmmanuel Vadot }; 518c66ec88fSEmmanuel Vadot }; 519c66ec88fSEmmanuel Vadot }; 520c66ec88fSEmmanuel Vadot 521c66ec88fSEmmanuel Vadot dma: dma@13420000 { 522c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-dma"; 523c66ec88fSEmmanuel Vadot reg = <0x13420000 0x400>, <0x13421000 0x40>; 524c66ec88fSEmmanuel Vadot #dma-cells = <2>; 525c66ec88fSEmmanuel Vadot 526c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 527c66ec88fSEmmanuel Vadot interrupts = <10>; 528c66ec88fSEmmanuel Vadot 529c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_PDMA>; 530c66ec88fSEmmanuel Vadot }; 531c66ec88fSEmmanuel Vadot 532c66ec88fSEmmanuel Vadot mmc0: mmc@13450000 { 533c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-mmc"; 534c66ec88fSEmmanuel Vadot reg = <0x13450000 0x1000>; 535c66ec88fSEmmanuel Vadot 536c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 537c66ec88fSEmmanuel Vadot interrupts = <37>; 538c66ec88fSEmmanuel Vadot 539c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_MSC0>; 540c66ec88fSEmmanuel Vadot clock-names = "mmc"; 541c66ec88fSEmmanuel Vadot 542c66ec88fSEmmanuel Vadot cap-sd-highspeed; 543c66ec88fSEmmanuel Vadot cap-mmc-highspeed; 544c66ec88fSEmmanuel Vadot cap-sdio-irq; 545c66ec88fSEmmanuel Vadot dmas = <&dma JZ4780_DMA_MSC0_RX 0xffffffff>, 546c66ec88fSEmmanuel Vadot <&dma JZ4780_DMA_MSC0_TX 0xffffffff>; 547c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 548c66ec88fSEmmanuel Vadot 549c66ec88fSEmmanuel Vadot status = "disabled"; 550c66ec88fSEmmanuel Vadot }; 551c66ec88fSEmmanuel Vadot 552c66ec88fSEmmanuel Vadot mmc1: mmc@13460000 { 553c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-mmc"; 554c66ec88fSEmmanuel Vadot reg = <0x13460000 0x1000>; 555c66ec88fSEmmanuel Vadot 556c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 557c66ec88fSEmmanuel Vadot interrupts = <36>; 558c66ec88fSEmmanuel Vadot 559c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_MSC1>; 560c66ec88fSEmmanuel Vadot clock-names = "mmc"; 561c66ec88fSEmmanuel Vadot 562c66ec88fSEmmanuel Vadot cap-sd-highspeed; 563c66ec88fSEmmanuel Vadot cap-mmc-highspeed; 564c66ec88fSEmmanuel Vadot cap-sdio-irq; 565c66ec88fSEmmanuel Vadot dmas = <&dma JZ4780_DMA_MSC1_RX 0xffffffff>, 566c66ec88fSEmmanuel Vadot <&dma JZ4780_DMA_MSC1_TX 0xffffffff>; 567c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 568c66ec88fSEmmanuel Vadot 569c66ec88fSEmmanuel Vadot status = "disabled"; 570c66ec88fSEmmanuel Vadot }; 571c66ec88fSEmmanuel Vadot 572c66ec88fSEmmanuel Vadot bch: bch@134d0000 { 573c66ec88fSEmmanuel Vadot compatible = "ingenic,jz4780-bch"; 574c66ec88fSEmmanuel Vadot reg = <0x134d0000 0x10000>; 575c66ec88fSEmmanuel Vadot 576c66ec88fSEmmanuel Vadot clocks = <&cgu JZ4780_CLK_BCH>; 577c66ec88fSEmmanuel Vadot 578c66ec88fSEmmanuel Vadot status = "disabled"; 579c66ec88fSEmmanuel Vadot }; 5805def4c47SEmmanuel Vadot 5815def4c47SEmmanuel Vadot otg: usb@13500000 { 582d5b0e70fSEmmanuel Vadot compatible = "ingenic,jz4780-otg"; 5835def4c47SEmmanuel Vadot reg = <0x13500000 0x40000>; 5845def4c47SEmmanuel Vadot 5855def4c47SEmmanuel Vadot interrupt-parent = <&intc>; 5865def4c47SEmmanuel Vadot interrupts = <21>; 5875def4c47SEmmanuel Vadot 5885def4c47SEmmanuel Vadot clocks = <&cgu JZ4780_CLK_UHC>; 5895def4c47SEmmanuel Vadot clock-names = "otg"; 5905def4c47SEmmanuel Vadot 5915def4c47SEmmanuel Vadot phys = <&otg_phy>; 5925def4c47SEmmanuel Vadot phy-names = "usb2-phy"; 5935def4c47SEmmanuel Vadot 5945def4c47SEmmanuel Vadot g-rx-fifo-size = <768>; 5955def4c47SEmmanuel Vadot g-np-tx-fifo-size = <256>; 5965def4c47SEmmanuel Vadot g-tx-fifo-size = <256 256 256 256 256 256 256 512>; 5975def4c47SEmmanuel Vadot 5985def4c47SEmmanuel Vadot status = "disabled"; 5995def4c47SEmmanuel Vadot }; 600c66ec88fSEmmanuel Vadot}; 601