|
9 | 9 | #size-cells = <1>; |
10 | 10 | compatible = "sifive,FE310G-0002-Z0-dev", "fe310-dev", "sifive-dev"; |
11 | 11 | model = "SiFive,FE310G-0002-Z0"; |
| 12 | + |
12 | 13 | clocks { |
13 | 14 | coreclk: core-clk { |
14 | 15 | #clock-cells = <0>; |
|
23 | 24 | clock-div = <1>; |
24 | 25 | }; |
25 | 26 | }; |
| 27 | + |
26 | 28 | cpus { |
27 | 29 | #address-cells = <1>; |
28 | 30 | #size-cells = <0>; |
| 31 | + |
29 | 32 | cpu: cpu@0 { |
30 | 33 | compatible = "sifive,e31", "riscv"; |
31 | 34 | device_type = "cpu"; |
32 | 35 | reg = <0>; |
33 | 36 | riscv,isa = "rv32imac_zicsr_zifencei"; |
34 | 37 | status = "okay"; |
| 38 | + |
35 | 39 | hlic: interrupt-controller { |
36 | 40 | compatible = "riscv,cpu-intc"; |
37 | 41 | #address-cells = <0>; |
|
40 | 44 | }; |
41 | 45 | }; |
42 | 46 | }; |
| 47 | + |
43 | 48 | soc { |
44 | 49 | #address-cells = <1>; |
45 | 50 | #size-cells = <1>; |
46 | 51 | compatible = "sifive,FE310G-0002-Z0-soc", "fe310-soc", |
47 | | - "sifive-soc", "simple-bus"; |
| 52 | + "sifive-soc", "simple-bus"; |
48 | 53 | ranges; |
| 54 | + |
49 | 55 | wdog0: wdog@10000000 { |
50 | 56 | compatible = "sifive,wdt"; |
51 | 57 | interrupt-parent = <&plic>; |
52 | 58 | interrupts = <1 1>; |
53 | 59 | reg = <0x10000000 0x40>; |
54 | 60 | reg-names = "control"; |
55 | 61 | }; |
| 62 | + |
56 | 63 | aon: aon@10000040 { |
57 | 64 | compatible = "sifive,aon0"; |
58 | 65 | interrupt-parent = <&plic>; |
59 | 66 | interrupts = <2 1>; |
60 | 67 | reg = <0x10000040 0x9c0>; |
61 | 68 | reg-names = "control"; |
62 | 69 | }; |
| 70 | + |
63 | 71 | clint: clint@2000000 { |
64 | 72 | compatible = "sifive,clint0"; |
65 | 73 | interrupts-extended = <&hlic 3 &hlic 7>; |
66 | 74 | reg = <0x2000000 0x10000>; |
67 | 75 | }; |
| 76 | + |
68 | 77 | mtimer: timer@200bff8 { |
69 | 78 | compatible = "riscv,machine-timer"; |
70 | 79 | interrupts-extended = <&hlic 7>; |
71 | 80 | reg = <0x200bff8 0x8 0x2004000 0x8>; |
72 | 81 | reg-names = "mtime", "mtimecmp"; |
73 | 82 | }; |
| 83 | + |
74 | 84 | debug: debug-controller@0 { |
75 | 85 | compatible = "sifive,debug-013", "riscv,debug-013"; |
76 | 86 | interrupts-extended = <&hlic 65535>; |
77 | 87 | reg = <0x0 0x1000>; |
78 | 88 | reg-names = "control"; |
79 | 89 | }; |
| 90 | + |
80 | 91 | dtim: dtim@80000000 { |
81 | 92 | compatible = "sifive,dtim0"; |
82 | 93 | reg = <0x80000000 0x4000>; |
83 | 94 | reg-names = "mem"; |
84 | 95 | }; |
| 96 | + |
85 | 97 | error-device@3000 { |
86 | 98 | compatible = "sifive,error0"; |
87 | 99 | reg = <0x3000 0x1000>; |
88 | 100 | reg-names = "mem"; |
89 | 101 | }; |
| 102 | + |
90 | 103 | gpio0: gpio@10012000 { |
91 | 104 | compatible = "sifive,gpio0"; |
92 | 105 | gpio-controller; |
93 | 106 | interrupt-parent = <&plic>; |
94 | 107 | interrupts = <8 1>, <9 1>, <10 1>, <11 1>, |
95 | | - <12 1>, <13 1>, <14 1>, <15 1>, |
96 | | - <16 1>, <17 1>, <18 1>, <19 1>, |
97 | | - <20 1>, <21 1>, <22 1>, <23 1>, |
98 | | - <24 1>, <25 1>, <26 1>, <27 1>, |
99 | | - <28 1>, <29 1>, <30 1>, <31 1>, |
100 | | - <32 1>, <33 1>, <34 1>, <35 1>, |
101 | | - <36 1>, <37 1>, <38 1>, <39 1>; |
| 108 | + <12 1>, <13 1>, <14 1>, <15 1>, |
| 109 | + <16 1>, <17 1>, <18 1>, <19 1>, |
| 110 | + <20 1>, <21 1>, <22 1>, <23 1>, |
| 111 | + <24 1>, <25 1>, <26 1>, <27 1>, |
| 112 | + <28 1>, <29 1>, <30 1>, <31 1>, |
| 113 | + <32 1>, <33 1>, <34 1>, <35 1>, |
| 114 | + <36 1>, <37 1>, <38 1>, <39 1>; |
102 | 115 | reg = <0x10012000 0x1000>; |
103 | 116 | reg-names = "control"; |
104 | 117 | status = "disabled"; |
|
113 | 126 | reg = <0x10012038 0x8>; |
114 | 127 | }; |
115 | 128 | }; |
| 129 | + |
116 | 130 | i2c0: i2c@10016000 { |
117 | 131 | compatible = "sifive,i2c0"; |
118 | 132 | interrupt-parent = <&plic>; |
|
123 | 137 | #address-cells = <1>; |
124 | 138 | #size-cells = <0>; |
125 | 139 | }; |
| 140 | + |
126 | 141 | plic: interrupt-controller@c000000 { |
127 | 142 | compatible = "sifive,plic-1.0.0"; |
128 | 143 | #address-cells = <0>; |
|
133 | 148 | riscv,max-priority = <7>; |
134 | 149 | riscv,ndev = <52>; |
135 | 150 | }; |
| 151 | + |
136 | 152 | itim: itim@8000000 { |
137 | 153 | compatible = "sifive,itim0"; |
138 | 154 | reg = <0x8000000 0x2000>; |
139 | 155 | reg-names = "mem"; |
140 | 156 | }; |
| 157 | + |
141 | 158 | otp: otp@10010000 { |
142 | 159 | compatible = "sifive,otp0"; |
143 | 160 | reg = <0x10010000 0x1000 0x20000 0x2000>; |
144 | 161 | reg-names = "control", "mem"; |
145 | 162 | }; |
| 163 | + |
146 | 164 | prci: prci@10008000 { |
147 | 165 | compatible = "sifive,freedome300prci0"; |
148 | 166 | reg = <0x10008000 0x1000>; |
149 | 167 | reg-names = "control"; |
150 | 168 | }; |
| 169 | + |
151 | 170 | pwm0: pwm@10015000 { |
152 | 171 | compatible = "sifive,pwm0"; |
153 | 172 | interrupt-parent = <&plic>; |
|
158 | 177 | sifive,compare-width = <8>; |
159 | 178 | #pwm-cells = <2>; |
160 | 179 | }; |
| 180 | + |
161 | 181 | pwm1: pwm@10025000 { |
162 | 182 | compatible = "sifive,pwm0"; |
163 | 183 | interrupt-parent = <&plic>; |
|
168 | 188 | sifive,compare-width = <16>; |
169 | 189 | #pwm-cells = <2>; |
170 | 190 | }; |
| 191 | + |
171 | 192 | pwm2: pwm@10035000 { |
172 | 193 | compatible = "sifive,pwm0"; |
173 | 194 | interrupt-parent = <&plic>; |
|
178 | 199 | sifive,compare-width = <16>; |
179 | 200 | #pwm-cells = <2>; |
180 | 201 | }; |
| 202 | + |
181 | 203 | modeselect: rom@1000 { |
182 | 204 | compatible = "sifive,modeselect0"; |
183 | 205 | reg = <0x1000 0x1000>; |
184 | 206 | reg-names = "mem"; |
185 | 207 | }; |
| 208 | + |
186 | 209 | maskrom: rom@10000 { |
187 | 210 | compatible = "sifive,maskrom0"; |
188 | 211 | reg = <0x10000 0x2000>; |
189 | 212 | reg-names = "mem"; |
190 | 213 | }; |
| 214 | + |
191 | 215 | uart0: serial@10013000 { |
192 | 216 | compatible = "sifive,uart0"; |
193 | 217 | interrupt-parent = <&plic>; |
|
196 | 220 | reg-names = "control"; |
197 | 221 | status = "disabled"; |
198 | 222 | }; |
| 223 | + |
199 | 224 | uart1: serial@10023000 { |
200 | 225 | compatible = "sifive,uart0"; |
201 | 226 | interrupt-parent = <&plic>; |
|
204 | 229 | reg-names = "control"; |
205 | 230 | status = "disabled"; |
206 | 231 | }; |
| 232 | + |
207 | 233 | spi0: spi@10014000 { |
208 | 234 | compatible = "sifive,spi0"; |
209 | 235 | interrupt-parent = <&plic>; |
|
214 | 240 | #address-cells = <1>; |
215 | 241 | #size-cells = <0>; |
216 | 242 | }; |
| 243 | + |
217 | 244 | spi1: spi@10024000 { |
218 | 245 | compatible = "sifive,spi0"; |
219 | 246 | interrupt-parent = <&plic>; |
|
224 | 251 | #address-cells = <1>; |
225 | 252 | #size-cells = <0>; |
226 | 253 | }; |
| 254 | + |
227 | 255 | spi2: spi@10034000 { |
228 | 256 | compatible = "sifive,spi0"; |
229 | 257 | interrupt-parent = <&plic>; |
|
234 | 262 | #address-cells = <1>; |
235 | 263 | #size-cells = <0>; |
236 | 264 | }; |
| 265 | + |
237 | 266 | teststatus: teststatus@4000 { |
238 | 267 | compatible = "sifive,test0"; |
239 | 268 | reg = <0x4000 0x1000>; |
|
0 commit comments