Merge https://gitlab.denx.de/u-boot/custodians/u-boot-x86
[platform/kernel/u-boot.git] / arch / sandbox / dts / test.dts
1 /dts-v1/;
2
3 #include <dt-bindings/gpio/gpio.h>
4 #include <dt-bindings/gpio/sandbox-gpio.h>
5
6 / {
7         model = "sandbox";
8         compatible = "sandbox";
9         #address-cells = <1>;
10         #size-cells = <1>;
11
12         aliases {
13                 console = &uart0;
14                 eth0 = "/eth@10002000";
15                 eth3 = &eth_3;
16                 eth5 = &eth_5;
17                 gpio1 = &gpio_a;
18                 gpio2 = &gpio_b;
19                 gpio3 = &gpio_c;
20                 i2c0 = "/i2c@0";
21                 mmc0 = "/mmc0";
22                 mmc1 = "/mmc1";
23                 pci0 = &pci0;
24                 pci1 = &pci1;
25                 pci2 = &pci2;
26                 remoteproc0 = &rproc_1;
27                 remoteproc1 = &rproc_2;
28                 rtc0 = &rtc_0;
29                 rtc1 = &rtc_1;
30                 spi0 = "/spi@0";
31                 testfdt6 = "/e-test";
32                 testbus3 = "/some-bus";
33                 testfdt0 = "/some-bus/c-test@0";
34                 testfdt1 = "/some-bus/c-test@1";
35                 testfdt3 = "/b-test";
36                 testfdt5 = "/some-bus/c-test@5";
37                 testfdt8 = "/a-test";
38                 fdt-dummy0 = "/translation-test@8000/dev@0,0";
39                 fdt-dummy1 = "/translation-test@8000/dev@1,100";
40                 fdt-dummy2 = "/translation-test@8000/dev@2,200";
41                 fdt-dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
42                 usb0 = &usb_0;
43                 usb1 = &usb_1;
44                 usb2 = &usb_2;
45                 axi0 = &axi;
46                 osd0 = "/osd";
47         };
48
49         audio: audio-codec {
50                 compatible = "sandbox,audio-codec";
51                 #sound-dai-cells = <1>;
52         };
53
54         cros_ec: cros-ec {
55                 reg = <0 0>;
56                 compatible = "google,cros-ec-sandbox";
57
58                 /*
59                  * This describes the flash memory within the EC. Note
60                  * that the STM32L flash erases to 0, not 0xff.
61                  */
62                 flash {
63                         image-pos = <0x08000000>;
64                         size = <0x20000>;
65                         erase-value = <0>;
66
67                         /* Information for sandbox */
68                         ro {
69                                 image-pos = <0>;
70                                 size = <0xf000>;
71                         };
72                         wp-ro {
73                                 image-pos = <0xf000>;
74                                 size = <0x1000>;
75                         };
76                         rw {
77                                 image-pos = <0x10000>;
78                                 size = <0x10000>;
79                         };
80                 };
81         };
82
83         dsi_host: dsi_host {
84                 compatible = "sandbox,dsi-host";
85         };
86
87         a-test {
88                 reg = <0 1>;
89                 compatible = "denx,u-boot-fdt-test";
90                 ping-expect = <0>;
91                 ping-add = <0>;
92                 u-boot,dm-pre-reloc;
93                 test-gpios = <&gpio_a 1>, <&gpio_a 4>,
94                         <&gpio_b 5 GPIO_ACTIVE_HIGH 3 2 1>,
95                         <0>, <&gpio_a 12>;
96                 test2-gpios = <&gpio_a 1>, <&gpio_a 4>,
97                         <&gpio_b 6 GPIO_ACTIVE_LOW 3 2 1>,
98                         <&gpio_b 7 GPIO_IN 3 2 1>,
99                         <&gpio_b 8 GPIO_OUT 3 2 1>,
100                         <&gpio_b 9 (GPIO_OUT|GPIO_OUT_ACTIVE) 3 2 1>;
101                 test3-gpios =
102                         <&gpio_c 0 (GPIO_OUT|GPIO_OPEN_DRAIN)>,
103                         <&gpio_c 1 (GPIO_OUT|GPIO_OPEN_SOURCE)>,
104                         <&gpio_c 2 GPIO_OUT>,
105                         <&gpio_c 3 (GPIO_IN|GPIO_PULL_UP)>,
106                         <&gpio_c 4 (GPIO_IN|GPIO_PULL_DOWN)>,
107                         <&gpio_c 5 GPIO_IN>,
108                         <&gpio_c 6 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_DRAIN)>,
109                         <&gpio_c 7 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_SOURCE)>;
110                 int-value = <1234>;
111                 uint-value = <(-1234)>;
112                 int64-value = /bits/ 64 <0x1111222233334444>;
113                 int-array = <5678 9123 4567>;
114                 str-value = "test string";
115                 interrupts-extended = <&irq 3 0>;
116                 acpi,name = "GHIJ";
117         };
118
119         junk {
120                 reg = <1 1>;
121                 compatible = "not,compatible";
122         };
123
124         no-compatible {
125                 reg = <2 1>;
126         };
127
128         backlight: backlight {
129                 compatible = "pwm-backlight";
130                 enable-gpios = <&gpio_a 1>;
131                 power-supply = <&ldo_1>;
132                 pwms = <&pwm 0 1000>;
133                 default-brightness-level = <5>;
134                 brightness-levels = <0 16 32 64 128 170 202 234 255>;
135         };
136
137         bind-test {
138                 bind-test-child1 {
139                         compatible = "sandbox,phy";
140                         #phy-cells = <1>;
141                 };
142
143                 bind-test-child2 {
144                         compatible = "simple-bus";
145                 };
146         };
147
148         b-test {
149                 reg = <3 1>;
150                 compatible = "denx,u-boot-fdt-test";
151                 ping-expect = <3>;
152                 ping-add = <3>;
153         };
154
155         phy_provider0: gen_phy@0 {
156                 compatible = "sandbox,phy";
157                 #phy-cells = <1>;
158         };
159
160         phy_provider1: gen_phy@1 {
161                 compatible = "sandbox,phy";
162                 #phy-cells = <0>;
163                 broken;
164         };
165
166         phy_provider2: gen_phy@2 {
167                 compatible = "sandbox,phy";
168                 #phy-cells = <0>;
169         };
170
171         gen_phy_user: gen_phy_user {
172                 compatible = "simple-bus";
173                 phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
174                 phy-names = "phy1", "phy2", "phy3";
175         };
176
177         gen_phy_user1: gen_phy_user1 {
178                 compatible = "simple-bus";
179                 phys = <&phy_provider0 0>, <&phy_provider2>;
180                 phy-names = "phy1", "phy2";
181         };
182
183         some-bus {
184                 #address-cells = <1>;
185                 #size-cells = <0>;
186                 compatible = "denx,u-boot-test-bus";
187                 reg = <3 1>;
188                 ping-expect = <4>;
189                 ping-add = <4>;
190                 c-test@5 {
191                         compatible = "denx,u-boot-fdt-test";
192                         reg = <5>;
193                         ping-expect = <5>;
194                         ping-add = <5>;
195                 };
196                 c-test@0 {
197                         compatible = "denx,u-boot-fdt-test";
198                         reg = <0>;
199                         ping-expect = <6>;
200                         ping-add = <6>;
201                 };
202                 c-test@1 {
203                         compatible = "denx,u-boot-fdt-test";
204                         reg = <1>;
205                         ping-expect = <7>;
206                         ping-add = <7>;
207                 };
208         };
209
210         d-test {
211                 reg = <3 1>;
212                 ping-expect = <6>;
213                 ping-add = <6>;
214                 compatible = "google,another-fdt-test";
215         };
216
217         e-test {
218                 reg = <3 1>;
219                 ping-expect = <6>;
220                 ping-add = <6>;
221                 compatible = "google,another-fdt-test";
222         };
223
224         f-test {
225                 compatible = "denx,u-boot-fdt-test";
226         };
227
228         g-test {
229                 compatible = "denx,u-boot-fdt-test";
230         };
231
232         h-test {
233                 compatible = "denx,u-boot-fdt-test1";
234         };
235
236         i-test {
237                 compatible = "mediatek,u-boot-fdt-test";
238                 #address-cells = <1>;
239                 #size-cells = <0>;
240
241                 subnode@0 {
242                         reg = <0>;
243                 };
244
245                 subnode@1 {
246                         reg = <1>;
247                 };
248
249                 subnode@2 {
250                         reg = <2>;
251                 };
252         };
253
254         devres-test {
255                 compatible = "denx,u-boot-devres-test";
256         };
257
258         acpi_test1: acpi-test {
259                 compatible = "denx,u-boot-acpi-test";
260                 acpi-ssdt-test-data = "ab";
261                 acpi-dsdt-test-data = "hi";
262                 child {
263                         compatible = "denx,u-boot-acpi-test";
264                 };
265         };
266
267         acpi_test2: acpi-test2 {
268                 compatible = "denx,u-boot-acpi-test";
269                 acpi-ssdt-test-data = "cd";
270                 acpi-dsdt-test-data = "jk";
271         };
272
273         clocks {
274                 clk_fixed: clk-fixed {
275                         compatible = "fixed-clock";
276                         #clock-cells = <0>;
277                         clock-frequency = <1234>;
278                 };
279
280                 clk_fixed_factor: clk-fixed-factor {
281                         compatible = "fixed-factor-clock";
282                         #clock-cells = <0>;
283                         clock-div = <3>;
284                         clock-mult = <2>;
285                         clocks = <&clk_fixed>;
286                 };
287
288                 osc {
289                         compatible = "fixed-clock";
290                         #clock-cells = <0>;
291                         clock-frequency = <20000000>;
292                 };
293         };
294
295         clk_sandbox: clk-sbox {
296                 compatible = "sandbox,clk";
297                 #clock-cells = <1>;
298                 assigned-clocks = <&clk_sandbox 3>;
299                 assigned-clock-rates = <321>;
300         };
301
302         clk-test {
303                 compatible = "sandbox,clk-test";
304                 clocks = <&clk_fixed>,
305                          <&clk_sandbox 1>,
306                          <&clk_sandbox 0>,
307                          <&clk_sandbox 3>,
308                          <&clk_sandbox 2>;
309                 clock-names = "fixed", "i2c", "spi", "uart2", "uart1";
310         };
311
312         ccf: clk-ccf {
313                 compatible = "sandbox,clk-ccf";
314         };
315
316         eth@10002000 {
317                 compatible = "sandbox,eth";
318                 reg = <0x10002000 0x1000>;
319                 fake-host-hwaddr = [00 00 66 44 22 00];
320         };
321
322         eth_5: eth@10003000 {
323                 compatible = "sandbox,eth";
324                 reg = <0x10003000 0x1000>;
325                 fake-host-hwaddr = [00 00 66 44 22 11];
326         };
327
328         eth_3: sbe5 {
329                 compatible = "sandbox,eth";
330                 reg = <0x10005000 0x1000>;
331                 fake-host-hwaddr = [00 00 66 44 22 33];
332         };
333
334         eth@10004000 {
335                 compatible = "sandbox,eth";
336                 reg = <0x10004000 0x1000>;
337                 fake-host-hwaddr = [00 00 66 44 22 22];
338         };
339
340         firmware {
341                 sandbox_firmware: sandbox-firmware {
342                         compatible = "sandbox,firmware";
343                 };
344         };
345
346         pinctrl-gpio {
347                 compatible = "sandbox,pinctrl-gpio";
348
349                 gpio_a: base-gpios {
350                         compatible = "sandbox,gpio";
351                         gpio-controller;
352                         #gpio-cells = <1>;
353                         gpio-bank-name = "a";
354                         sandbox,gpio-count = <20>;
355                         hog_input_active_low {
356                                 gpio-hog;
357                                 input;
358                                 gpios = <0 GPIO_ACTIVE_LOW>;
359                         };
360                         hog_input_active_high {
361                                 gpio-hog;
362                                 input;
363                                 gpios = <1 GPIO_ACTIVE_HIGH>;
364                         };
365                         hog_output_low {
366                                 gpio-hog;
367                                 output-low;
368                                 gpios = <2 GPIO_ACTIVE_HIGH>;
369                         };
370                         hog_output_high {
371                                 gpio-hog;
372                                 output-high;
373                                 gpios = <3 GPIO_ACTIVE_HIGH>;
374                         };
375                 };
376
377                 gpio_b: extra-gpios {
378                         compatible = "sandbox,gpio";
379                         gpio-controller;
380                         #gpio-cells = <5>;
381                         gpio-bank-name = "b";
382                         sandbox,gpio-count = <10>;
383                 };
384
385                 gpio_c: pinmux-gpios {
386                         compatible = "sandbox,gpio";
387                         gpio-controller;
388                         #gpio-cells = <2>;
389                         gpio-bank-name = "c";
390                         sandbox,gpio-count = <10>;
391                 };
392         };
393
394         i2c@0 {
395                 #address-cells = <1>;
396                 #size-cells = <0>;
397                 reg = <0 1>;
398                 compatible = "sandbox,i2c";
399                 clock-frequency = <100000>;
400                 eeprom@2c {
401                         reg = <0x2c>;
402                         compatible = "i2c-eeprom";
403                         sandbox,emul = <&emul_eeprom>;
404                 };
405
406                 rtc_0: rtc@43 {
407                         reg = <0x43>;
408                         compatible = "sandbox-rtc";
409                         sandbox,emul = <&emul0>;
410                 };
411
412                 rtc_1: rtc@61 {
413                         reg = <0x61>;
414                         compatible = "sandbox-rtc";
415                         sandbox,emul = <&emul1>;
416                 };
417
418                 i2c_emul: emul {
419                         reg = <0xff>;
420                         compatible = "sandbox,i2c-emul-parent";
421                         emul_eeprom: emul-eeprom {
422                                 compatible = "sandbox,i2c-eeprom";
423                                 sandbox,filename = "i2c.bin";
424                                 sandbox,size = <256>;
425                         };
426                         emul0: emul0 {
427                                 compatible = "sandbox,i2c-rtc";
428                         };
429                         emul1: emull {
430                                 compatible = "sandbox,i2c-rtc";
431                         };
432                 };
433
434                 sandbox_pmic: sandbox_pmic {
435                         reg = <0x40>;
436                         sandbox,emul = <&emul_pmic0>;
437                 };
438
439                 mc34708: pmic@41 {
440                         reg = <0x41>;
441                         sandbox,emul = <&emul_pmic1>;
442                 };
443         };
444
445         bootcount@0 {
446                 compatible = "u-boot,bootcount-rtc";
447                 rtc = <&rtc_1>;
448                 offset = <0x13>;
449         };
450
451         adc@0 {
452                 compatible = "sandbox,adc";
453                 vdd-supply = <&buck2>;
454                 vss-microvolts = <0>;
455         };
456
457         irq: irq {
458                 compatible = "sandbox,irq";
459                 interrupt-controller;
460                 #interrupt-cells = <2>;
461         };
462
463         lcd {
464                 u-boot,dm-pre-reloc;
465                 compatible = "sandbox,lcd-sdl";
466                 xres = <1366>;
467                 yres = <768>;
468         };
469
470         leds {
471                 compatible = "gpio-leds";
472
473                 iracibble {
474                         gpios = <&gpio_a 1 0>;
475                         label = "sandbox:red";
476                 };
477
478                 martinet {
479                         gpios = <&gpio_a 2 0>;
480                         label = "sandbox:green";
481                 };
482
483                 default_on {
484                         gpios = <&gpio_a 5 0>;
485                         label = "sandbox:default_on";
486                         default-state = "on";
487                 };
488
489                 default_off {
490                         gpios = <&gpio_a 6 0>;
491                         label = "sandbox:default_off";
492                         default-state = "off";
493                 };
494         };
495
496         mbox: mbox {
497                 compatible = "sandbox,mbox";
498                 #mbox-cells = <1>;
499         };
500
501         mbox-test {
502                 compatible = "sandbox,mbox-test";
503                 mboxes = <&mbox 100>, <&mbox 1>;
504                 mbox-names = "other", "test";
505         };
506
507         cpus {
508                 cpu-test1 {
509                         compatible = "sandbox,cpu_sandbox";
510                         u-boot,dm-pre-reloc;
511                 };
512
513                 cpu-test2 {
514                         compatible = "sandbox,cpu_sandbox";
515                         u-boot,dm-pre-reloc;
516                 };
517
518                 cpu-test3 {
519                         compatible = "sandbox,cpu_sandbox";
520                         u-boot,dm-pre-reloc;
521                 };
522         };
523
524         i2s: i2s {
525                 compatible = "sandbox,i2s";
526                 #sound-dai-cells = <1>;
527                 sandbox,silent; /* Don't emit sounds while testing */
528         };
529
530         nop-test_0 {
531                 compatible = "sandbox,nop_sandbox1";
532                 nop-test_1 {
533                         compatible = "sandbox,nop_sandbox2";
534                         bind = "True";
535                 };
536                 nop-test_2 {
537                         compatible = "sandbox,nop_sandbox2";
538                         bind = "False";
539                 };
540         };
541
542         misc-test {
543                 compatible = "sandbox,misc_sandbox";
544         };
545
546         mmc2 {
547                 compatible = "sandbox,mmc";
548         };
549
550         mmc1 {
551                 compatible = "sandbox,mmc";
552         };
553
554         mmc0 {
555                 compatible = "sandbox,mmc";
556         };
557
558         pch {
559                 compatible = "sandbox,pch";
560         };
561
562         pci0: pci@0 {
563                 compatible = "sandbox,pci";
564                 device_type = "pci";
565                 bus-range = <0x00 0xff>;
566                 #address-cells = <3>;
567                 #size-cells = <2>;
568                 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000000
569                                 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
570                 pci@0,0 {
571                         compatible = "pci-generic";
572                         reg = <0x0000 0 0 0 0>;
573                         sandbox,emul = <&swap_case_emul0_0>;
574                 };
575                 pci@1,0 {
576                         compatible = "pci-generic";
577                         /* reg 0 is at 0x14, using FDT_PCI_SPACE_MEM32 */
578                         reg = <0x02000814 0 0 0 0
579                                0x01000810 0 0 0 0>;
580                         sandbox,emul = <&swap_case_emul0_1>;
581                 };
582                 p2sb-pci@2,0 {
583                         compatible = "sandbox,p2sb";
584                         reg = <0x02001010 0 0 0 0>;
585                         sandbox,emul = <&p2sb_emul>;
586
587                         adder {
588                                 intel,p2sb-port-id = <3>;
589                                 compatible = "sandbox,adder";
590                         };
591                 };
592                 pci@1e,0 {
593                         compatible = "sandbox,pmc";
594                         reg = <0xf000 0 0 0 0>;
595                         sandbox,emul = <&pmc_emul1e>;
596                         acpi-base = <0x400>;
597                         gpe0-dwx-mask = <0xf>;
598                         gpe0-dwx-shift-base = <4>;
599                         gpe0-dw = <6 7 9>;
600                         gpe0-sts = <0x20>;
601                         gpe0-en = <0x30>;
602                 };
603                 pci@1f,0 {
604                         compatible = "pci-generic";
605                         /* reg 0 is at 0x10, using FDT_PCI_SPACE_IO */
606                         reg = <0x0100f810 0 0 0 0>;
607                         sandbox,emul = <&swap_case_emul0_1f>;
608                 };
609         };
610
611         pci-emul0 {
612                 compatible = "sandbox,pci-emul-parent";
613                 swap_case_emul0_0: emul0@0,0 {
614                         compatible = "sandbox,swap-case";
615                 };
616                 swap_case_emul0_1: emul0@1,0 {
617                         compatible = "sandbox,swap-case";
618                         use-ea;
619                 };
620                 swap_case_emul0_1f: emul0@1f,0 {
621                         compatible = "sandbox,swap-case";
622                 };
623                 p2sb_emul: emul@2,0 {
624                         compatible = "sandbox,p2sb-emul";
625                 };
626                 pmc_emul1e: emul@1e,0 {
627                         compatible = "sandbox,pmc-emul";
628                 };
629         };
630
631         pci1: pci@1 {
632                 compatible = "sandbox,pci";
633                 device_type = "pci";
634                 bus-range = <0x00 0xff>;
635                 #address-cells = <3>;
636                 #size-cells = <2>;
637                 ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000
638                                 0x01000000 0 0x40000000 0x40000000 0 0x2000>;
639                 sandbox,dev-info = <0x08 0x00 0x1234 0x5678
640                                     0x0c 0x00 0x1234 0x5678
641                                     0x10 0x00 0x1234 0x5678>;
642                 pci@10,0 {
643                         reg = <0x8000 0 0 0 0>;
644                 };
645         };
646
647         pci2: pci@2 {
648                 compatible = "sandbox,pci";
649                 device_type = "pci";
650                 bus-range = <0x00 0xff>;
651                 #address-cells = <3>;
652                 #size-cells = <2>;
653                 ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
654                                 0x01000000 0 0x60000000 0x60000000 0 0x2000>;
655                 sandbox,dev-info = <0x08 0x00 0x1234 0x5678>;
656                 pci@1f,0 {
657                         compatible = "pci-generic";
658                         reg = <0xf800 0 0 0 0>;
659                         sandbox,emul = <&swap_case_emul2_1f>;
660                 };
661         };
662
663         pci-emul2 {
664                 compatible = "sandbox,pci-emul-parent";
665                 swap_case_emul2_1f: emul2@1f,0 {
666                         compatible = "sandbox,swap-case";
667                 };
668         };
669
670         pci_ep: pci_ep {
671                 compatible = "sandbox,pci_ep";
672         };
673
674         probing {
675                 compatible = "simple-bus";
676                 test1 {
677                         compatible = "denx,u-boot-probe-test";
678                 };
679
680                 test2 {
681                         compatible = "denx,u-boot-probe-test";
682                 };
683
684                 test3 {
685                         compatible = "denx,u-boot-probe-test";
686                 };
687
688                 test4 {
689                         compatible = "denx,u-boot-probe-test";
690                         first-syscon = <&syscon0>;
691                         second-sys-ctrl = <&another_system_controller>;
692                         third-syscon = <&syscon2>;
693                 };
694         };
695
696         pwrdom: power-domain {
697                 compatible = "sandbox,power-domain";
698                 #power-domain-cells = <1>;
699         };
700
701         power-domain-test {
702                 compatible = "sandbox,power-domain-test";
703                 power-domains = <&pwrdom 2>;
704         };
705
706         pwm: pwm {
707                 compatible = "sandbox,pwm";
708                 #pwm-cells = <2>;
709         };
710
711         pwm2 {
712                 compatible = "sandbox,pwm";
713                 #pwm-cells = <2>;
714         };
715
716         ram {
717                 compatible = "sandbox,ram";
718         };
719
720         reset@0 {
721                 compatible = "sandbox,warm-reset";
722         };
723
724         reset@1 {
725                 compatible = "sandbox,reset";
726         };
727
728         resetc: reset-ctl {
729                 compatible = "sandbox,reset-ctl";
730                 #reset-cells = <1>;
731         };
732
733         reset-ctl-test {
734                 compatible = "sandbox,reset-ctl-test";
735                 resets = <&resetc 100>, <&resetc 2>;
736                 reset-names = "other", "test";
737         };
738
739         rng {
740                 compatible = "sandbox,sandbox-rng";
741         };
742
743         rproc_1: rproc@1 {
744                 compatible = "sandbox,test-processor";
745                 remoteproc-name = "remoteproc-test-dev1";
746         };
747
748         rproc_2: rproc@2 {
749                 compatible = "sandbox,test-processor";
750                 internal-memory-mapped;
751                 remoteproc-name = "remoteproc-test-dev2";
752         };
753
754         panel {
755                 compatible = "simple-panel";
756                 backlight = <&backlight 0 100>;
757         };
758
759         smem@0 {
760                 compatible = "sandbox,smem";
761         };
762
763         sound {
764                 compatible = "sandbox,sound";
765                 cpu {
766                         sound-dai = <&i2s 0>;
767                 };
768
769                 codec {
770                         sound-dai = <&audio 0>;
771                 };
772         };
773
774         spi@0 {
775                 #address-cells = <1>;
776                 #size-cells = <0>;
777                 reg = <0 1>;
778                 compatible = "sandbox,spi";
779                 cs-gpios = <0>, <&gpio_a 0>;
780                 spi.bin@0 {
781                         reg = <0>;
782                         compatible = "spansion,m25p16", "jedec,spi-nor";
783                         spi-max-frequency = <40000000>;
784                         sandbox,filename = "spi.bin";
785                 };
786         };
787
788         syscon0: syscon@0 {
789                 compatible = "sandbox,syscon0";
790                 reg = <0x10 16>;
791         };
792
793         another_system_controller: syscon@1 {
794                 compatible = "sandbox,syscon1";
795                 reg = <0x20 5
796                         0x28 6
797                         0x30 7
798                         0x38 8>;
799         };
800
801         syscon2: syscon@2 {
802                 compatible = "simple-mfd", "syscon";
803                 reg = <0x40 5
804                         0x48 6
805                         0x50 7
806                         0x58 8>;
807         };
808
809         timer {
810                 compatible = "sandbox,timer";
811                 clock-frequency = <1000000>;
812         };
813
814         tpm2 {
815                 compatible = "sandbox,tpm2";
816         };
817
818         uart0: serial {
819                 compatible = "sandbox,serial";
820                 u-boot,dm-pre-reloc;
821         };
822
823         usb_0: usb@0 {
824                 compatible = "sandbox,usb";
825                 status = "disabled";
826                 hub {
827                         compatible = "sandbox,usb-hub";
828                         #address-cells = <1>;
829                         #size-cells = <0>;
830                         flash-stick {
831                                 reg = <0>;
832                                 compatible = "sandbox,usb-flash";
833                         };
834                 };
835         };
836
837         usb_1: usb@1 {
838                 compatible = "sandbox,usb";
839                 hub {
840                         compatible = "usb-hub";
841                         usb,device-class = <9>;
842                         #address-cells = <1>;
843                         #size-cells = <0>;
844                         hub-emul {
845                                 compatible = "sandbox,usb-hub";
846                                 #address-cells = <1>;
847                                 #size-cells = <0>;
848                                 flash-stick@0 {
849                                         reg = <0>;
850                                         compatible = "sandbox,usb-flash";
851                                         sandbox,filepath = "testflash.bin";
852                                 };
853
854                                 flash-stick@1 {
855                                         reg = <1>;
856                                         compatible = "sandbox,usb-flash";
857                                         sandbox,filepath = "testflash1.bin";
858                                 };
859
860                                 flash-stick@2 {
861                                         reg = <2>;
862                                         compatible = "sandbox,usb-flash";
863                                         sandbox,filepath = "testflash2.bin";
864                                 };
865
866                                 keyb@3 {
867                                         reg = <3>;
868                                         compatible = "sandbox,usb-keyb";
869                                 };
870
871                         };
872
873                         usbstor@1 {
874                                 reg = <1>;
875                         };
876                         usbstor@3 {
877                                 reg = <3>;
878                         };
879                 };
880         };
881
882         usb_2: usb@2 {
883                 compatible = "sandbox,usb";
884                 status = "disabled";
885         };
886
887         spmi: spmi@0 {
888                 compatible = "sandbox,spmi";
889                 #address-cells = <0x1>;
890                 #size-cells = <0x1>;
891                 ranges;
892                 pm8916@0 {
893                         compatible = "qcom,spmi-pmic";
894                         reg = <0x0 0x1>;
895                         #address-cells = <0x1>;
896                         #size-cells = <0x1>;
897                         ranges;
898
899                         spmi_gpios: gpios@c000 {
900                                 compatible = "qcom,pm8916-gpio";
901                                 reg = <0xc000 0x400>;
902                                 gpio-controller;
903                                 gpio-count = <4>;
904                                 #gpio-cells = <2>;
905                                 gpio-bank-name="spmi";
906                         };
907                 };
908         };
909
910         wdt0: wdt@0 {
911                 compatible = "sandbox,wdt";
912         };
913
914         axi: axi@0 {
915                 compatible = "sandbox,axi";
916                 #address-cells = <0x1>;
917                 #size-cells = <0x1>;
918                 store@0 {
919                         compatible = "sandbox,sandbox_store";
920                         reg = <0x0 0x400>;
921                 };
922         };
923
924         chosen {
925                 #address-cells = <1>;
926                 #size-cells = <1>;
927                 setting = "sunrise ohoka";
928                 other-node = "/some-bus/c-test@5";
929                 int-values = <0x1937 72993>;
930                 u-boot,acpi-ssdt-order = <&acpi_test2 &acpi_test1>;
931                 chosen-test {
932                         compatible = "denx,u-boot-fdt-test";
933                         reg = <9 1>;
934                 };
935         };
936
937         translation-test@8000 {
938                 compatible = "simple-bus";
939                 reg = <0x8000 0x4000>;
940
941                 #address-cells = <0x2>;
942                 #size-cells = <0x1>;
943
944                 ranges = <0 0x0 0x8000 0x1000
945                           1 0x100 0x9000 0x1000
946                           2 0x200 0xA000 0x1000
947                           3 0x300 0xB000 0x1000
948                          >;
949
950                 dma-ranges = <0 0x000 0x10000000 0x1000
951                               1 0x100 0x20000000 0x1000
952                              >;
953
954                 dev@0,0 {
955                         compatible = "denx,u-boot-fdt-dummy";
956                         reg = <0 0x0 0x1000>;
957                         reg-names = "sandbox-dummy-0";
958                 };
959
960                 dev@1,100 {
961                         compatible = "denx,u-boot-fdt-dummy";
962                         reg = <1 0x100 0x1000>;
963
964                 };
965
966                 dev@2,200 {
967                         compatible = "denx,u-boot-fdt-dummy";
968                         reg = <2 0x200 0x1000>;
969                 };
970
971
972                 noxlatebus@3,300 {
973                         compatible = "simple-bus";
974                         reg = <3 0x300 0x1000>;
975
976                         #address-cells = <0x1>;
977                         #size-cells = <0x0>;
978
979                         dev@42 {
980                                 compatible = "denx,u-boot-fdt-dummy";
981                                 reg = <0x42>;
982                         };
983                 };
984         };
985
986         osd {
987                 compatible = "sandbox,sandbox_osd";
988         };
989
990         board {
991                 compatible = "sandbox,board_sandbox";
992         };
993
994         sandbox_tee {
995                 compatible = "sandbox,tee";
996         };
997
998         sandbox_virtio1 {
999                 compatible = "sandbox,virtio1";
1000         };
1001
1002         sandbox_virtio2 {
1003                 compatible = "sandbox,virtio2";
1004         };
1005
1006         pinctrl {
1007                 compatible = "sandbox,pinctrl";
1008
1009                 pinctrl-names = "default";
1010                 pinctrl-0 = <&gpios>;
1011
1012                 gpios: gpios {
1013                         gpio0 {
1014                                 pins = "GPIO0";
1015                                 bias-pull-up;
1016                                 input-disable;
1017                         };
1018                         gpio1 {
1019                                 pins = "GPIO1";
1020                                 output-high;
1021                                 drive-open-drain;
1022                         };
1023                         gpio2 {
1024                                 pins = "GPIO2";
1025                                 bias-pull-down;
1026                                 input-enable;
1027                         };
1028                         gpio3 {
1029                                 pins = "GPIO3";
1030                                 bias-disable;
1031                         };
1032                 };
1033         };
1034
1035         hwspinlock@0 {
1036                 compatible = "sandbox,hwspinlock";
1037         };
1038
1039         dma: dma {
1040                 compatible = "sandbox,dma";
1041                 #dma-cells = <1>;
1042
1043                 dmas = <&dma 0>, <&dma 1>, <&dma 2>;
1044                 dma-names = "m2m", "tx0", "rx0";
1045         };
1046
1047         /*
1048          * keep mdio-mux ahead of mdio so that the mux is removed first at the
1049          * end of the test.  If parent mdio is removed first, clean-up of the
1050          * mux will trigger a 2nd probe of parent-mdio, leaving parent-mdio
1051          * active at the end of the test.  That it turn doesn't allow the mdio
1052          * class to be destroyed, triggering an error.
1053          */
1054         mdio-mux-test {
1055                 compatible = "sandbox,mdio-mux";
1056                 #address-cells = <1>;
1057                 #size-cells = <0>;
1058                 mdio-parent-bus = <&mdio>;
1059
1060                 mdio-ch-test@0 {
1061                         reg = <0>;
1062                 };
1063                 mdio-ch-test@1 {
1064                         reg = <1>;
1065                 };
1066         };
1067
1068         mdio: mdio-test {
1069                 compatible = "sandbox,mdio";
1070         };
1071
1072         pm-bus-test {
1073                 compatible = "simple-pm-bus";
1074                 clocks = <&clk_sandbox 4>;
1075                 power-domains = <&pwrdom 1>;
1076         };
1077
1078         resetc2: syscon-reset {
1079                 compatible = "syscon-reset";
1080                 #reset-cells = <1>;
1081                 regmap = <&syscon0>;
1082                 offset = <1>;
1083                 mask = <0x27FFFFFF>;
1084                 assert-high = <0>;
1085         };
1086
1087         syscon-reset-test {
1088                 compatible = "sandbox,misc_sandbox";
1089                 resets = <&resetc2 15>, <&resetc2 30>, <&resetc2 60>;
1090                 reset-names = "valid", "no_mask", "out_of_range";
1091         };
1092 };
1093
1094 #include "sandbox_pmic.dtsi"