1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 OR MIT 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Copyright 2014 Carlo Caione <carlo@caione.org> 4*4882a593Smuzhiyun */ 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 7*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun/ { 10*4882a593Smuzhiyun #address-cells = <1>; 11*4882a593Smuzhiyun #size-cells = <1>; 12*4882a593Smuzhiyun interrupt-parent = <&gic>; 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun soc { 15*4882a593Smuzhiyun compatible = "simple-bus"; 16*4882a593Smuzhiyun #address-cells = <1>; 17*4882a593Smuzhiyun #size-cells = <1>; 18*4882a593Smuzhiyun ranges; 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun cbus: cbus@c1100000 { 21*4882a593Smuzhiyun compatible = "simple-bus"; 22*4882a593Smuzhiyun reg = <0xc1100000 0x200000>; 23*4882a593Smuzhiyun #address-cells = <1>; 24*4882a593Smuzhiyun #size-cells = <1>; 25*4882a593Smuzhiyun ranges = <0x0 0xc1100000 0x200000>; 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun hhi: system-controller@4000 { 28*4882a593Smuzhiyun compatible = "amlogic,meson-hhi-sysctrl", 29*4882a593Smuzhiyun "simple-mfd", 30*4882a593Smuzhiyun "syscon"; 31*4882a593Smuzhiyun reg = <0x4000 0x400>; 32*4882a593Smuzhiyun }; 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun assist: assist@7c00 { 35*4882a593Smuzhiyun compatible = "amlogic,meson-mx-assist", "syscon"; 36*4882a593Smuzhiyun reg = <0x7c00 0x200>; 37*4882a593Smuzhiyun }; 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun hwrng: rng@8100 { 40*4882a593Smuzhiyun compatible = "amlogic,meson-rng"; 41*4882a593Smuzhiyun reg = <0x8100 0x8>; 42*4882a593Smuzhiyun }; 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun uart_A: serial@84c0 { 45*4882a593Smuzhiyun compatible = "amlogic,meson6-uart"; 46*4882a593Smuzhiyun reg = <0x84c0 0x18>; 47*4882a593Smuzhiyun interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>; 48*4882a593Smuzhiyun status = "disabled"; 49*4882a593Smuzhiyun }; 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun uart_B: serial@84dc { 52*4882a593Smuzhiyun compatible = "amlogic,meson6-uart"; 53*4882a593Smuzhiyun reg = <0x84dc 0x18>; 54*4882a593Smuzhiyun interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>; 55*4882a593Smuzhiyun status = "disabled"; 56*4882a593Smuzhiyun }; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun i2c_A: i2c@8500 { 59*4882a593Smuzhiyun compatible = "amlogic,meson6-i2c"; 60*4882a593Smuzhiyun reg = <0x8500 0x20>; 61*4882a593Smuzhiyun interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>; 62*4882a593Smuzhiyun #address-cells = <1>; 63*4882a593Smuzhiyun #size-cells = <0>; 64*4882a593Smuzhiyun status = "disabled"; 65*4882a593Smuzhiyun }; 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun pwm_ab: pwm@8550 { 68*4882a593Smuzhiyun compatible = "amlogic,meson-pwm"; 69*4882a593Smuzhiyun reg = <0x8550 0x10>; 70*4882a593Smuzhiyun #pwm-cells = <3>; 71*4882a593Smuzhiyun status = "disabled"; 72*4882a593Smuzhiyun }; 73*4882a593Smuzhiyun 74*4882a593Smuzhiyun pwm_cd: pwm@8650 { 75*4882a593Smuzhiyun compatible = "amlogic,meson-pwm"; 76*4882a593Smuzhiyun reg = <0x8650 0x10>; 77*4882a593Smuzhiyun #pwm-cells = <3>; 78*4882a593Smuzhiyun status = "disabled"; 79*4882a593Smuzhiyun }; 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun saradc: adc@8680 { 82*4882a593Smuzhiyun compatible = "amlogic,meson-saradc"; 83*4882a593Smuzhiyun reg = <0x8680 0x34>; 84*4882a593Smuzhiyun #io-channel-cells = <1>; 85*4882a593Smuzhiyun interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>; 86*4882a593Smuzhiyun status = "disabled"; 87*4882a593Smuzhiyun }; 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun uart_C: serial@8700 { 90*4882a593Smuzhiyun compatible = "amlogic,meson6-uart"; 91*4882a593Smuzhiyun reg = <0x8700 0x18>; 92*4882a593Smuzhiyun interrupts = <GIC_SPI 93 IRQ_TYPE_EDGE_RISING>; 93*4882a593Smuzhiyun status = "disabled"; 94*4882a593Smuzhiyun }; 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun i2c_B: i2c@87c0 { 97*4882a593Smuzhiyun compatible = "amlogic,meson6-i2c"; 98*4882a593Smuzhiyun reg = <0x87c0 0x20>; 99*4882a593Smuzhiyun interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>; 100*4882a593Smuzhiyun #address-cells = <1>; 101*4882a593Smuzhiyun #size-cells = <0>; 102*4882a593Smuzhiyun status = "disabled"; 103*4882a593Smuzhiyun }; 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun usb0_phy: phy@8800 { 106*4882a593Smuzhiyun compatible = "amlogic,meson-mx-usb2-phy"; 107*4882a593Smuzhiyun #phy-cells = <0>; 108*4882a593Smuzhiyun reg = <0x8800 0x20>; 109*4882a593Smuzhiyun status = "disabled"; 110*4882a593Smuzhiyun }; 111*4882a593Smuzhiyun 112*4882a593Smuzhiyun usb1_phy: phy@8820 { 113*4882a593Smuzhiyun compatible = "amlogic,meson-mx-usb2-phy"; 114*4882a593Smuzhiyun #phy-cells = <0>; 115*4882a593Smuzhiyun reg = <0x8820 0x20>; 116*4882a593Smuzhiyun status = "disabled"; 117*4882a593Smuzhiyun }; 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun sdio: mmc@8c20 { 120*4882a593Smuzhiyun compatible = "amlogic,meson-mx-sdio"; 121*4882a593Smuzhiyun reg = <0x8c20 0x20>; 122*4882a593Smuzhiyun interrupts = <GIC_SPI 28 IRQ_TYPE_EDGE_RISING>; 123*4882a593Smuzhiyun #address-cells = <1>; 124*4882a593Smuzhiyun #size-cells = <0>; 125*4882a593Smuzhiyun status = "disabled"; 126*4882a593Smuzhiyun }; 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun spifc: spi@8c80 { 129*4882a593Smuzhiyun compatible = "amlogic,meson6-spifc"; 130*4882a593Smuzhiyun reg = <0x8c80 0x80>; 131*4882a593Smuzhiyun #address-cells = <1>; 132*4882a593Smuzhiyun #size-cells = <0>; 133*4882a593Smuzhiyun status = "disabled"; 134*4882a593Smuzhiyun }; 135*4882a593Smuzhiyun 136*4882a593Smuzhiyun sdhc: mmc@8e00 { 137*4882a593Smuzhiyun compatible = "amlogic,meson-mx-sdhc"; 138*4882a593Smuzhiyun reg = <0x8e00 0x42>; 139*4882a593Smuzhiyun interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>; 140*4882a593Smuzhiyun status = "disabled"; 141*4882a593Smuzhiyun }; 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun gpio_intc: interrupt-controller@9880 { 144*4882a593Smuzhiyun compatible = "amlogic,meson-gpio-intc"; 145*4882a593Smuzhiyun reg = <0x9880 0x10>; 146*4882a593Smuzhiyun interrupt-controller; 147*4882a593Smuzhiyun #interrupt-cells = <2>; 148*4882a593Smuzhiyun amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>; 149*4882a593Smuzhiyun status = "disabled"; 150*4882a593Smuzhiyun }; 151*4882a593Smuzhiyun 152*4882a593Smuzhiyun wdt: watchdog@9900 { 153*4882a593Smuzhiyun compatible = "amlogic,meson6-wdt"; 154*4882a593Smuzhiyun reg = <0x9900 0x8>; 155*4882a593Smuzhiyun interrupts = <GIC_SPI 0 IRQ_TYPE_EDGE_RISING>; 156*4882a593Smuzhiyun }; 157*4882a593Smuzhiyun 158*4882a593Smuzhiyun timer_abcde: timer@9940 { 159*4882a593Smuzhiyun compatible = "amlogic,meson6-timer"; 160*4882a593Smuzhiyun reg = <0x9940 0x18>; 161*4882a593Smuzhiyun interrupts = <GIC_SPI 10 IRQ_TYPE_EDGE_RISING>, 162*4882a593Smuzhiyun <GIC_SPI 11 IRQ_TYPE_EDGE_RISING>, 163*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_EDGE_RISING>, 164*4882a593Smuzhiyun <GIC_SPI 29 IRQ_TYPE_EDGE_RISING>; 165*4882a593Smuzhiyun }; 166*4882a593Smuzhiyun }; 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun L2: cache-controller@c4200000 { 169*4882a593Smuzhiyun compatible = "arm,pl310-cache"; 170*4882a593Smuzhiyun reg = <0xc4200000 0x1000>; 171*4882a593Smuzhiyun cache-unified; 172*4882a593Smuzhiyun cache-level = <2>; 173*4882a593Smuzhiyun }; 174*4882a593Smuzhiyun 175*4882a593Smuzhiyun periph: bus@c4300000 { 176*4882a593Smuzhiyun compatible = "simple-bus"; 177*4882a593Smuzhiyun reg = <0xc4300000 0x10000>; 178*4882a593Smuzhiyun #address-cells = <1>; 179*4882a593Smuzhiyun #size-cells = <1>; 180*4882a593Smuzhiyun ranges = <0x0 0xc4300000 0x10000>; 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun gic: interrupt-controller@1000 { 183*4882a593Smuzhiyun compatible = "arm,cortex-a9-gic"; 184*4882a593Smuzhiyun reg = <0x1000 0x1000>, 185*4882a593Smuzhiyun <0x100 0x100>; 186*4882a593Smuzhiyun interrupt-controller; 187*4882a593Smuzhiyun #interrupt-cells = <3>; 188*4882a593Smuzhiyun }; 189*4882a593Smuzhiyun }; 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun aobus: aobus@c8100000 { 192*4882a593Smuzhiyun compatible = "simple-bus"; 193*4882a593Smuzhiyun reg = <0xc8100000 0x100000>; 194*4882a593Smuzhiyun #address-cells = <1>; 195*4882a593Smuzhiyun #size-cells = <1>; 196*4882a593Smuzhiyun ranges = <0x0 0xc8100000 0x100000>; 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun ir_receiver: ir-receiver@480 { 199*4882a593Smuzhiyun compatible= "amlogic,meson6-ir"; 200*4882a593Smuzhiyun reg = <0x480 0x20>; 201*4882a593Smuzhiyun interrupts = <GIC_SPI 15 IRQ_TYPE_EDGE_RISING>; 202*4882a593Smuzhiyun status = "disabled"; 203*4882a593Smuzhiyun }; 204*4882a593Smuzhiyun 205*4882a593Smuzhiyun uart_AO: serial@4c0 { 206*4882a593Smuzhiyun compatible = "amlogic,meson6-uart", "amlogic,meson-ao-uart"; 207*4882a593Smuzhiyun reg = <0x4c0 0x18>; 208*4882a593Smuzhiyun interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>; 209*4882a593Smuzhiyun status = "disabled"; 210*4882a593Smuzhiyun }; 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun i2c_AO: i2c@500 { 213*4882a593Smuzhiyun compatible = "amlogic,meson6-i2c"; 214*4882a593Smuzhiyun reg = <0x500 0x20>; 215*4882a593Smuzhiyun interrupts = <GIC_SPI 92 IRQ_TYPE_EDGE_RISING>; 216*4882a593Smuzhiyun #address-cells = <1>; 217*4882a593Smuzhiyun #size-cells = <0>; 218*4882a593Smuzhiyun status = "disabled"; 219*4882a593Smuzhiyun }; 220*4882a593Smuzhiyun 221*4882a593Smuzhiyun rtc: rtc@740 { 222*4882a593Smuzhiyun compatible = "amlogic,meson6-rtc"; 223*4882a593Smuzhiyun reg = <0x740 0x14>; 224*4882a593Smuzhiyun interrupts = <GIC_SPI 72 IRQ_TYPE_EDGE_RISING>; 225*4882a593Smuzhiyun #address-cells = <1>; 226*4882a593Smuzhiyun #size-cells = <1>; 227*4882a593Smuzhiyun status = "disabled"; 228*4882a593Smuzhiyun }; 229*4882a593Smuzhiyun }; 230*4882a593Smuzhiyun 231*4882a593Smuzhiyun usb0: usb@c9040000 { 232*4882a593Smuzhiyun compatible = "snps,dwc2"; 233*4882a593Smuzhiyun #address-cells = <1>; 234*4882a593Smuzhiyun #size-cells = <0>; 235*4882a593Smuzhiyun reg = <0xc9040000 0x40000>; 236*4882a593Smuzhiyun interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 237*4882a593Smuzhiyun phys = <&usb0_phy>; 238*4882a593Smuzhiyun phy-names = "usb2-phy"; 239*4882a593Smuzhiyun g-rx-fifo-size = <512>; 240*4882a593Smuzhiyun g-np-tx-fifo-size = <500>; 241*4882a593Smuzhiyun g-tx-fifo-size = <256 192 128 128 128>; 242*4882a593Smuzhiyun dr_mode = "host"; 243*4882a593Smuzhiyun status = "disabled"; 244*4882a593Smuzhiyun }; 245*4882a593Smuzhiyun 246*4882a593Smuzhiyun usb1: usb@c90c0000 { 247*4882a593Smuzhiyun compatible = "snps,dwc2"; 248*4882a593Smuzhiyun #address-cells = <1>; 249*4882a593Smuzhiyun #size-cells = <0>; 250*4882a593Smuzhiyun reg = <0xc90c0000 0x40000>; 251*4882a593Smuzhiyun interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 252*4882a593Smuzhiyun phys = <&usb1_phy>; 253*4882a593Smuzhiyun phy-names = "usb2-phy"; 254*4882a593Smuzhiyun dr_mode = "host"; 255*4882a593Smuzhiyun status = "disabled"; 256*4882a593Smuzhiyun }; 257*4882a593Smuzhiyun 258*4882a593Smuzhiyun ethmac: ethernet@c9410000 { 259*4882a593Smuzhiyun compatible = "amlogic,meson6-dwmac", "snps,dwmac"; 260*4882a593Smuzhiyun reg = <0xc9410000 0x10000 261*4882a593Smuzhiyun 0xc1108108 0x4>; 262*4882a593Smuzhiyun interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 263*4882a593Smuzhiyun interrupt-names = "macirq"; 264*4882a593Smuzhiyun status = "disabled"; 265*4882a593Smuzhiyun }; 266*4882a593Smuzhiyun 267*4882a593Smuzhiyun ahb_sram: sram@d9000000 { 268*4882a593Smuzhiyun compatible = "mmio-sram"; 269*4882a593Smuzhiyun reg = <0xd9000000 0x20000>; 270*4882a593Smuzhiyun #address-cells = <1>; 271*4882a593Smuzhiyun #size-cells = <1>; 272*4882a593Smuzhiyun ranges = <0 0xd9000000 0x20000>; 273*4882a593Smuzhiyun }; 274*4882a593Smuzhiyun 275*4882a593Smuzhiyun bootrom: bootrom@d9040000 { 276*4882a593Smuzhiyun compatible = "amlogic,meson-mx-bootrom", "syscon"; 277*4882a593Smuzhiyun reg = <0xd9040000 0x10000>; 278*4882a593Smuzhiyun }; 279*4882a593Smuzhiyun 280*4882a593Smuzhiyun secbus: secbus@da000000 { 281*4882a593Smuzhiyun compatible = "simple-bus"; 282*4882a593Smuzhiyun reg = <0xda000000 0x6000>; 283*4882a593Smuzhiyun #address-cells = <1>; 284*4882a593Smuzhiyun #size-cells = <1>; 285*4882a593Smuzhiyun ranges = <0x0 0xda000000 0x6000>; 286*4882a593Smuzhiyun 287*4882a593Smuzhiyun efuse: nvmem@0 { 288*4882a593Smuzhiyun compatible = "amlogic,meson6-efuse"; 289*4882a593Smuzhiyun reg = <0x0 0x2000>; 290*4882a593Smuzhiyun #address-cells = <1>; 291*4882a593Smuzhiyun #size-cells = <1>; 292*4882a593Smuzhiyun }; 293*4882a593Smuzhiyun }; 294*4882a593Smuzhiyun }; 295*4882a593Smuzhiyun 296*4882a593Smuzhiyun xtal: xtal-clk { 297*4882a593Smuzhiyun compatible = "fixed-clock"; 298*4882a593Smuzhiyun clock-frequency = <24000000>; 299*4882a593Smuzhiyun clock-output-names = "xtal"; 300*4882a593Smuzhiyun #clock-cells = <0>; 301*4882a593Smuzhiyun }; 302*4882a593Smuzhiyun}; /* end of / */ 303