Merge branch 'master' of git://git.denx.de/u-boot-sh
[platform/kernel/u-boot.git] / arch / sandbox / dts / sandbox.dts
1 /dts-v1/;
2
3 #define USB_CLASS_HUB                   9
4
5 / {
6         #address-cells = <1>;
7         #size-cells = <1>;
8         model = "sandbox";
9
10         aliases {
11                 i2c0 = &i2c_0;
12                 pci0 = &pci;
13                 rtc0 = &rtc_0;
14                 axi0 = &axi;
15         };
16
17         chosen {
18                 stdout-path = "/serial";
19         };
20
21         cros_ec: cros-ec@0 {
22                 reg = <0 0>;
23                 compatible = "google,cros-ec-sandbox";
24
25                 /*
26                  * This describes the flash memory within the EC. Note
27                  * that the STM32L flash erases to 0, not 0xff.
28                  */
29                 #address-cells = <1>;
30                 #size-cells = <1>;
31                 flash@8000000 {
32                         reg = <0x08000000 0x20000>;
33                         erase-value = <0>;
34                         #address-cells = <1>;
35                         #size-cells = <1>;
36
37                         /* Information for sandbox */
38                         ro {
39                                 reg = <0 0xf000>;
40                         };
41                         wp-ro {
42                                 reg = <0xf000 0x1000>;
43                         };
44                         rw {
45                                 reg = <0x10000 0x10000>;
46                         };
47                 };
48         };
49
50         ethrawbus {
51                 compatible = "sandbox,eth-raw-bus";
52                 skip-localhost = <0>;
53         };
54
55         eth@10002000 {
56                 compatible = "sandbox,eth";
57                 reg = <0x10002000 0x1000>;
58                 fake-host-hwaddr = [00 00 66 44 22 00];
59         };
60
61         gpio_a: gpios@0 {
62                 gpio-controller;
63                 compatible = "sandbox,gpio";
64                 #gpio-cells = <1>;
65                 gpio-bank-name = "a";
66                 sandbox,gpio-count = <20>;
67         };
68
69         gpio_b: gpios@1 {
70                 gpio-controller;
71                 compatible = "sandbox,gpio";
72                 #gpio-cells = <2>;
73                 gpio-bank-name = "b";
74                 sandbox,gpio-count = <10>;
75         };
76
77         hexagon {
78                 compatible = "demo-simple";
79                 colour = "white";
80                 sides = <6>;
81         };
82
83         i2c_0: i2c@0 {
84                 #address-cells = <1>;
85                 #size-cells = <0>;
86                 reg = <0 0>;
87                 compatible = "sandbox,i2c";
88                 clock-frequency = <400000>;
89                 pinctrl-names = "default";
90                 pinctrl-0 = <&pinctrl_i2c0>;
91                 eeprom@2c {
92                         reg = <0x2c>;
93                         compatible = "i2c-eeprom";
94                         emul {
95                                 compatible = "sandbox,i2c-eeprom";
96                                 sandbox,filename = "i2c.bin";
97                                 sandbox,size = <128>;
98                         };
99                 };
100
101                 rtc_0: rtc@43 {
102                         reg = <0x43>;
103                         compatible = "sandbox-rtc";
104                         emul {
105                                 compatible = "sandbox,i2c-rtc";
106                         };
107                 };
108                 sandbox_pmic: sandbox_pmic {
109                         reg = <0x40>;
110                 };
111
112                 mc34708: pmic@41 {
113                         reg = <0x41>;
114                 };
115         };
116
117         lcd {
118                 u-boot,dm-pre-reloc;
119                 compatible = "sandbox,lcd-sdl";
120                 xres = <1366>;
121                 yres = <768>;
122         };
123
124         leds {
125                 compatible = "gpio-leds";
126
127                 iracibble {
128                         gpios = <&gpio_a 1 0>;
129                         label = "sandbox:red";
130                 };
131
132                 martinet {
133                         gpios = <&gpio_a 2 0>;
134                         label = "sandbox:green";
135                 };
136         };
137
138         pci: pci-controller {
139                 compatible = "sandbox,pci";
140                 device_type = "pci";
141                 #address-cells = <3>;
142                 #size-cells = <2>;
143                 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000
144                                 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
145                 pci@1f,0 {
146                         compatible = "pci-generic";
147                         reg = <0xf800 0 0 0 0>;
148                         emul@1f,0 {
149                                 compatible = "sandbox,swap-case";
150                         };
151                 };
152         };
153
154         pinctrl {
155                 compatible = "sandbox,pinctrl";
156                 status = "okay";
157
158                 pinctrl_i2c0: i2c0 {
159                         groups = "i2c";
160                         function = "i2c";
161                         bias-pull-up;
162                 };
163
164                 pinctrl_serial0: uart0 {
165                         groups = "serial_a";
166                         function = "serial";
167                 };
168
169                 pinctrl_onewire0: onewire0 {
170                         groups = "w1";
171                         function = "w1";
172                         bias-pull-up;
173                 };
174         };
175
176         reset@1 {
177                 compatible = "sandbox,reset";
178         };
179
180         spi@0 {
181                 #address-cells = <1>;
182                 #size-cells = <0>;
183                 reg = <0 0>;
184                 compatible = "sandbox,spi";
185                 cs-gpios = <0>, <&gpio_a 0>;
186                 firmware_storage_spi: flash@0 {
187                         reg = <0>;
188                         compatible = "spansion,m25p16", "sandbox,spi-flash";
189                         spi-max-frequency = <40000000>;
190                         sandbox,filename = "spi.bin";
191                 };
192         };
193
194         spl-test {
195                 u-boot,dm-pre-reloc;
196                 compatible = "sandbox,spl-test";
197                 boolval;
198                 intval = <1>;
199                 intarray = <2 3 4>;
200                 byteval = [05];
201                 bytearray = [06];
202                 longbytearray = [09 0a 0b 0c 0d 0e 0f 10 11];
203                 stringval = "message";
204                 stringarray = "multi-word", "message";
205         };
206
207         spl-test2 {
208                 u-boot,dm-pre-reloc;
209                 compatible = "sandbox,spl-test";
210                 intval = <3>;
211                 intarray = <5>;
212                 byteval = [08];
213                 bytearray = [01 23 34];
214                 longbytearray = [09 0a 0b 0c];
215                 stringval = "message2";
216                 stringarray = "another", "multi-word", "message";
217         };
218
219         spl-test3 {
220                 u-boot,dm-pre-reloc;
221                 compatible = "sandbox,spl-test";
222                 stringarray = "one";
223         };
224
225         spl-test4 {
226                 u-boot,dm-pre-reloc;
227                 compatible = "sandbox,spl-test.2";
228         };
229
230         square {
231                 compatible = "demo-shape";
232                 colour = "blue";
233                 sides = <4>;
234         };
235
236         timer {
237                 compatible = "sandbox,timer";
238                 clock-frequency = <1000000>;
239         };
240
241         tpm {
242                 compatible = "google,sandbox-tpm";
243         };
244
245         tpm2 {
246                 compatible = "sandbox,tpm2";
247         };
248
249         triangle {
250                 compatible = "demo-shape";
251                 colour = "cyan";
252                 sides = <3>;
253                 character = <83>;
254                 light-gpios = <&gpio_a 2>, <&gpio_b 6 0>;
255         };
256
257         /* Needs to be available prior to relocation */
258         uart0: serial {
259                 compatible = "sandbox,serial";
260                 sandbox,text-colour = "cyan";
261                 pinctrl-names = "default";
262                 pinctrl-0 = <&pinctrl_serial0>;
263         };
264
265         usb@0 {
266                 compatible = "sandbox,usb";
267                 status = "disabled";
268                 hub {
269                         compatible = "sandbox,usb-hub";
270                         #address-cells = <1>;
271                         #size-cells = <0>;
272                         flash-stick {
273                                 reg = <0>;
274                                 compatible = "sandbox,usb-flash";
275                         };
276                 };
277         };
278
279         usb@1 {
280                 compatible = "sandbox,usb";
281                 hub {
282                         compatible = "usb-hub";
283                         usb,device-class = <USB_CLASS_HUB>;
284                         hub-emul {
285                                 compatible = "sandbox,usb-hub";
286                                 #address-cells = <1>;
287                                 #size-cells = <0>;
288                                 flash-stick {
289                                         reg = <0>;
290                                         compatible = "sandbox,usb-flash";
291                                         sandbox,filepath = "flash.bin";
292                                 };
293                         };
294                 };
295         };
296
297         usb@2 {
298                 compatible = "sandbox,usb";
299                 status = "disabled";
300         };
301
302         spmi: spmi@0 {
303                 compatible = "sandbox,spmi";
304                 #address-cells = <0x1>;
305                 #size-cells = <0x1>;
306                 pm8916@0 {
307                         compatible = "qcom,spmi-pmic";
308                         reg = <0x0 0x1>;
309                         #address-cells = <0x1>;
310                         #size-cells = <0x1>;
311
312                         spmi_gpios: gpios@c000 {
313                                 compatible = "qcom,pm8916-gpio";
314                                 reg = <0xc000 0x400>;
315                                 gpio-controller;
316                                 gpio-count = <4>;
317                                 #gpio-cells = <2>;
318                                 gpio-bank-name="spmi";
319                         };
320                 };
321         };
322
323         axi: axi@0 {
324                 compatible = "sandbox,axi";
325                 #address-cells = <0x1>;
326                 #size-cells = <0x1>;
327                 store@0 {
328                         compatible = "sandbox,sandbox_store";
329                         reg = <0x0 0x400>;
330                 };
331         };
332
333         onewire0: onewire {
334                 compatible = "w1-gpio";
335                 gpios = <&gpio_a 8>;
336                 pinctrl-names = "default";
337                 pinctrl-0 = <&pinctrl_onewire0>;
338                 status = "okay";
339
340                 sandbox_eeprom0: sandbox_eeprom@0 {
341                         compatible = "sandbox,w1-eeprom";
342                         status = "okay";
343                 };
344         };
345
346         sandbox_tee {
347                 compatible = "sandbox,tee";
348         };
349 };
350
351 #include "cros-ec-keyboard.dtsi"
352 #include "sandbox_pmic.dtsi"