blob: fda0f55c614136133c22a1c6ab553358d5e4c21c [file] [log] [blame]
Manoj Kumar779e4152020-07-31 12:32:36 +01001/*
sahilcb397d62023-05-25 13:47:13 +05302 * Copyright (c) 2020-2023, Arm Limited. All rights reserved.
Manoj Kumar779e4152020-07-31 12:32:36 +01003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7/dts-v1/;
8#include "morello.dtsi"
9
10/ {
Andre Przywara60b126a2022-03-24 11:55:57 +000011 model = "Arm Morello Fixed Virtual Platform";
Manoj Kumar779e4152020-07-31 12:32:36 +010012
13 chosen {
Nikos Nikoleris35800bd2021-01-21 13:50:25 +000014 stdout-path = "serial0:115200n8";
Manoj Kumar779e4152020-07-31 12:32:36 +010015 };
16
17 reserved-memory {
18 #address-cells = <2>;
19 #size-cells = <2>;
20 ranges;
21
22 secure-firmware@ff000000 {
23 reg = <0 0xff000000 0 0x01000000>;
24 no-map;
25 };
26 };
27
sahilcb397d62023-05-25 13:47:13 +053028 /*
29 * The timings below are just to demonstrate working cpuidle.
30 * These values may be inaccurate.
31 */
32 idle-states {
33 entry-method = "psci";
34
35 cluster_sleep: cluster-sleep {
36 compatible = "arm,idle-state";
37 arm,psci-suspend-param = <0x40000022>;
38 local-timer-stop;
39 entry-latency-us = <500>;
40 exit-latency-us = <1000>;
41 min-residency-us = <2500>;
42 };
43
44 cpu_sleep: cpu-sleep {
45 compatible = "arm,idle-state";
46 arm,psci-suspend-param = <0x40000002>;
47 local-timer-stop;
48 entry-latency-us = <150>;
49 exit-latency-us = <300>;
50 min-residency-us = <200>;
51 };
52 };
53
Manoj Kumar779e4152020-07-31 12:32:36 +010054 cpus {
55 #address-cells = <2>;
56 #size-cells = <0>;
Anurag Koule97c3842021-05-05 02:32:55 +010057
58 cpu-map {
59 cluster0 {
60 core0 {
61 cpu = <&CPU0>;
62 };
63 core1 {
64 cpu = <&CPU1>;
65 };
66 };
67 cluster1 {
68 core0 {
69 cpu = <&CPU2>;
70 };
71 core1 {
72 cpu = <&CPU3>;
73 };
74 };
75 };
76 CPU0: cpu0@0 {
Manoj Kumar779e4152020-07-31 12:32:36 +010077 compatible = "arm,armv8";
78 reg = <0x0 0x0>;
79 device_type = "cpu";
80 enable-method = "psci";
81 clocks = <&scmi_dvfs 0>;
sahilcb397d62023-05-25 13:47:13 +053082 cpu-idle-states = <&cpu_sleep &cluster_sleep>;
Manoj Kumar779e4152020-07-31 12:32:36 +010083 };
Anurag Koule97c3842021-05-05 02:32:55 +010084 CPU1: cpu1@100 {
Manoj Kumar779e4152020-07-31 12:32:36 +010085 compatible = "arm,armv8";
86 reg = <0x0 0x100>;
87 device_type = "cpu";
88 enable-method = "psci";
89 clocks = <&scmi_dvfs 0>;
sahilcb397d62023-05-25 13:47:13 +053090 cpu-idle-states = <&cpu_sleep &cluster_sleep>;
Manoj Kumar779e4152020-07-31 12:32:36 +010091 };
Anurag Koule97c3842021-05-05 02:32:55 +010092 CPU2: cpu2@10000 {
Manoj Kumar779e4152020-07-31 12:32:36 +010093 compatible = "arm,armv8";
94 reg = <0x0 0x10000>;
95 device_type = "cpu";
96 enable-method = "psci";
Anurag Koule97c3842021-05-05 02:32:55 +010097 clocks = <&scmi_dvfs 1>;
sahilcb397d62023-05-25 13:47:13 +053098 cpu-idle-states = <&cpu_sleep &cluster_sleep>;
Manoj Kumar779e4152020-07-31 12:32:36 +010099 };
Anurag Koule97c3842021-05-05 02:32:55 +0100100 CPU3: cpu3@10100 {
Manoj Kumar779e4152020-07-31 12:32:36 +0100101 compatible = "arm,armv8";
102 reg = <0x0 0x10100>;
103 device_type = "cpu";
104 enable-method = "psci";
Anurag Koule97c3842021-05-05 02:32:55 +0100105 clocks = <&scmi_dvfs 1>;
sahilcb397d62023-05-25 13:47:13 +0530106 cpu-idle-states = <&cpu_sleep &cluster_sleep>;
Manoj Kumar779e4152020-07-31 12:32:36 +0100107 };
108 };
109
110 /* The first bank of memory, memory map is actually provided by UEFI. */
111 memory@80000000 {
Manoj Kumar779e4152020-07-31 12:32:36 +0100112 device_type = "memory";
113 /* [0x80000000-0xffffffff] */
114 reg = <0x00000000 0x80000000 0x0 0x80000000>;
115 };
116
117 memory@8080000000 {
Manoj Kumar779e4152020-07-31 12:32:36 +0100118 device_type = "memory";
119 /* [0x8080000000-0x83ffffffff] */
120 reg = <0x00000080 0x80000000 0x1 0x80000000>;
121 };
122
123 virtio_block@1c170000 {
124 compatible = "virtio,mmio";
125 reg = <0x0 0x1c170000 0x0 0x200>;
126 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
127 };
128
Jessica Clarke848a1a32020-10-25 18:18:47 +0000129 virtio_net@1c180000 {
130 compatible = "virtio,mmio";
131 reg = <0x0 0x1c180000 0x0 0x200>;
132 interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
133 };
134
Jagadeesh Ujjaf273d6d2020-10-07 13:39:55 +0530135 virtio_rng@1c190000 {
Jessica Clarke60253ae2020-10-25 18:10:24 +0000136 compatible = "virtio,mmio";
Jagadeesh Ujjaf273d6d2020-10-07 13:39:55 +0530137 reg = <0x0 0x1c190000 0x0 0x200>;
138 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
139 };
140
sah01514208a2021-02-12 13:53:05 +0530141 virtio_p9@1c1a0000 {
142 compatible = "virtio,mmio";
143 reg = <0x0 0x1c1a0000 0x0 0x200>;
144 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
145 };
146
Manoj Kumar779e4152020-07-31 12:32:36 +0100147 ethernet@1d100000 {
148 compatible = "smsc,lan91c111";
149 reg = <0x0 0x1d100000 0x0 0x10000>;
150 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
151 };
152
153 kmi@1c150000 {
154 compatible = "arm,pl050", "arm,primecell";
155 reg = <0x0 0x1c150000 0x0 0x1000>;
156 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
157 clocks = <&bp_clock24mhz>, <&bp_clock24mhz>;
158 clock-names = "KMIREFCLK", "apb_pclk";
159 };
160
161 kmi@1c160000 {
162 compatible = "arm,pl050", "arm,primecell";
163 reg = <0x0 0x1c160000 0x0 0x1000>;
164 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
165 clocks = <&bp_clock24mhz>, <&bp_clock24mhz>;
166 clock-names = "KMIREFCLK", "apb_pclk";
167 };
168
169 firmware {
170 scmi {
171 compatible = "arm,scmi";
172 mbox-names = "tx", "rx";
Andre Przywara28a21962022-03-24 11:58:10 +0000173 mboxes = <&mailbox 1 0>, <&mailbox 1 1>;
174 shmem = <&cpu_scp_hpri0>, <&cpu_scp_hpri1>;
Manoj Kumar779e4152020-07-31 12:32:36 +0100175 #address-cells = <1>;
176 #size-cells = <0>;
177
178 scmi_dvfs: protocol@13 {
179 reg = <0x13>;
180 #clock-cells = <1>;
181 };
182 };
183 };
184
185 bp_clock24mhz: clock24mhz {
186 compatible = "fixed-clock";
187 #clock-cells = <0>;
188 clock-frequency = <24000000>;
189 clock-output-names = "bp:clock24mhz";
190 };
191};
192
193&gic {
194 reg = <0x0 0x30000000 0 0x10000>, /* GICD */
195 <0x0 0x300c0000 0 0x80000>; /* GICR */
196 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
197};