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