1*724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright (c) 2017-2019 Andreas Färber 4*724ba675SRob Herring */ 5*724ba675SRob Herring 6*724ba675SRob Herring/memreserve/ 0x00000000 0x0000a800; /* boot code */ 7*724ba675SRob Herring/memreserve/ 0x0000a800 0x000f5800; 8*724ba675SRob Herring/memreserve/ 0x17fff000 0x00001000; 9*724ba675SRob Herring 10*724ba675SRob Herring#include <dt-bindings/interrupt-controller/arm-gic.h> 11*724ba675SRob Herring#include <dt-bindings/reset/realtek,rtd1195.h> 12*724ba675SRob Herring 13*724ba675SRob Herring/ { 14*724ba675SRob Herring compatible = "realtek,rtd1195"; 15*724ba675SRob Herring interrupt-parent = <&gic>; 16*724ba675SRob Herring #address-cells = <1>; 17*724ba675SRob Herring #size-cells = <1>; 18*724ba675SRob Herring 19*724ba675SRob Herring cpus { 20*724ba675SRob Herring #address-cells = <1>; 21*724ba675SRob Herring #size-cells = <0>; 22*724ba675SRob Herring 23*724ba675SRob Herring cpu0: cpu@0 { 24*724ba675SRob Herring device_type = "cpu"; 25*724ba675SRob Herring compatible = "arm,cortex-a7"; 26*724ba675SRob Herring reg = <0x0>; 27*724ba675SRob Herring clock-frequency = <1000000000>; 28*724ba675SRob Herring }; 29*724ba675SRob Herring 30*724ba675SRob Herring cpu1: cpu@1 { 31*724ba675SRob Herring device_type = "cpu"; 32*724ba675SRob Herring compatible = "arm,cortex-a7"; 33*724ba675SRob Herring reg = <0x1>; 34*724ba675SRob Herring clock-frequency = <1000000000>; 35*724ba675SRob Herring }; 36*724ba675SRob Herring }; 37*724ba675SRob Herring 38*724ba675SRob Herring reserved-memory { 39*724ba675SRob Herring #address-cells = <1>; 40*724ba675SRob Herring #size-cells = <1>; 41*724ba675SRob Herring ranges; 42*724ba675SRob Herring 43*724ba675SRob Herring rpc_comm: rpc@b000 { 44*724ba675SRob Herring reg = <0x0000b000 0x1000>; 45*724ba675SRob Herring }; 46*724ba675SRob Herring 47*724ba675SRob Herring audio@1b00000 { 48*724ba675SRob Herring reg = <0x01b00000 0x400000>; 49*724ba675SRob Herring }; 50*724ba675SRob Herring 51*724ba675SRob Herring rpc_ringbuf: rpc@1ffe000 { 52*724ba675SRob Herring reg = <0x01ffe000 0x4000>; 53*724ba675SRob Herring }; 54*724ba675SRob Herring 55*724ba675SRob Herring secure@10000000 { 56*724ba675SRob Herring reg = <0x10000000 0x100000>; 57*724ba675SRob Herring no-map; 58*724ba675SRob Herring }; 59*724ba675SRob Herring }; 60*724ba675SRob Herring 61*724ba675SRob Herring arm-pmu { 62*724ba675SRob Herring compatible = "arm,cortex-a7-pmu"; 63*724ba675SRob Herring interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, 64*724ba675SRob Herring <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 65*724ba675SRob Herring interrupt-affinity = <&cpu0>, <&cpu1>; 66*724ba675SRob Herring }; 67*724ba675SRob Herring 68*724ba675SRob Herring timer { 69*724ba675SRob Herring compatible = "arm,armv7-timer"; 70*724ba675SRob Herring interrupts = <GIC_PPI 13 71*724ba675SRob Herring (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, 72*724ba675SRob Herring <GIC_PPI 14 73*724ba675SRob Herring (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, 74*724ba675SRob Herring <GIC_PPI 11 75*724ba675SRob Herring (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, 76*724ba675SRob Herring <GIC_PPI 10 77*724ba675SRob Herring (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>; 78*724ba675SRob Herring clock-frequency = <27000000>; 79*724ba675SRob Herring }; 80*724ba675SRob Herring 81*724ba675SRob Herring osc27M: osc { 82*724ba675SRob Herring compatible = "fixed-clock"; 83*724ba675SRob Herring clock-frequency = <27000000>; 84*724ba675SRob Herring #clock-cells = <0>; 85*724ba675SRob Herring clock-output-names = "osc27M"; 86*724ba675SRob Herring }; 87*724ba675SRob Herring 88*724ba675SRob Herring soc { 89*724ba675SRob Herring compatible = "simple-bus"; 90*724ba675SRob Herring #address-cells = <1>; 91*724ba675SRob Herring #size-cells = <1>; 92*724ba675SRob Herring ranges = <0x00000000 0x00000000 0x0000a800>, 93*724ba675SRob Herring <0x18000000 0x18000000 0x00070000>, 94*724ba675SRob Herring <0x18100000 0x18100000 0x01000000>, 95*724ba675SRob Herring <0x80000000 0x80000000 0x80000000>; 96*724ba675SRob Herring 97*724ba675SRob Herring rbus: bus@18000000 { 98*724ba675SRob Herring compatible = "simple-bus"; 99*724ba675SRob Herring reg = <0x18000000 0x70000>; 100*724ba675SRob Herring #address-cells = <1>; 101*724ba675SRob Herring #size-cells = <1>; 102*724ba675SRob Herring ranges = <0x0 0x18000000 0x70000>; 103*724ba675SRob Herring 104*724ba675SRob Herring crt: syscon@0 { 105*724ba675SRob Herring compatible = "syscon", "simple-mfd"; 106*724ba675SRob Herring reg = <0x0 0x1000>; 107*724ba675SRob Herring reg-io-width = <4>; 108*724ba675SRob Herring #address-cells = <1>; 109*724ba675SRob Herring #size-cells = <1>; 110*724ba675SRob Herring ranges = <0x0 0x0 0x1000>; 111*724ba675SRob Herring }; 112*724ba675SRob Herring 113*724ba675SRob Herring iso: syscon@7000 { 114*724ba675SRob Herring compatible = "syscon", "simple-mfd"; 115*724ba675SRob Herring reg = <0x7000 0x1000>; 116*724ba675SRob Herring reg-io-width = <4>; 117*724ba675SRob Herring #address-cells = <1>; 118*724ba675SRob Herring #size-cells = <1>; 119*724ba675SRob Herring ranges = <0x0 0x7000 0x1000>; 120*724ba675SRob Herring }; 121*724ba675SRob Herring 122*724ba675SRob Herring sb2: syscon@1a000 { 123*724ba675SRob Herring compatible = "syscon", "simple-mfd"; 124*724ba675SRob Herring reg = <0x1a000 0x1000>; 125*724ba675SRob Herring reg-io-width = <4>; 126*724ba675SRob Herring #address-cells = <1>; 127*724ba675SRob Herring #size-cells = <1>; 128*724ba675SRob Herring ranges = <0x0 0x1a000 0x1000>; 129*724ba675SRob Herring }; 130*724ba675SRob Herring 131*724ba675SRob Herring misc: syscon@1b000 { 132*724ba675SRob Herring compatible = "syscon", "simple-mfd"; 133*724ba675SRob Herring reg = <0x1b000 0x1000>; 134*724ba675SRob Herring reg-io-width = <4>; 135*724ba675SRob Herring #address-cells = <1>; 136*724ba675SRob Herring #size-cells = <1>; 137*724ba675SRob Herring ranges = <0x0 0x1b000 0x1000>; 138*724ba675SRob Herring }; 139*724ba675SRob Herring 140*724ba675SRob Herring scpu_wrapper: syscon@1d000 { 141*724ba675SRob Herring compatible = "syscon", "simple-mfd"; 142*724ba675SRob Herring reg = <0x1d000 0x1000>; 143*724ba675SRob Herring reg-io-width = <4>; 144*724ba675SRob Herring #address-cells = <1>; 145*724ba675SRob Herring #size-cells = <1>; 146*724ba675SRob Herring ranges = <0x0 0x1d000 0x1000>; 147*724ba675SRob Herring }; 148*724ba675SRob Herring }; 149*724ba675SRob Herring 150*724ba675SRob Herring gic: interrupt-controller@ff011000 { 151*724ba675SRob Herring compatible = "arm,cortex-a7-gic"; 152*724ba675SRob Herring reg = <0xff011000 0x1000>, 153*724ba675SRob Herring <0xff012000 0x2000>, 154*724ba675SRob Herring <0xff014000 0x2000>, 155*724ba675SRob Herring <0xff016000 0x2000>; 156*724ba675SRob Herring interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>; 157*724ba675SRob Herring interrupt-controller; 158*724ba675SRob Herring #interrupt-cells = <3>; 159*724ba675SRob Herring }; 160*724ba675SRob Herring }; 161*724ba675SRob Herring}; 162*724ba675SRob Herring 163*724ba675SRob Herring&crt { 164*724ba675SRob Herring reset1: reset-controller@0 { 165*724ba675SRob Herring compatible = "snps,dw-low-reset"; 166*724ba675SRob Herring reg = <0x0 0x4>; 167*724ba675SRob Herring #reset-cells = <1>; 168*724ba675SRob Herring }; 169*724ba675SRob Herring 170*724ba675SRob Herring reset2: reset-controller@4 { 171*724ba675SRob Herring compatible = "snps,dw-low-reset"; 172*724ba675SRob Herring reg = <0x4 0x4>; 173*724ba675SRob Herring #reset-cells = <1>; 174*724ba675SRob Herring }; 175*724ba675SRob Herring 176*724ba675SRob Herring reset3: reset-controller@8 { 177*724ba675SRob Herring compatible = "snps,dw-low-reset"; 178*724ba675SRob Herring reg = <0x8 0x4>; 179*724ba675SRob Herring #reset-cells = <1>; 180*724ba675SRob Herring }; 181*724ba675SRob Herring}; 182*724ba675SRob Herring 183*724ba675SRob Herring&iso { 184*724ba675SRob Herring iso_reset: reset-controller@88 { 185*724ba675SRob Herring compatible = "snps,dw-low-reset"; 186*724ba675SRob Herring reg = <0x88 0x4>; 187*724ba675SRob Herring #reset-cells = <1>; 188*724ba675SRob Herring }; 189*724ba675SRob Herring 190*724ba675SRob Herring wdt: watchdog@680 { 191*724ba675SRob Herring compatible = "realtek,rtd1295-watchdog"; 192*724ba675SRob Herring reg = <0x680 0x100>; 193*724ba675SRob Herring clocks = <&osc27M>; 194*724ba675SRob Herring }; 195*724ba675SRob Herring 196*724ba675SRob Herring uart0: serial@800 { 197*724ba675SRob Herring compatible = "snps,dw-apb-uart"; 198*724ba675SRob Herring reg = <0x800 0x400>; 199*724ba675SRob Herring reg-shift = <2>; 200*724ba675SRob Herring reg-io-width = <4>; 201*724ba675SRob Herring resets = <&iso_reset RTD1195_ISO_RSTN_UR0>; 202*724ba675SRob Herring clock-frequency = <27000000>; 203*724ba675SRob Herring status = "disabled"; 204*724ba675SRob Herring }; 205*724ba675SRob Herring}; 206*724ba675SRob Herring 207*724ba675SRob Herring&misc { 208*724ba675SRob Herring uart1: serial@200 { 209*724ba675SRob Herring compatible = "snps,dw-apb-uart"; 210*724ba675SRob Herring reg = <0x200 0x100>; 211*724ba675SRob Herring reg-shift = <2>; 212*724ba675SRob Herring reg-io-width = <4>; 213*724ba675SRob Herring resets = <&reset2 RTD1195_RSTN_UR1>; 214*724ba675SRob Herring clock-frequency = <27000000>; 215*724ba675SRob Herring status = "disabled"; 216*724ba675SRob Herring }; 217*724ba675SRob Herring}; 218