0001 // SPDX-License-Identifier: GPL-2.0 OR MIT
0002 /*
0003 * Copyright 2014 Carlo Caione <carlo@caione.org>
0004 */
0005
0006 #include <dt-bindings/interrupt-controller/irq.h>
0007 #include <dt-bindings/interrupt-controller/arm-gic.h>
0008 #include <dt-bindings/sound/meson-aiu.h>
0009
0010 / {
0011 #address-cells = <1>;
0012 #size-cells = <1>;
0013 interrupt-parent = <&gic>;
0014
0015 iio-hwmon {
0016 compatible = "iio-hwmon";
0017 io-channels = <&saradc 8>;
0018 };
0019
0020 soc {
0021 compatible = "simple-bus";
0022 #address-cells = <1>;
0023 #size-cells = <1>;
0024 ranges;
0025
0026 cbus: cbus@c1100000 {
0027 compatible = "simple-bus";
0028 reg = <0xc1100000 0x200000>;
0029 #address-cells = <1>;
0030 #size-cells = <1>;
0031 ranges = <0x0 0xc1100000 0x200000>;
0032
0033 hhi: system-controller@4000 {
0034 compatible = "amlogic,meson-hhi-sysctrl",
0035 "simple-mfd",
0036 "syscon";
0037 reg = <0x4000 0x400>;
0038 };
0039
0040 aiu: audio-controller@5400 {
0041 compatible = "amlogic,aiu";
0042 #sound-dai-cells = <2>;
0043 sound-name-prefix = "AIU";
0044 reg = <0x5400 0x2ac>;
0045 interrupts = <GIC_SPI 48 IRQ_TYPE_EDGE_RISING>,
0046 <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>;
0047 interrupt-names = "i2s", "spdif";
0048 status = "disabled";
0049 };
0050
0051 assist: assist@7c00 {
0052 compatible = "amlogic,meson-mx-assist", "syscon";
0053 reg = <0x7c00 0x200>;
0054 };
0055
0056 hwrng: rng@8100 {
0057 compatible = "amlogic,meson-rng";
0058 reg = <0x8100 0x8>;
0059 };
0060
0061 uart_A: serial@84c0 {
0062 compatible = "amlogic,meson6-uart";
0063 reg = <0x84c0 0x18>;
0064 interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
0065 fifo-size = <128>;
0066 status = "disabled";
0067 };
0068
0069 uart_B: serial@84dc {
0070 compatible = "amlogic,meson6-uart";
0071 reg = <0x84dc 0x18>;
0072 interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
0073 status = "disabled";
0074 };
0075
0076 i2c_A: i2c@8500 {
0077 compatible = "amlogic,meson6-i2c";
0078 reg = <0x8500 0x20>;
0079 interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
0080 #address-cells = <1>;
0081 #size-cells = <0>;
0082 status = "disabled";
0083 };
0084
0085 pwm_ab: pwm@8550 {
0086 compatible = "amlogic,meson-pwm";
0087 reg = <0x8550 0x10>;
0088 #pwm-cells = <3>;
0089 status = "disabled";
0090 };
0091
0092 pwm_cd: pwm@8650 {
0093 compatible = "amlogic,meson-pwm";
0094 reg = <0x8650 0x10>;
0095 #pwm-cells = <3>;
0096 status = "disabled";
0097 };
0098
0099 saradc: adc@8680 {
0100 compatible = "amlogic,meson-saradc";
0101 reg = <0x8680 0x34>;
0102 #io-channel-cells = <1>;
0103 interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>;
0104 status = "disabled";
0105 };
0106
0107 uart_C: serial@8700 {
0108 compatible = "amlogic,meson6-uart";
0109 reg = <0x8700 0x18>;
0110 interrupts = <GIC_SPI 93 IRQ_TYPE_EDGE_RISING>;
0111 status = "disabled";
0112 };
0113
0114 i2c_B: i2c@87c0 {
0115 compatible = "amlogic,meson6-i2c";
0116 reg = <0x87c0 0x20>;
0117 interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
0118 #address-cells = <1>;
0119 #size-cells = <0>;
0120 status = "disabled";
0121 };
0122
0123 usb0_phy: phy@8800 {
0124 compatible = "amlogic,meson-mx-usb2-phy";
0125 #phy-cells = <0>;
0126 reg = <0x8800 0x20>;
0127 status = "disabled";
0128 };
0129
0130 usb1_phy: phy@8820 {
0131 compatible = "amlogic,meson-mx-usb2-phy";
0132 #phy-cells = <0>;
0133 reg = <0x8820 0x20>;
0134 status = "disabled";
0135 };
0136
0137 sdio: mmc@8c20 {
0138 compatible = "amlogic,meson-mx-sdio";
0139 reg = <0x8c20 0x20>;
0140 interrupts = <GIC_SPI 28 IRQ_TYPE_EDGE_RISING>;
0141 #address-cells = <1>;
0142 #size-cells = <0>;
0143 status = "disabled";
0144 };
0145
0146 spifc: spi@8c80 {
0147 compatible = "amlogic,meson6-spifc";
0148 reg = <0x8c80 0x80>;
0149 #address-cells = <1>;
0150 #size-cells = <0>;
0151 status = "disabled";
0152 };
0153
0154 sdhc: mmc@8e00 {
0155 compatible = "amlogic,meson-mx-sdhc";
0156 reg = <0x8e00 0x42>;
0157 interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>;
0158 status = "disabled";
0159 };
0160
0161 gpio_intc: interrupt-controller@9880 {
0162 compatible = "amlogic,meson-gpio-intc";
0163 reg = <0x9880 0x10>;
0164 interrupt-controller;
0165 #interrupt-cells = <2>;
0166 amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
0167 status = "disabled";
0168 };
0169
0170 wdt: watchdog@9900 {
0171 compatible = "amlogic,meson6-wdt";
0172 reg = <0x9900 0x8>;
0173 interrupts = <GIC_SPI 0 IRQ_TYPE_EDGE_RISING>;
0174 };
0175
0176 timer_abcde: timer@9940 {
0177 compatible = "amlogic,meson6-timer";
0178 reg = <0x9940 0x18>;
0179 interrupts = <GIC_SPI 10 IRQ_TYPE_EDGE_RISING>,
0180 <GIC_SPI 11 IRQ_TYPE_EDGE_RISING>,
0181 <GIC_SPI 6 IRQ_TYPE_EDGE_RISING>,
0182 <GIC_SPI 29 IRQ_TYPE_EDGE_RISING>;
0183 };
0184 };
0185
0186 L2: cache-controller@c4200000 {
0187 compatible = "arm,pl310-cache";
0188 reg = <0xc4200000 0x1000>;
0189 cache-unified;
0190 cache-level = <2>;
0191 };
0192
0193 periph: bus@c4300000 {
0194 compatible = "simple-bus";
0195 reg = <0xc4300000 0x10000>;
0196 #address-cells = <1>;
0197 #size-cells = <1>;
0198 ranges = <0x0 0xc4300000 0x10000>;
0199
0200 gic: interrupt-controller@1000 {
0201 compatible = "arm,cortex-a9-gic";
0202 reg = <0x1000 0x1000>,
0203 <0x100 0x100>;
0204 interrupt-controller;
0205 #interrupt-cells = <3>;
0206 };
0207 };
0208
0209 aobus: aobus@c8100000 {
0210 compatible = "simple-bus";
0211 reg = <0xc8100000 0x100000>;
0212 #address-cells = <1>;
0213 #size-cells = <1>;
0214 ranges = <0x0 0xc8100000 0x100000>;
0215
0216 ao_arc_rproc: remoteproc@1c {
0217 compatible = "amlogic,meson-mx-ao-arc";
0218 reg = <0x1c 0x8>, <0x38 0x8>;
0219 reg-names = "remap", "cpu";
0220 status = "disabled";
0221 };
0222
0223 ir_receiver: ir-receiver@480 {
0224 compatible = "amlogic,meson6-ir";
0225 reg = <0x480 0x20>;
0226 interrupts = <GIC_SPI 15 IRQ_TYPE_EDGE_RISING>;
0227 status = "disabled";
0228 };
0229
0230 uart_AO: serial@4c0 {
0231 compatible = "amlogic,meson6-uart", "amlogic,meson-ao-uart";
0232 reg = <0x4c0 0x18>;
0233 interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
0234 status = "disabled";
0235 };
0236
0237 i2c_AO: i2c@500 {
0238 compatible = "amlogic,meson6-i2c";
0239 reg = <0x500 0x20>;
0240 interrupts = <GIC_SPI 92 IRQ_TYPE_EDGE_RISING>;
0241 #address-cells = <1>;
0242 #size-cells = <0>;
0243 status = "disabled";
0244 };
0245
0246 rtc: rtc@740 {
0247 compatible = "amlogic,meson6-rtc";
0248 reg = <0x740 0x14>;
0249 interrupts = <GIC_SPI 72 IRQ_TYPE_EDGE_RISING>;
0250 #address-cells = <1>;
0251 #size-cells = <1>;
0252 status = "disabled";
0253 };
0254 };
0255
0256 usb0: usb@c9040000 {
0257 compatible = "snps,dwc2";
0258 #address-cells = <1>;
0259 #size-cells = <0>;
0260 reg = <0xc9040000 0x40000>;
0261 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
0262 phys = <&usb0_phy>;
0263 phy-names = "usb2-phy";
0264 g-rx-fifo-size = <512>;
0265 g-np-tx-fifo-size = <500>;
0266 g-tx-fifo-size = <256 192 128 128 128>;
0267 dr_mode = "host";
0268 status = "disabled";
0269 };
0270
0271 usb1: usb@c90c0000 {
0272 compatible = "snps,dwc2";
0273 #address-cells = <1>;
0274 #size-cells = <0>;
0275 reg = <0xc90c0000 0x40000>;
0276 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
0277 phys = <&usb1_phy>;
0278 phy-names = "usb2-phy";
0279 dr_mode = "host";
0280 status = "disabled";
0281 };
0282
0283 ethmac: ethernet@c9410000 {
0284 compatible = "amlogic,meson6-dwmac", "snps,dwmac";
0285 reg = <0xc9410000 0x10000
0286 0xc1108108 0x4>;
0287 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
0288 interrupt-names = "macirq";
0289 status = "disabled";
0290 };
0291
0292 ahb_sram: sram@d9000000 {
0293 compatible = "mmio-sram";
0294 reg = <0xd9000000 0x20000>;
0295 #address-cells = <1>;
0296 #size-cells = <1>;
0297 ranges = <0 0xd9000000 0x20000>;
0298 };
0299
0300 bootrom: bootrom@d9040000 {
0301 compatible = "amlogic,meson-mx-bootrom", "syscon";
0302 reg = <0xd9040000 0x10000>;
0303 };
0304
0305 secbus: secbus@da000000 {
0306 compatible = "simple-bus";
0307 reg = <0xda000000 0x6000>;
0308 #address-cells = <1>;
0309 #size-cells = <1>;
0310 ranges = <0x0 0xda000000 0x6000>;
0311
0312 efuse: nvmem@0 {
0313 compatible = "amlogic,meson6-efuse";
0314 reg = <0x0 0x2000>;
0315 #address-cells = <1>;
0316 #size-cells = <1>;
0317 };
0318 };
0319 };
0320
0321 thermal_sensor: thermal-sensor {
0322 compatible = "generic-adc-thermal";
0323 #thermal-sensor-cells = <0>;
0324 io-channels = <&saradc 8>;
0325 io-channel-names = "sensor-channel";
0326 };
0327
0328 xtal: xtal-clk {
0329 compatible = "fixed-clock";
0330 clock-frequency = <24000000>;
0331 clock-output-names = "xtal";
0332 #clock-cells = <0>;
0333 };
0334 }; /* end of / */