162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (c) 2017-2019 Andreas Färber 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci/memreserve/ 0x00000000 0x0000a800; /* boot code */ 762306a36Sopenharmony_ci/memreserve/ 0x0000a800 0x000f5800; 862306a36Sopenharmony_ci/memreserve/ 0x17fff000 0x00001000; 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 1162306a36Sopenharmony_ci#include <dt-bindings/reset/realtek,rtd1195.h> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/ { 1462306a36Sopenharmony_ci compatible = "realtek,rtd1195"; 1562306a36Sopenharmony_ci interrupt-parent = <&gic>; 1662306a36Sopenharmony_ci #address-cells = <1>; 1762306a36Sopenharmony_ci #size-cells = <1>; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci cpus { 2062306a36Sopenharmony_ci #address-cells = <1>; 2162306a36Sopenharmony_ci #size-cells = <0>; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci cpu0: cpu@0 { 2462306a36Sopenharmony_ci device_type = "cpu"; 2562306a36Sopenharmony_ci compatible = "arm,cortex-a7"; 2662306a36Sopenharmony_ci reg = <0x0>; 2762306a36Sopenharmony_ci clock-frequency = <1000000000>; 2862306a36Sopenharmony_ci }; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci cpu1: cpu@1 { 3162306a36Sopenharmony_ci device_type = "cpu"; 3262306a36Sopenharmony_ci compatible = "arm,cortex-a7"; 3362306a36Sopenharmony_ci reg = <0x1>; 3462306a36Sopenharmony_ci clock-frequency = <1000000000>; 3562306a36Sopenharmony_ci }; 3662306a36Sopenharmony_ci }; 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci reserved-memory { 3962306a36Sopenharmony_ci #address-cells = <1>; 4062306a36Sopenharmony_ci #size-cells = <1>; 4162306a36Sopenharmony_ci ranges; 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci rpc_comm: rpc@b000 { 4462306a36Sopenharmony_ci reg = <0x0000b000 0x1000>; 4562306a36Sopenharmony_ci }; 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci audio@1b00000 { 4862306a36Sopenharmony_ci reg = <0x01b00000 0x400000>; 4962306a36Sopenharmony_ci }; 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci rpc_ringbuf: rpc@1ffe000 { 5262306a36Sopenharmony_ci reg = <0x01ffe000 0x4000>; 5362306a36Sopenharmony_ci }; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci secure@10000000 { 5662306a36Sopenharmony_ci reg = <0x10000000 0x100000>; 5762306a36Sopenharmony_ci no-map; 5862306a36Sopenharmony_ci }; 5962306a36Sopenharmony_ci }; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci arm-pmu { 6262306a36Sopenharmony_ci compatible = "arm,cortex-a7-pmu"; 6362306a36Sopenharmony_ci interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, 6462306a36Sopenharmony_ci <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 6562306a36Sopenharmony_ci interrupt-affinity = <&cpu0>, <&cpu1>; 6662306a36Sopenharmony_ci }; 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci timer { 6962306a36Sopenharmony_ci compatible = "arm,armv7-timer"; 7062306a36Sopenharmony_ci interrupts = <GIC_PPI 13 7162306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, 7262306a36Sopenharmony_ci <GIC_PPI 14 7362306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, 7462306a36Sopenharmony_ci <GIC_PPI 11 7562306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, 7662306a36Sopenharmony_ci <GIC_PPI 10 7762306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>; 7862306a36Sopenharmony_ci clock-frequency = <27000000>; 7962306a36Sopenharmony_ci }; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci osc27M: osc { 8262306a36Sopenharmony_ci compatible = "fixed-clock"; 8362306a36Sopenharmony_ci clock-frequency = <27000000>; 8462306a36Sopenharmony_ci #clock-cells = <0>; 8562306a36Sopenharmony_ci clock-output-names = "osc27M"; 8662306a36Sopenharmony_ci }; 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci soc { 8962306a36Sopenharmony_ci compatible = "simple-bus"; 9062306a36Sopenharmony_ci #address-cells = <1>; 9162306a36Sopenharmony_ci #size-cells = <1>; 9262306a36Sopenharmony_ci ranges = <0x00000000 0x00000000 0x0000a800>, 9362306a36Sopenharmony_ci <0x18000000 0x18000000 0x00070000>, 9462306a36Sopenharmony_ci <0x18100000 0x18100000 0x01000000>, 9562306a36Sopenharmony_ci <0x80000000 0x80000000 0x80000000>; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci rbus: bus@18000000 { 9862306a36Sopenharmony_ci compatible = "simple-bus"; 9962306a36Sopenharmony_ci reg = <0x18000000 0x70000>; 10062306a36Sopenharmony_ci #address-cells = <1>; 10162306a36Sopenharmony_ci #size-cells = <1>; 10262306a36Sopenharmony_ci ranges = <0x0 0x18000000 0x70000>; 10362306a36Sopenharmony_ci 10462306a36Sopenharmony_ci crt: syscon@0 { 10562306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 10662306a36Sopenharmony_ci reg = <0x0 0x1000>; 10762306a36Sopenharmony_ci reg-io-width = <4>; 10862306a36Sopenharmony_ci #address-cells = <1>; 10962306a36Sopenharmony_ci #size-cells = <1>; 11062306a36Sopenharmony_ci ranges = <0x0 0x0 0x1000>; 11162306a36Sopenharmony_ci }; 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci iso: syscon@7000 { 11462306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 11562306a36Sopenharmony_ci reg = <0x7000 0x1000>; 11662306a36Sopenharmony_ci reg-io-width = <4>; 11762306a36Sopenharmony_ci #address-cells = <1>; 11862306a36Sopenharmony_ci #size-cells = <1>; 11962306a36Sopenharmony_ci ranges = <0x0 0x7000 0x1000>; 12062306a36Sopenharmony_ci }; 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ci sb2: syscon@1a000 { 12362306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 12462306a36Sopenharmony_ci reg = <0x1a000 0x1000>; 12562306a36Sopenharmony_ci reg-io-width = <4>; 12662306a36Sopenharmony_ci #address-cells = <1>; 12762306a36Sopenharmony_ci #size-cells = <1>; 12862306a36Sopenharmony_ci ranges = <0x0 0x1a000 0x1000>; 12962306a36Sopenharmony_ci }; 13062306a36Sopenharmony_ci 13162306a36Sopenharmony_ci misc: syscon@1b000 { 13262306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 13362306a36Sopenharmony_ci reg = <0x1b000 0x1000>; 13462306a36Sopenharmony_ci reg-io-width = <4>; 13562306a36Sopenharmony_ci #address-cells = <1>; 13662306a36Sopenharmony_ci #size-cells = <1>; 13762306a36Sopenharmony_ci ranges = <0x0 0x1b000 0x1000>; 13862306a36Sopenharmony_ci }; 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci scpu_wrapper: syscon@1d000 { 14162306a36Sopenharmony_ci compatible = "syscon", "simple-mfd"; 14262306a36Sopenharmony_ci reg = <0x1d000 0x1000>; 14362306a36Sopenharmony_ci reg-io-width = <4>; 14462306a36Sopenharmony_ci #address-cells = <1>; 14562306a36Sopenharmony_ci #size-cells = <1>; 14662306a36Sopenharmony_ci ranges = <0x0 0x1d000 0x1000>; 14762306a36Sopenharmony_ci }; 14862306a36Sopenharmony_ci }; 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci gic: interrupt-controller@ff011000 { 15162306a36Sopenharmony_ci compatible = "arm,cortex-a7-gic"; 15262306a36Sopenharmony_ci reg = <0xff011000 0x1000>, 15362306a36Sopenharmony_ci <0xff012000 0x2000>, 15462306a36Sopenharmony_ci <0xff014000 0x2000>, 15562306a36Sopenharmony_ci <0xff016000 0x2000>; 15662306a36Sopenharmony_ci interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>; 15762306a36Sopenharmony_ci interrupt-controller; 15862306a36Sopenharmony_ci #interrupt-cells = <3>; 15962306a36Sopenharmony_ci }; 16062306a36Sopenharmony_ci }; 16162306a36Sopenharmony_ci}; 16262306a36Sopenharmony_ci 16362306a36Sopenharmony_ci&crt { 16462306a36Sopenharmony_ci reset1: reset-controller@0 { 16562306a36Sopenharmony_ci compatible = "snps,dw-low-reset"; 16662306a36Sopenharmony_ci reg = <0x0 0x4>; 16762306a36Sopenharmony_ci #reset-cells = <1>; 16862306a36Sopenharmony_ci }; 16962306a36Sopenharmony_ci 17062306a36Sopenharmony_ci reset2: reset-controller@4 { 17162306a36Sopenharmony_ci compatible = "snps,dw-low-reset"; 17262306a36Sopenharmony_ci reg = <0x4 0x4>; 17362306a36Sopenharmony_ci #reset-cells = <1>; 17462306a36Sopenharmony_ci }; 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci reset3: reset-controller@8 { 17762306a36Sopenharmony_ci compatible = "snps,dw-low-reset"; 17862306a36Sopenharmony_ci reg = <0x8 0x4>; 17962306a36Sopenharmony_ci #reset-cells = <1>; 18062306a36Sopenharmony_ci }; 18162306a36Sopenharmony_ci}; 18262306a36Sopenharmony_ci 18362306a36Sopenharmony_ci&iso { 18462306a36Sopenharmony_ci iso_reset: reset-controller@88 { 18562306a36Sopenharmony_ci compatible = "snps,dw-low-reset"; 18662306a36Sopenharmony_ci reg = <0x88 0x4>; 18762306a36Sopenharmony_ci #reset-cells = <1>; 18862306a36Sopenharmony_ci }; 18962306a36Sopenharmony_ci 19062306a36Sopenharmony_ci wdt: watchdog@680 { 19162306a36Sopenharmony_ci compatible = "realtek,rtd1295-watchdog"; 19262306a36Sopenharmony_ci reg = <0x680 0x100>; 19362306a36Sopenharmony_ci clocks = <&osc27M>; 19462306a36Sopenharmony_ci }; 19562306a36Sopenharmony_ci 19662306a36Sopenharmony_ci uart0: serial@800 { 19762306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 19862306a36Sopenharmony_ci reg = <0x800 0x400>; 19962306a36Sopenharmony_ci reg-shift = <2>; 20062306a36Sopenharmony_ci reg-io-width = <4>; 20162306a36Sopenharmony_ci resets = <&iso_reset RTD1195_ISO_RSTN_UR0>; 20262306a36Sopenharmony_ci clock-frequency = <27000000>; 20362306a36Sopenharmony_ci status = "disabled"; 20462306a36Sopenharmony_ci }; 20562306a36Sopenharmony_ci}; 20662306a36Sopenharmony_ci 20762306a36Sopenharmony_ci&misc { 20862306a36Sopenharmony_ci uart1: serial@200 { 20962306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 21062306a36Sopenharmony_ci reg = <0x200 0x100>; 21162306a36Sopenharmony_ci reg-shift = <2>; 21262306a36Sopenharmony_ci reg-io-width = <4>; 21362306a36Sopenharmony_ci resets = <&reset2 RTD1195_RSTN_UR1>; 21462306a36Sopenharmony_ci clock-frequency = <27000000>; 21562306a36Sopenharmony_ci status = "disabled"; 21662306a36Sopenharmony_ci }; 21762306a36Sopenharmony_ci}; 218