blob: 683b1970e0afb80d01e98d2bebf79406a31a390c [file] [log] [blame]
Simon Glass2e7d35d2014-02-26 15:59:21 -07001/dts-v1/;
2
3/ {
4 model = "sandbox";
5 compatible = "sandbox";
6 #address-cells = <1>;
Simon Glass0503e822015-07-06 12:54:36 -06007 #size-cells = <1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -07008
Simon Glass00606d72014-07-23 06:55:03 -06009 aliases {
10 console = &uart0;
Simon Glass171e9912015-05-22 15:42:15 -060011 eth0 = "/eth@10002000";
Bin Meng71d79712015-08-27 22:25:53 -070012 eth3 = &eth_3;
Simon Glass171e9912015-05-22 15:42:15 -060013 eth5 = &eth_5;
Simon Glass9cc36a22015-01-25 08:27:05 -070014 i2c0 = "/i2c@0";
Simon Glasse48eeb92017-04-23 20:02:07 -060015 mmc0 = "/mmc0";
16 mmc1 = "/mmc1";
Przemyslaw Marczakf64000c2015-05-13 13:38:34 +020017 pci0 = &pci;
Nishanth Menon52159402015-09-17 15:42:41 -050018 remoteproc1 = &rproc_1;
19 remoteproc2 = &rproc_2;
Simon Glass52d3bc52015-05-22 15:42:17 -060020 rtc0 = &rtc_0;
21 rtc1 = &rtc_1;
Simon Glass171e9912015-05-22 15:42:15 -060022 spi0 = "/spi@0";
Przemyslaw Marczakf64000c2015-05-13 13:38:34 +020023 testfdt6 = "/e-test";
Simon Glass9cc36a22015-01-25 08:27:05 -070024 testbus3 = "/some-bus";
25 testfdt0 = "/some-bus/c-test@0";
26 testfdt1 = "/some-bus/c-test@1";
27 testfdt3 = "/b-test";
28 testfdt5 = "/some-bus/c-test@5";
29 testfdt8 = "/a-test";
Mario Sixe8d52912018-03-12 14:53:33 +010030 fdt_dummy0 = "/translation-test@8000/dev@0,0";
31 fdt_dummy1 = "/translation-test@8000/dev@1,100";
32 fdt_dummy2 = "/translation-test@8000/dev@2,200";
33 fdt_dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
Simon Glasse00cb222015-03-25 12:23:05 -060034 usb0 = &usb_0;
35 usb1 = &usb_1;
36 usb2 = &usb_2;
Simon Glass00606d72014-07-23 06:55:03 -060037 };
38
Simon Glass2e7d35d2014-02-26 15:59:21 -070039 a-test {
Simon Glass0503e822015-07-06 12:54:36 -060040 reg = <0 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070041 compatible = "denx,u-boot-fdt-test";
Simon Glasseb9ef5f2014-07-23 06:54:57 -060042 ping-expect = <0>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070043 ping-add = <0>;
Simon Glass00606d72014-07-23 06:55:03 -060044 u-boot,dm-pre-reloc;
Simon Glass3669e0e2015-01-05 20:05:29 -070045 test-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 5 0 3 2 1>,
46 <0>, <&gpio_a 12>;
47 test2-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 6 1 3 2 1>,
48 <&gpio_b 7 2 3 2 1>, <&gpio_b 8 4 3 2 1>,
49 <&gpio_b 9 0xc 3 2 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070050 };
51
52 junk {
Simon Glass0503e822015-07-06 12:54:36 -060053 reg = <1 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070054 compatible = "not,compatible";
55 };
56
57 no-compatible {
Simon Glass0503e822015-07-06 12:54:36 -060058 reg = <2 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070059 };
60
61 b-test {
Simon Glass0503e822015-07-06 12:54:36 -060062 reg = <3 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070063 compatible = "denx,u-boot-fdt-test";
Simon Glasseb9ef5f2014-07-23 06:54:57 -060064 ping-expect = <3>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070065 ping-add = <3>;
66 };
67
Jean-Jacques Hiblot86322f52017-04-24 11:51:28 +020068 phy_provider0: gen_phy@0 {
69 compatible = "sandbox,phy";
70 #phy-cells = <1>;
71 };
72
73 phy_provider1: gen_phy@1 {
74 compatible = "sandbox,phy";
75 #phy-cells = <0>;
76 broken;
77 };
78
79 gen_phy_user: gen_phy_user {
80 compatible = "simple-bus";
81 phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
82 phy-names = "phy1", "phy2", "phy3";
83 };
84
Simon Glass2e7d35d2014-02-26 15:59:21 -070085 some-bus {
86 #address-cells = <1>;
87 #size-cells = <0>;
Simon Glass1ca7e202014-07-23 06:55:18 -060088 compatible = "denx,u-boot-test-bus";
Simon Glass0503e822015-07-06 12:54:36 -060089 reg = <3 1>;
Simon Glasseb9ef5f2014-07-23 06:54:57 -060090 ping-expect = <4>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070091 ping-add = <4>;
Simon Glass1ca7e202014-07-23 06:55:18 -060092 c-test@5 {
Simon Glass2e7d35d2014-02-26 15:59:21 -070093 compatible = "denx,u-boot-fdt-test";
94 reg = <5>;
Simon Glass1ca7e202014-07-23 06:55:18 -060095 ping-expect = <5>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070096 ping-add = <5>;
97 };
Simon Glass1ca7e202014-07-23 06:55:18 -060098 c-test@0 {
99 compatible = "denx,u-boot-fdt-test";
100 reg = <0>;
101 ping-expect = <6>;
102 ping-add = <6>;
103 };
104 c-test@1 {
105 compatible = "denx,u-boot-fdt-test";
106 reg = <1>;
107 ping-expect = <7>;
108 ping-add = <7>;
109 };
Simon Glass2e7d35d2014-02-26 15:59:21 -0700110 };
111
112 d-test {
Simon Glass0503e822015-07-06 12:54:36 -0600113 reg = <3 1>;
Simon Glass5a66a8f2014-07-23 06:55:12 -0600114 ping-expect = <6>;
115 ping-add = <6>;
116 compatible = "google,another-fdt-test";
117 };
118
119 e-test {
Simon Glass0503e822015-07-06 12:54:36 -0600120 reg = <3 1>;
Simon Glasseb9ef5f2014-07-23 06:54:57 -0600121 ping-expect = <6>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700122 ping-add = <6>;
123 compatible = "google,another-fdt-test";
124 };
125
Simon Glass9cc36a22015-01-25 08:27:05 -0700126 f-test {
127 compatible = "denx,u-boot-fdt-test";
128 };
129
130 g-test {
131 compatible = "denx,u-boot-fdt-test";
132 };
133
Patrice Chotardee87a092017-09-04 14:55:57 +0200134 clocks {
135 clk_fixed: clk-fixed {
136 compatible = "fixed-clock";
137 #clock-cells = <0>;
138 clock-frequency = <1234>;
139 };
Stephen Warren135aa952016-06-17 09:44:00 -0600140 };
141
142 clk_sandbox: clk-sbox {
Simon Glass6a1c7ce2015-07-06 12:54:24 -0600143 compatible = "sandbox,clk";
Stephen Warren135aa952016-06-17 09:44:00 -0600144 #clock-cells = <1>;
145 };
146
147 clk-test {
148 compatible = "sandbox,clk-test";
149 clocks = <&clk_fixed>,
150 <&clk_sandbox 1>,
151 <&clk_sandbox 0>;
152 clock-names = "fixed", "i2c", "spi";
Simon Glass6a1c7ce2015-07-06 12:54:24 -0600153 };
154
Simon Glass171e9912015-05-22 15:42:15 -0600155 eth@10002000 {
156 compatible = "sandbox,eth";
157 reg = <0x10002000 0x1000>;
158 fake-host-hwaddr = <0x00 0x00 0x66 0x44 0x22 0x00>;
159 };
160
161 eth_5: eth@10003000 {
162 compatible = "sandbox,eth";
163 reg = <0x10003000 0x1000>;
164 fake-host-hwaddr = <0x00 0x00 0x66 0x44 0x22 0x11>;
165 };
166
Bin Meng71d79712015-08-27 22:25:53 -0700167 eth_3: sbe5 {
168 compatible = "sandbox,eth";
169 reg = <0x10005000 0x1000>;
170 fake-host-hwaddr = <0x00 0x00 0x66 0x44 0x22 0x33>;
171 };
172
Simon Glass171e9912015-05-22 15:42:15 -0600173 eth@10004000 {
174 compatible = "sandbox,eth";
175 reg = <0x10004000 0x1000>;
176 fake-host-hwaddr = <0x00 0x00 0x66 0x44 0x22 0x22>;
177 };
178
Simon Glass0ae0cb72014-10-13 23:42:11 -0600179 gpio_a: base-gpios {
Simon Glass2e7d35d2014-02-26 15:59:21 -0700180 compatible = "sandbox,gpio";
Simon Glass3669e0e2015-01-05 20:05:29 -0700181 gpio-controller;
182 #gpio-cells = <1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700183 gpio-bank-name = "a";
Simon Glass995b60b2018-02-03 10:36:59 -0700184 sandbox,gpio-count = <20>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700185 };
186
Simon Glass3669e0e2015-01-05 20:05:29 -0700187 gpio_b: extra-gpios {
Simon Glass2e7d35d2014-02-26 15:59:21 -0700188 compatible = "sandbox,gpio";
Simon Glass3669e0e2015-01-05 20:05:29 -0700189 gpio-controller;
190 #gpio-cells = <5>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700191 gpio-bank-name = "b";
Simon Glass995b60b2018-02-03 10:36:59 -0700192 sandbox,gpio-count = <10>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700193 };
Simon Glass0ae0cb72014-10-13 23:42:11 -0600194
Simon Glassecc2ed52014-12-10 08:55:55 -0700195 i2c@0 {
196 #address-cells = <1>;
197 #size-cells = <0>;
Simon Glass0503e822015-07-06 12:54:36 -0600198 reg = <0 1>;
Simon Glassecc2ed52014-12-10 08:55:55 -0700199 compatible = "sandbox,i2c";
200 clock-frequency = <100000>;
201 eeprom@2c {
202 reg = <0x2c>;
203 compatible = "i2c-eeprom";
204 emul {
205 compatible = "sandbox,i2c-eeprom";
206 sandbox,filename = "i2c.bin";
207 sandbox,size = <256>;
208 };
209 };
Przemyslaw Marczak9038cd52015-05-13 13:38:35 +0200210
Simon Glass52d3bc52015-05-22 15:42:17 -0600211 rtc_0: rtc@43 {
212 reg = <0x43>;
213 compatible = "sandbox-rtc";
214 emul {
215 compatible = "sandbox,i2c-rtc";
216 };
217 };
218
219 rtc_1: rtc@61 {
220 reg = <0x61>;
221 compatible = "sandbox-rtc";
222 emul {
223 compatible = "sandbox,i2c-rtc";
224 };
225 };
226
Przemyslaw Marczak9038cd52015-05-13 13:38:35 +0200227 sandbox_pmic: sandbox_pmic {
228 reg = <0x40>;
229 };
Simon Glassecc2ed52014-12-10 08:55:55 -0700230 };
231
Przemyslaw Marczak08d63002015-10-27 13:08:06 +0100232 adc@0 {
233 compatible = "sandbox,adc";
234 vdd-supply = <&buck2>;
235 vss-microvolts = <0>;
236 };
237
Simon Glass3c97c4f2016-01-18 19:52:26 -0700238 lcd {
239 u-boot,dm-pre-reloc;
240 compatible = "sandbox,lcd-sdl";
241 xres = <1366>;
242 yres = <768>;
243 };
244
Simon Glass3c43fba2015-07-06 12:54:34 -0600245 leds {
246 compatible = "gpio-leds";
247
248 iracibble {
249 gpios = <&gpio_a 1 0>;
250 label = "sandbox:red";
251 };
252
253 martinet {
254 gpios = <&gpio_a 2 0>;
255 label = "sandbox:green";
256 };
Patrick Bruenn274fb462018-04-11 11:16:29 +0200257
258 default_on {
259 gpios = <&gpio_a 5 0>;
260 label = "sandbox:default_on";
261 default-state = "on";
262 };
263
264 default_off {
265 gpios = <&gpio_a 6 0>;
266 label = "sandbox:default_off";
267 default-state = "off";
268 };
Simon Glass3c43fba2015-07-06 12:54:34 -0600269 };
270
Stephen Warren8961b522016-05-16 17:41:37 -0600271 mbox: mbox {
272 compatible = "sandbox,mbox";
273 #mbox-cells = <1>;
274 };
275
276 mbox-test {
277 compatible = "sandbox,mbox-test";
278 mboxes = <&mbox 100>, <&mbox 1>;
279 mbox-names = "other", "test";
280 };
281
Simon Glasse48eeb92017-04-23 20:02:07 -0600282 mmc2 {
283 compatible = "sandbox,mmc";
284 };
285
286 mmc1 {
287 compatible = "sandbox,mmc";
288 };
289
290 mmc0 {
Simon Glass8e6cc462015-07-06 12:54:32 -0600291 compatible = "sandbox,mmc";
292 };
293
Simon Glassd3b7ff12015-03-05 12:25:34 -0700294 pci: pci-controller {
295 compatible = "sandbox,pci";
296 device_type = "pci";
297 #address-cells = <3>;
298 #size-cells = <2>;
299 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000
300 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
301 pci@1f,0 {
302 compatible = "pci-generic";
303 reg = <0xf800 0 0 0 0>;
304 emul@1f,0 {
305 compatible = "sandbox,swap-case";
306 };
307 };
308 };
309
Simon Glass98561572017-04-23 20:10:44 -0600310 probing {
311 compatible = "simple-bus";
312 test1 {
313 compatible = "denx,u-boot-probe-test";
314 };
315
316 test2 {
317 compatible = "denx,u-boot-probe-test";
318 };
319
320 test3 {
321 compatible = "denx,u-boot-probe-test";
322 };
323
324 test4 {
325 compatible = "denx,u-boot-probe-test";
326 };
327 };
328
Stephen Warren61f5ddc2016-07-13 13:45:31 -0600329 pwrdom: power-domain {
330 compatible = "sandbox,power-domain";
331 #power-domain-cells = <1>;
332 };
333
334 power-domain-test {
335 compatible = "sandbox,power-domain-test";
336 power-domains = <&pwrdom 2>;
337 };
338
Simon Glass43b41562017-04-16 21:01:11 -0600339 pwm {
340 compatible = "sandbox,pwm";
341 };
342
343 pwm2 {
344 compatible = "sandbox,pwm";
345 };
346
Simon Glass64ce0ca2015-07-06 12:54:31 -0600347 ram {
348 compatible = "sandbox,ram";
349 };
350
Simon Glass5010d982015-07-06 12:54:29 -0600351 reset@0 {
352 compatible = "sandbox,warm-reset";
353 };
354
355 reset@1 {
356 compatible = "sandbox,reset";
357 };
358
Stephen Warren4581b712016-06-17 09:43:59 -0600359 resetc: reset-ctl {
360 compatible = "sandbox,reset-ctl";
361 #reset-cells = <1>;
362 };
363
364 reset-ctl-test {
365 compatible = "sandbox,reset-ctl-test";
366 resets = <&resetc 100>, <&resetc 2>;
367 reset-names = "other", "test";
368 };
369
Nishanth Menon52159402015-09-17 15:42:41 -0500370 rproc_1: rproc@1 {
371 compatible = "sandbox,test-processor";
372 remoteproc-name = "remoteproc-test-dev1";
373 };
374
375 rproc_2: rproc@2 {
376 compatible = "sandbox,test-processor";
377 internal-memory-mapped;
378 remoteproc-name = "remoteproc-test-dev2";
379 };
380
Simon Glass0ae0cb72014-10-13 23:42:11 -0600381 spi@0 {
382 #address-cells = <1>;
383 #size-cells = <0>;
Simon Glass0503e822015-07-06 12:54:36 -0600384 reg = <0 1>;
Simon Glass0ae0cb72014-10-13 23:42:11 -0600385 compatible = "sandbox,spi";
386 cs-gpios = <0>, <&gpio_a 0>;
387 spi.bin@0 {
388 reg = <0>;
389 compatible = "spansion,m25p16", "spi-flash";
390 spi-max-frequency = <40000000>;
391 sandbox,filename = "spi.bin";
392 };
393 };
394
Simon Glass04035fd2015-07-06 12:54:35 -0600395 syscon@0 {
396 compatible = "sandbox,syscon0";
Simon Glass0503e822015-07-06 12:54:36 -0600397 reg = <0x10 4>;
Simon Glass04035fd2015-07-06 12:54:35 -0600398 };
399
400 syscon@1 {
401 compatible = "sandbox,syscon1";
Simon Glass0503e822015-07-06 12:54:36 -0600402 reg = <0x20 5
403 0x28 6
404 0x30 7
405 0x38 8>;
Simon Glass04035fd2015-07-06 12:54:35 -0600406 };
407
Masahiro Yamada99552c32018-04-23 13:26:53 +0900408 syscon@2 {
409 compatible = "simple-mfd", "syscon";
410 reg = <0x40 5
411 0x48 6
412 0x50 7
413 0x58 8>;
414 };
415
Thomas Choue7cc8d12015-12-11 16:27:34 +0800416 timer {
417 compatible = "sandbox,timer";
418 clock-frequency = <1000000>;
419 };
420
Simon Glass171e9912015-05-22 15:42:15 -0600421 uart0: serial {
422 compatible = "sandbox,serial";
423 u-boot,dm-pre-reloc;
Joe Hershbergerbfacad72015-03-22 17:09:15 -0500424 };
425
Simon Glasse00cb222015-03-25 12:23:05 -0600426 usb_0: usb@0 {
427 compatible = "sandbox,usb";
428 status = "disabled";
429 hub {
430 compatible = "sandbox,usb-hub";
431 #address-cells = <1>;
432 #size-cells = <0>;
433 flash-stick {
434 reg = <0>;
435 compatible = "sandbox,usb-flash";
436 };
437 };
438 };
439
440 usb_1: usb@1 {
441 compatible = "sandbox,usb";
442 hub {
443 compatible = "usb-hub";
444 usb,device-class = <9>;
445 hub-emul {
446 compatible = "sandbox,usb-hub";
447 #address-cells = <1>;
448 #size-cells = <0>;
Simon Glass431cbd62015-11-08 23:48:01 -0700449 flash-stick@0 {
Simon Glasse00cb222015-03-25 12:23:05 -0600450 reg = <0>;
451 compatible = "sandbox,usb-flash";
452 sandbox,filepath = "testflash.bin";
453 };
454
Simon Glass431cbd62015-11-08 23:48:01 -0700455 flash-stick@1 {
456 reg = <1>;
457 compatible = "sandbox,usb-flash";
458 sandbox,filepath = "testflash1.bin";
459 };
460
461 flash-stick@2 {
462 reg = <2>;
463 compatible = "sandbox,usb-flash";
464 sandbox,filepath = "testflash2.bin";
465 };
466
Simon Glassbff1a712015-11-08 23:48:08 -0700467 keyb@3 {
468 reg = <3>;
469 compatible = "sandbox,usb-keyb";
470 };
471
Simon Glasse00cb222015-03-25 12:23:05 -0600472 };
473 };
474 };
475
476 usb_2: usb@2 {
477 compatible = "sandbox,usb";
478 status = "disabled";
479 };
480
Mateusz Kulikowskid33776e2016-03-31 23:12:28 +0200481 spmi: spmi@0 {
482 compatible = "sandbox,spmi";
483 #address-cells = <0x1>;
484 #size-cells = <0x1>;
485 pm8916@0 {
486 compatible = "qcom,spmi-pmic";
487 reg = <0x0 0x1>;
488 #address-cells = <0x1>;
489 #size-cells = <0x1>;
490
491 spmi_gpios: gpios@c000 {
492 compatible = "qcom,pm8916-gpio";
493 reg = <0xc000 0x400>;
494 gpio-controller;
495 gpio-count = <4>;
496 #gpio-cells = <2>;
497 gpio-bank-name="spmi";
498 };
499 };
500 };
maxims@google.com0753bc22017-04-17 12:00:21 -0700501
502 wdt0: wdt@0 {
503 compatible = "sandbox,wdt";
504 };
Rob Clarkf2006802018-01-10 11:33:30 +0100505
506 chosen {
Simon Glass7e878162018-02-03 10:36:58 -0700507 #address-cells = <1>;
508 #size-cells = <1>;
Rob Clarkf2006802018-01-10 11:33:30 +0100509 chosen-test {
510 compatible = "denx,u-boot-fdt-test";
511 reg = <9 1>;
512 };
513 };
Mario Sixe8d52912018-03-12 14:53:33 +0100514
515 translation-test@8000 {
516 compatible = "simple-bus";
517 reg = <0x8000 0x4000>;
518
519 #address-cells = <0x2>;
520 #size-cells = <0x1>;
521
522 ranges = <0 0x0 0x8000 0x1000
523 1 0x100 0x9000 0x1000
524 2 0x200 0xA000 0x1000
525 3 0x300 0xB000 0x1000
526 >;
527
528 dev@0,0 {
529 compatible = "denx,u-boot-fdt-dummy";
530 reg = <0 0x0 0x1000>;
531 };
532
533 dev@1,100 {
534 compatible = "denx,u-boot-fdt-dummy";
535 reg = <1 0x100 0x1000>;
536
537 };
538
539 dev@2,200 {
540 compatible = "denx,u-boot-fdt-dummy";
541 reg = <2 0x200 0x1000>;
542 };
543
544
545 noxlatebus@3,300 {
546 compatible = "simple-bus";
547 reg = <3 0x300 0x1000>;
548
549 #address-cells = <0x1>;
550 #size-cells = <0x0>;
551
552 dev@42 {
553 compatible = "denx,u-boot-fdt-dummy";
554 reg = <0x42>;
555 };
556 };
557 };
Simon Glass2e7d35d2014-02-26 15:59:21 -0700558};
Przemyslaw Marczak9038cd52015-05-13 13:38:35 +0200559
560#include "sandbox_pmic.dtsi"