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