riscv: qemu: Split devicetree files for qemu_riscv32/64
[platform/kernel/u-boot.git] / arch / riscv / dts / hifive-unmatched-a00.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /* Copyright (c) 2019-2021 SiFive, Inc */
3
4 #include "fu740-c000.dtsi"
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/interrupt-controller/irq.h>
7
8 /* Clock frequency (in Hz) of the PCB crystal for rtcclk */
9 #define RTCCLK_FREQ             1000000
10
11 / {
12         #address-cells = <2>;
13         #size-cells = <2>;
14         model = "SiFive HiFive Unmatched A00";
15         compatible = "sifive,hifive-unmatched-a00", "sifive,fu740-c000",
16                      "sifive,fu740";
17
18         chosen {
19                 stdout-path = "serial0";
20         };
21
22         cpus {
23                 timebase-frequency = <RTCCLK_FREQ>;
24         };
25
26         memory@80000000 {
27                 device_type = "memory";
28                 reg = <0x0 0x80000000 0x4 0x00000000>;
29         };
30
31         soc {
32         };
33
34         hfclk: hfclk {
35                 #clock-cells = <0>;
36                 compatible = "fixed-clock";
37                 clock-frequency = <26000000>;
38                 clock-output-names = "hfclk";
39         };
40
41         rtcclk: rtcclk {
42                 #clock-cells = <0>;
43                 compatible = "fixed-clock";
44                 clock-frequency = <RTCCLK_FREQ>;
45                 clock-output-names = "rtcclk";
46         };
47
48         gpio-poweroff {
49                 compatible = "gpio-poweroff";
50                 gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
51         };
52 };
53
54 &uart0 {
55         status = "okay";
56 };
57
58 &uart1 {
59         status = "okay";
60 };
61
62 &i2c0 {
63         status = "okay";
64
65         temperature-sensor@4c {
66                 compatible = "ti,tmp451";
67                 reg = <0x4c>;
68                 interrupt-parent = <&gpio>;
69                 interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
70         };
71
72         pmic@58 {
73                 compatible = "dlg,da9063";
74                 reg = <0x58>;
75                 interrupt-parent = <&gpio>;
76                 interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
77                 interrupt-controller;
78
79                 regulators {
80                         vdd_bcore1: bcore1 {
81                                 regulator-min-microvolt = <1050000>;
82                                 regulator-max-microvolt = <1050000>;
83                                 regulator-min-microamp = <5000000>;
84                                 regulator-max-microamp = <5000000>;
85                                 regulator-always-on;
86                         };
87
88                         vdd_bcore2: bcore2 {
89                                 regulator-min-microvolt = <1050000>;
90                                 regulator-max-microvolt = <1050000>;
91                                 regulator-min-microamp = <5000000>;
92                                 regulator-max-microamp = <5000000>;
93                                 regulator-always-on;
94                         };
95
96                         vdd_bpro: bpro {
97                                 regulator-min-microvolt = <1800000>;
98                                 regulator-max-microvolt = <1800000>;
99                                 regulator-min-microamp = <2500000>;
100                                 regulator-max-microamp = <2500000>;
101                                 regulator-always-on;
102                         };
103
104                         vdd_bperi: bperi {
105                                 regulator-min-microvolt = <1050000>;
106                                 regulator-max-microvolt = <1050000>;
107                                 regulator-min-microamp = <1500000>;
108                                 regulator-max-microamp = <1500000>;
109                                 regulator-always-on;
110                         };
111
112                         vdd_bmem: bmem {
113                                 regulator-min-microvolt = <1200000>;
114                                 regulator-max-microvolt = <1200000>;
115                                 regulator-min-microamp = <3000000>;
116                                 regulator-max-microamp = <3000000>;
117                                 regulator-always-on;
118                         };
119
120                         vdd_bio: bio {
121                                 regulator-min-microvolt = <1200000>;
122                                 regulator-max-microvolt = <1200000>;
123                                 regulator-min-microamp = <3000000>;
124                                 regulator-max-microamp = <3000000>;
125                                 regulator-always-on;
126                         };
127
128                         vdd_ldo1: ldo1 {
129                                 regulator-min-microvolt = <1800000>;
130                                 regulator-max-microvolt = <1800000>;
131                                 regulator-min-microamp = <100000>;
132                                 regulator-max-microamp = <100000>;
133                                 regulator-always-on;
134                         };
135
136                         vdd_ldo2: ldo2 {
137                                 regulator-min-microvolt = <1800000>;
138                                 regulator-max-microvolt = <1800000>;
139                                 regulator-min-microamp = <200000>;
140                                 regulator-max-microamp = <200000>;
141                                 regulator-always-on;
142                         };
143
144                         vdd_ldo3: ldo3 {
145                                 regulator-min-microvolt = <3300000>;
146                                 regulator-max-microvolt = <3300000>;
147                                 regulator-min-microamp = <200000>;
148                                 regulator-max-microamp = <200000>;
149                                 regulator-always-on;
150                         };
151
152                         vdd_ldo4: ldo4 {
153                                 regulator-min-microvolt = <2500000>;
154                                 regulator-max-microvolt = <2500000>;
155                                 regulator-min-microamp = <200000>;
156                                 regulator-max-microamp = <200000>;
157                                 regulator-always-on;
158                         };
159
160                         vdd_ldo5: ldo5 {
161                                 regulator-min-microvolt = <3300000>;
162                                 regulator-max-microvolt = <3300000>;
163                                 regulator-min-microamp = <100000>;
164                                 regulator-max-microamp = <100000>;
165                                 regulator-always-on;
166                         };
167
168                         vdd_ldo6: ldo6 {
169                                 regulator-min-microvolt = <1800000>;
170                                 regulator-max-microvolt = <1800000>;
171                                 regulator-min-microamp = <200000>;
172                                 regulator-max-microamp = <200000>;
173                                 regulator-always-on;
174                         };
175
176                         vdd_ldo7: ldo7 {
177                                 regulator-min-microvolt = <3300000>;
178                                 regulator-max-microvolt = <3300000>;
179                                 regulator-min-microamp = <200000>;
180                                 regulator-max-microamp = <200000>;
181                                 regulator-always-on;
182                         };
183
184                         vdd_ldo8: ldo8 {
185                                 regulator-min-microvolt = <3300000>;
186                                 regulator-max-microvolt = <3300000>;
187                                 regulator-min-microamp = <200000>;
188                                 regulator-max-microamp = <200000>;
189                                 regulator-always-on;
190                         };
191
192                         vdd_ld09: ldo9 {
193                                 regulator-min-microvolt = <1050000>;
194                                 regulator-max-microvolt = <1050000>;
195                                 regulator-min-microamp = <200000>;
196                                 regulator-max-microamp = <200000>;
197                         };
198
199                         vdd_ldo10: ldo10 {
200                                 regulator-min-microvolt = <1000000>;
201                                 regulator-max-microvolt = <1000000>;
202                                 regulator-min-microamp = <300000>;
203                                 regulator-max-microamp = <300000>;
204                         };
205
206                         vdd_ldo11: ldo11 {
207                                 regulator-min-microvolt = <2500000>;
208                                 regulator-max-microvolt = <2500000>;
209                                 regulator-min-microamp = <300000>;
210                                 regulator-max-microamp = <300000>;
211                                 regulator-always-on;
212                         };
213                 };
214         };
215 };
216
217 &qspi0 {
218         status = "okay";
219         flash@0 {
220                 compatible = "issi,is25wp256", "jedec,spi-nor";
221                 reg = <0>;
222                 spi-max-frequency = <50000000>;
223                 m25p,fast-read;
224                 spi-tx-bus-width = <4>;
225                 spi-rx-bus-width = <4>;
226         };
227 };
228
229 &spi0 {
230         status = "okay";
231         mmc@0 {
232                 compatible = "mmc-spi-slot";
233                 reg = <0>;
234                 spi-max-frequency = <20000000>;
235                 voltage-ranges = <3300 3300>;
236                 disable-wp;
237         };
238 };
239
240 &eth0 {
241         status = "okay";
242         phy-mode = "gmii";
243         phy-handle = <&phy0>;
244         phy0: ethernet-phy@0 {
245                 reg = <0>;
246         };
247 };
248
249 &pwm0 {
250         status = "okay";
251 };
252
253 &pwm1 {
254         status = "okay";
255 };
256
257 &gpio {
258         status = "okay";
259 };