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