Merge tag 'tpm-next-27102023' of https://source.denx.de/u-boot/custodians/u-boot-tpm
[pandora-u-boot.git] / arch / sandbox / dts / test.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Devicetree file for running sandbox tests
4  *
5  * This includes lots of extra devices used by various tests.
6  *
7  * Note that SPL use the main sandbox.dts file
8  */
9
10 /dts-v1/;
11
12 #include <config.h>
13 #include <dt-bindings/gpio/gpio.h>
14 #include <dt-bindings/gpio/sandbox-gpio.h>
15 #include <dt-bindings/input/input.h>
16 #include <dt-bindings/pinctrl/sandbox-pinmux.h>
17 #include <dt-bindings/mux/mux.h>
18
19 / {
20         model = "sandbox";
21         compatible = "sandbox";
22         #address-cells = <1>;
23         #size-cells = <1>;
24
25         aliases {
26                 console = &uart0;
27                 ethernet0 = "/eth@10002000";
28                 ethernet2 = &swp_0;
29                 ethernet3 = &eth_3;
30                 ethernet4 = &dsa_eth0;
31                 ethernet5 = &eth_5;
32                 ethernet6 = "/eth@10004000";
33                 ethernet7 = &swp_1;
34                 ethernet8 = &phy_eth0;
35                 gpio1 = &gpio_a;
36                 gpio2 = &gpio_b;
37                 gpio3 = &gpio_c;
38                 i2c0 = "/i2c@0";
39                 mmc0 = "/mmc0";
40                 mmc1 = "/mmc1";
41                 mmc2 = "/mmc2";
42                 mmc3 = "/mmc3";
43                 mmc4 = "/mmc4";
44                 mmc5 = "/mmc5";
45                 mmc6 = "/mmc6";
46                 pci0 = &pci0;
47                 pci1 = &pci1;
48                 pci2 = &pci2;
49                 remoteproc0 = &rproc_1;
50                 remoteproc1 = &rproc_2;
51                 rtc0 = &rtc_0;
52                 rtc1 = &rtc_1;
53                 spi0 = "/spi@0";
54                 testfdt6 = "/e-test";
55                 testbus3 = "/some-bus";
56                 testfdt0 = "/some-bus/c-test@0";
57                 testfdt12 = "/some-bus/c-test@1";
58                 testfdt3 = "/b-test";
59                 testfdt5 = "/some-bus/c-test@5";
60                 testfdt8 = "/a-test";
61                 testfdtm1 = &testfdtm1;
62                 fdt-dummy0 = "/translation-test@8000/dev@0,0";
63                 fdt-dummy1 = "/translation-test@8000/dev@1,100";
64                 fdt-dummy2 = "/translation-test@8000/dev@2,200";
65                 fdt-dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
66                 usb0 = &usb_0;
67                 usb1 = &usb_1;
68                 usb2 = &usb_2;
69                 axi0 = &axi;
70                 osd0 = "/osd";
71         };
72
73         reserved-memory {
74                 #address-cells = <1>;
75                 #size-cells = <1>;
76                 ranges;
77
78                 event_log: tcg_event_log {
79                         no-map;
80                         reg = <(CFG_SYS_SDRAM_SIZE - 0x2000) 0x2000>;
81                 };
82         };
83
84         binman: binman {
85         };
86
87         config {
88                 testing-bool;
89                 testing-int = <123>;
90                 testing-str = "testing";
91                 environment {
92                         from_fdt = "yes";
93                         fdt_env_path = "";
94                 };
95         };
96
97         options {
98                 u-boot {
99                         compatible = "u-boot,config";
100                         bootscr-ram-offset = /bits/ 64 <0x12345678>;
101                         bootscr-flash-offset = /bits/ 64 <0>;
102                         bootscr-flash-size = /bits/ 64 <0x2000>;
103                 };
104         };
105
106         bootstd {
107                 bootph-verify;
108                 compatible = "u-boot,boot-std";
109
110                 filename-prefixes = "/", "/boot/";
111                 bootdev-order = "mmc2", "mmc1";
112
113                 extlinux {
114                         compatible = "u-boot,extlinux";
115                 };
116
117                 efi {
118                         compatible = "u-boot,distro-efi";
119                 };
120
121                 theme {
122                         font-size = <30>;
123                         menu-inset = <3>;
124                         menuitem-gap-y = <1>;
125                 };
126
127                 cedit-theme {
128                         font-size = <30>;
129                         menu-inset = <3>;
130                         menuitem-gap-y = <1>;
131                 };
132
133                 /*
134                  * This is used for the VBE OS-request tests. A FAT filesystem
135                  * created in a partition with the VBE information appearing
136                  * before the partition starts
137                  */
138                 firmware0 {
139                         bootph-verify;
140                         compatible = "fwupd,vbe-simple";
141                         storage = "mmc1";
142                         skip-offset = <0x200>;
143                         area-start = <0x400>;
144                         area-size = <0x1000>;
145                         state-offset = <0x400>;
146                         state-size = <0x40>;
147                         version-offset = <0x800>;
148                         version-size = <0x100>;
149                 };
150
151                 /*
152                  * This is used for the VBE VPL tests. The MMC device holds the
153                  * binman image.bin file. The test progresses through each phase
154                  * of U-Boot, loading each in turn from MMC.
155                  *
156                  * Note that the test enables this node (and mmc3) before
157                  * running U-Boot
158                  */
159                 firmware1 {
160                         bootph-verify;
161                         status = "disabled";
162                         compatible = "fwupd,vbe-simple";
163                         storage = "mmc3";
164                         skip-offset = <0x800000>;
165                         area-start = <0>;
166                         area-size = <0xe00000>;
167                         state-offset = <0xdffc00>;
168                         state-size = <0x40>;
169                         version-offset = <0xdffe00>;
170                         version-size = <0x100>;
171                 };
172         };
173
174         cedit: cedit {
175         };
176
177         fuzzing-engine {
178                 compatible = "sandbox,fuzzing-engine";
179         };
180
181         reboot-mode0 {
182                 compatible = "reboot-mode-gpio";
183                 gpios = <&gpio_c 0 GPIO_ACTIVE_HIGH>, <&gpio_c 1 GPIO_ACTIVE_HIGH>;
184                 u-boot,env-variable = "bootstatus";
185                 mode-test = <0x01>;
186                 mode-download = <0x03>;
187         };
188
189         reboot_mode1: reboot-mode@14 {
190                 compatible = "reboot-mode-rtc";
191                 rtc = <&rtc_0>;
192                 reg = <0x30 4>;
193                 u-boot,env-variable = "bootstatus";
194                 big-endian;
195                 mode-test = <0x21969147>;
196                 mode-download = <0x51939147>;
197         };
198
199         audio: audio-codec {
200                 compatible = "sandbox,audio-codec";
201                 #sound-dai-cells = <1>;
202         };
203
204         buttons {
205                 compatible = "gpio-keys";
206
207                 btn1 {
208                         gpios = <&gpio_a 3 0>;
209                         label = "button1";
210                         linux,code = <BTN_1>;
211                 };
212
213                 btn2 {
214                         gpios = <&gpio_a 4 0>;
215                         label = "button2";
216                         linux,code = <BTN_2>;
217                 };
218         };
219
220         buttons2 {
221                 compatible = "adc-keys";
222                 io-channels = <&adc 3>;
223                 keyup-threshold-microvolt = <3000000>;
224
225                 button-up {
226                         label = "button3";
227                         linux,code = <KEY_F3>;
228                         press-threshold-microvolt = <1500000>;
229                 };
230
231                 button-down {
232                         label = "button4";
233                         linux,code = <KEY_F4>;
234                         press-threshold-microvolt = <1000000>;
235                 };
236
237                 button-enter {
238                         label = "button5";
239                         linux,code = <KEY_F5>;
240                         press-threshold-microvolt = <500000>;
241                 };
242         };
243
244         cros_ec: cros-ec {
245                 reg = <0 0>;
246                 compatible = "google,cros-ec-sandbox";
247
248                 /*
249                  * This describes the flash memory within the EC. Note
250                  * that the STM32L flash erases to 0, not 0xff.
251                  */
252                 flash {
253                         image-pos = <0x08000000>;
254                         size = <0x20000>;
255                         erase-value = <0>;
256
257                         /* Information for sandbox */
258                         ro {
259                                 image-pos = <0>;
260                                 size = <0xf000>;
261                         };
262                         wp-ro {
263                                 image-pos = <0xf000>;
264                                 size = <0x1000>;
265                                 used = <0x884>;
266                                 compress = "lz4";
267                                 uncomp-size = <0xcf8>;
268                                 hash {
269                                         algo = "sha256";
270                                         value = [00 01 02 03 04 05 06 07
271                                                 08 09 0a 0b 0c 0d 0e 0f
272                                                 10 11 12 13 14 15 16 17
273                                                 18 19 1a 1b 1c 1d 1e 1f];
274                                 };
275                         };
276                         rw {
277                                 image-pos = <0x10000>;
278                                 size = <0x10000>;
279                         };
280                 };
281
282                 cros_ec_pwm: cros-ec-pwm {
283                         compatible = "google,cros-ec-pwm";
284                         #pwm-cells = <1>;
285                 };
286
287         };
288
289         dsi_host: dsi_host {
290                 compatible = "sandbox,dsi-host";
291         };
292
293         a-test {
294                 reg = <0 1>;
295                 compatible = "denx,u-boot-fdt-test";
296                 ping-expect = <0>;
297                 ping-add = <0>;
298                 bootph-all;
299                 test-gpios = <&gpio_a 1>, <&gpio_a 4>,
300                         <&gpio_b 5 GPIO_ACTIVE_HIGH 3 2 1>,
301                         <0>, <&gpio_a 12>;
302                 test2-gpios = <&gpio_a 1>, <&gpio_a 4>,
303                         <&gpio_b 6 GPIO_ACTIVE_LOW 3 2 1>,
304                         <&gpio_b 7 GPIO_IN 3 2 1>,
305                         <&gpio_b 8 GPIO_OUT 3 2 1>,
306                         <&gpio_b 9 (GPIO_OUT|GPIO_OUT_ACTIVE) 3 2 1>;
307                 test3-gpios =
308                         <&gpio_c 0 (GPIO_OUT|GPIO_OPEN_DRAIN)>,
309                         <&gpio_c 1 (GPIO_OUT|GPIO_OPEN_SOURCE)>,
310                         <&gpio_c 2 GPIO_OUT>,
311                         <&gpio_c 3 (GPIO_IN|GPIO_PULL_UP)>,
312                         <&gpio_c 4 (GPIO_IN|GPIO_PULL_DOWN)>,
313                         <&gpio_c 5 GPIO_IN>,
314                         <&gpio_c 6 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_DRAIN)>,
315                         <&gpio_c 7 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_SOURCE)>;
316                 test4-gpios = <&gpio_a 14>, <&gpio_b 4 1 3 2 1>;
317                 test5-gpios = <&gpio_a 19>;
318
319                 bool-value;
320                 int8-value = /bits/ 8 <0x12>;
321                 int16-value = /bits/ 16 <0x1234>;
322                 int-value = <1234>;
323                 uint-value = <(-1234)>;
324                 int64-value = /bits/ 64 <0x1111222233334444>;
325                 int-array = <5678 9123 4567>;
326                 int64-array = /bits/ 64 <0x1111222233334444 0x4444333322221111>;
327                 str-value = "test string";
328                 interrupts-extended = <&irq 3 0>;
329                 acpi,name = "GHIJ";
330                 phandle-value = <&gpio_c 10>, <0xFFFFFFFF 20>, <&gpio_a 30>;
331
332                 mux-controls = <&muxcontroller0 0>, <&muxcontroller0 1>,
333                                <&muxcontroller0 2>, <&muxcontroller0 3>,
334                                <&muxcontroller1>;
335                 mux-control-names = "mux0", "mux1", "mux2", "mux3", "mux4";
336                 mux-syscon = <&syscon3>;
337                 display-timings {
338                         timing0: 240x320 {
339                                 clock-frequency = <6500000>;
340                                 hactive = <240>;
341                                 vactive = <320>;
342                                 hfront-porch = <6>;
343                                 hback-porch = <7>;
344                                 hsync-len = <1>;
345                                 vback-porch = <5>;
346                                 vfront-porch = <8>;
347                                 vsync-len = <2>;
348                                 hsync-active = <1>;
349                                 vsync-active = <0>;
350                                 de-active = <1>;
351                                 pixelclk-active = <1>;
352                                 interlaced;
353                                 doublescan;
354                                 doubleclk;
355                         };
356                         timing1: 480x800 {
357                                 clock-frequency = <9000000>;
358                                 hactive = <480>;
359                                 vactive = <800>;
360                                 hfront-porch = <10>;
361                                 hback-porch = <59>;
362                                 hsync-len = <12>;
363                                 vback-porch = <15>;
364                                 vfront-porch = <17>;
365                                 vsync-len = <16>;
366                                 hsync-active = <0>;
367                                 vsync-active = <1>;
368                                 de-active = <0>;
369                                 pixelclk-active = <0>;
370                         };
371                         timing2: 800x480 {
372                                 clock-frequency = <33500000>;
373                                 hactive = <800>;
374                                 vactive = <480>;
375                                 hback-porch = <89>;
376                                 hfront-porch = <164>;
377                                 vback-porch = <23>;
378                                 vfront-porch = <10>;
379                                 hsync-len = <11>;
380                                 vsync-len = <13>;
381                         };
382                 };
383                 panel-timing {
384                         clock-frequency = <6500000>;
385                         hactive = <240>;
386                         vactive = <320>;
387                         hfront-porch = <6>;
388                         hback-porch = <7>;
389                         hsync-len = <1>;
390                         vback-porch = <5>;
391                         vfront-porch = <8>;
392                         vsync-len = <2>;
393                         hsync-active = <1>;
394                         vsync-active = <0>;
395                         de-active = <1>;
396                         pixelclk-active = <1>;
397                         interlaced;
398                         doublescan;
399                         doubleclk;
400                 };
401         };
402
403         junk {
404                 reg = <1 1>;
405                 compatible = "not,compatible";
406         };
407
408         no-compatible {
409                 reg = <2 1>;
410         };
411
412         backlight: backlight {
413                 compatible = "pwm-backlight";
414                 enable-gpios = <&gpio_a 1>;
415                 power-supply = <&ldo_1>;
416                 pwms = <&pwm 0 1000>;
417                 default-brightness-level = <5>;
418                 brightness-levels = <0 16 32 64 128 170 202 234 255>;
419         };
420
421         bind-test {
422                 compatible = "simple-bus";
423                 bind-test-child1 {
424                         compatible = "sandbox,phy";
425                         #phy-cells = <1>;
426                 };
427
428                 bind-test-child2 {
429                         compatible = "simple-bus";
430                 };
431         };
432
433         b-test {
434                 reg = <3 1>;
435                 compatible = "denx,u-boot-fdt-test";
436                 ping-expect = <3>;
437                 ping-add = <3>;
438
439                 mux-controls = <&muxcontroller0 0>;
440                 mux-control-names = "mux0";
441         };
442
443         phy_provider0: gen_phy@0 {
444                 compatible = "sandbox,phy";
445                 #phy-cells = <1>;
446         };
447
448         phy_provider1: gen_phy@1 {
449                 compatible = "sandbox,phy";
450                 #phy-cells = <0>;
451                 broken;
452         };
453
454         phy_provider2: gen_phy@2 {
455                 compatible = "sandbox,phy";
456                 #phy-cells = <0>;
457         };
458
459         phy_provider3: gen_phy@3 {
460                 compatible = "sandbox,phy";
461                 #phy-cells = <2>;
462         };
463
464         gen_phy_user: gen_phy_user {
465                 compatible = "simple-bus";
466                 phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
467                 phy-names = "phy1", "phy2", "phy3";
468         };
469
470         gen_phy_user1: gen_phy_user1 {
471                 compatible = "simple-bus";
472                 phys = <&phy_provider0 0>, <&phy_provider2>;
473                 phy-names = "phy1", "phy2";
474         };
475
476         gen_phy_user2: gen_phy_user2 {
477                 compatible = "simple-bus";
478                 phys = <&phy_provider3 0 0>;
479                 phy-names = "phy1";
480         };
481
482         some-bus {
483                 #address-cells = <1>;
484                 #size-cells = <0>;
485                 compatible = "denx,u-boot-test-bus";
486                 reg = <3 1>;
487                 ping-expect = <4>;
488                 ping-add = <4>;
489                 c-test@5 {
490                         compatible = "denx,u-boot-fdt-test";
491                         reg = <5>;
492                         ping-expect = <5>;
493                         ping-add = <5>;
494                 };
495                 c-test@0 {
496                         compatible = "denx,u-boot-fdt-test";
497                         reg = <0>;
498                         ping-expect = <6>;
499                         ping-add = <6>;
500                 };
501                 c-test@1 {
502                         compatible = "denx,u-boot-fdt-test";
503                         reg = <1>;
504                         ping-expect = <7>;
505                         ping-add = <7>;
506                 };
507         };
508
509         d-test {
510                 reg = <3 1>;
511                 ping-expect = <6>;
512                 ping-add = <6>;
513                 compatible = "google,another-fdt-test";
514         };
515
516         e-test {
517                 reg = <3 1>;
518                 ping-expect = <6>;
519                 ping-add = <6>;
520                 compatible = "google,another-fdt-test";
521         };
522
523         f-test {
524                 compatible = "denx,u-boot-fdt-test";
525         };
526
527         g-test {
528                 compatible = "denx,u-boot-fdt-test";
529         };
530
531         h-test {
532                 compatible = "denx,u-boot-fdt-test1";
533         };
534
535         i-test {
536                 compatible = "mediatek,u-boot-fdt-test";
537                 #address-cells = <1>;
538                 #size-cells = <0>;
539
540                 subnode@0 {
541                         reg = <0>;
542                 };
543
544                 subnode@1 {
545                         reg = <1>;
546                 };
547
548                 subnode@2 {
549                         reg = <2>;
550                 };
551         };
552
553         devres-test {
554                 compatible = "denx,u-boot-devres-test";
555         };
556
557         another-test {
558                 reg = <0 2>;
559                 compatible = "denx,u-boot-fdt-test";
560                 test4-gpios = <&gpio_a 14>, <&gpio_b 4 1 3 2 1>;
561                 test5-gpios = <&gpio_a 19>;
562         };
563
564         mmio-bus@0 {
565                 #address-cells = <1>;
566                 #size-cells = <1>;
567                 compatible = "denx,u-boot-test-bus";
568                 dma-ranges = <0x10000000 0x00000000 0x00040000>;
569
570                 subnode@0 {
571                         compatible = "denx,u-boot-fdt-test";
572                 };
573         };
574
575         mmio-bus@1 {
576                 #address-cells = <1>;
577                 #size-cells = <1>;
578                 compatible = "denx,u-boot-test-bus";
579
580                 subnode@0 {
581                         compatible = "denx,u-boot-fdt-test";
582                 };
583         };
584
585         acpi_test1: acpi-test {
586                 compatible = "denx,u-boot-acpi-test";
587                 acpi-ssdt-test-data = "ab";
588                 acpi-dsdt-test-data = "hi";
589                 child {
590                         compatible = "denx,u-boot-acpi-test";
591                 };
592         };
593
594         acpi_test2: acpi-test2 {
595                 compatible = "denx,u-boot-acpi-test";
596                 acpi-ssdt-test-data = "cd";
597                 acpi-dsdt-test-data = "jk";
598         };
599
600         clocks {
601                 clk_fixed: clk-fixed {
602                         compatible = "fixed-clock";
603                         #clock-cells = <0>;
604                         clock-frequency = <1234>;
605                 };
606
607                 clk_fixed_factor: clk-fixed-factor {
608                         compatible = "fixed-factor-clock";
609                         #clock-cells = <0>;
610                         clock-div = <3>;
611                         clock-mult = <2>;
612                         clocks = <&clk_fixed>;
613                 };
614
615                 osc {
616                         compatible = "fixed-clock";
617                         #clock-cells = <0>;
618                         clock-frequency = <20000000>;
619                 };
620         };
621
622         clk_sandbox: clk-sbox {
623                 compatible = "sandbox,clk";
624                 #clock-cells = <1>;
625                 assigned-clocks = <&clk_sandbox 3>;
626                 assigned-clock-rates = <321>;
627         };
628
629         clk-test {
630                 compatible = "sandbox,clk-test";
631                 clocks = <&clk_fixed>,
632                          <&clk_sandbox 1>,
633                          <&clk_sandbox 0>,
634                          <&clk_sandbox 3>,
635                          <&clk_sandbox 2>;
636                 clock-names = "fixed", "i2c", "spi", "uart2", "uart1";
637         };
638
639         clk-test2 {
640                 compatible = "sandbox,clk-test";
641                 assigned-clock-rates = <321>;
642         };
643
644         clk-test3 {
645                 compatible = "sandbox,clk-test";
646                 assigned-clocks = <&clk_sandbox 1>;
647         };
648
649         clk-test4 {
650                 compatible = "sandbox,clk-test";
651                 assigned-clock-rates = <654>, <321>;
652                 assigned-clocks = <&clk_sandbox 1>;
653         };
654
655         ccf: clk-ccf {
656                 compatible = "sandbox,clk-ccf";
657         };
658
659         efi-media {
660                 compatible = "sandbox,efi-media";
661         };
662
663         eth@10002000 {
664                 compatible = "sandbox,eth";
665                 reg = <0x10002000 0x1000>;
666         };
667
668         eth_5: eth@10003000 {
669                 compatible = "sandbox,eth";
670                 reg = <0x10003000 0x1000>;
671                 nvmem-cells = <&eth5_addr>;
672                 nvmem-cell-names = "mac-address";
673         };
674
675         eth_3: sbe5 {
676                 compatible = "sandbox,eth";
677                 reg = <0x10005000 0x1000>;
678                 nvmem-cells = <&eth3_addr>;
679                 nvmem-cell-names = "mac-address";
680         };
681
682         eth@10004000 {
683                 compatible = "sandbox,eth";
684                 reg = <0x10004000 0x1000>;
685         };
686
687         phy_eth0: phy-test-eth {
688                 compatible = "sandbox,eth";
689                 reg = <0x10007000 0x1000>;
690                 mac-address = [ 02 00 11 22 33 49 ];
691                 phy-handle = <&ethphy1>;
692                 phy-mode = "2500base-x";
693         };
694
695         dsa_eth0: dsa-test-eth {
696                 compatible = "sandbox,eth";
697                 reg = <0x10006000 0x1000>;
698                 nvmem-cells = <&eth4_addr>;
699                 nvmem-cell-names = "mac-address";
700         };
701
702         dsa-test {
703                 compatible = "sandbox,dsa";
704
705                 ports {
706                         #address-cells = <1>;
707                         #size-cells = <0>;
708                         swp_0: port@0 {
709                                 reg = <0>;
710                                 label = "lan0";
711                                 phy-mode = "rgmii-rxid";
712
713                                 fixed-link {
714                                         speed = <100>;
715                                         full-duplex;
716                                 };
717                         };
718
719                         swp_1: port@1 {
720                                 reg = <1>;
721                                 label = "lan1";
722                                 phy-mode = "rgmii-txid";
723                                 fixed-link = <0 1 100 0 0>;
724                         };
725
726                         port@2 {
727                                 reg = <2>;
728                                 ethernet = <&dsa_eth0>;
729
730                                 fixed-link {
731                                         speed = <1000>;
732                                         full-duplex;
733                                 };
734                         };
735                 };
736         };
737
738         firmware {
739                 sandbox_firmware: sandbox-firmware {
740                         compatible = "sandbox,firmware";
741                 };
742
743                 scmi {
744                         compatible = "sandbox,scmi-agent";
745                         #address-cells = <1>;
746                         #size-cells = <0>;
747
748                         pwrdom_scmi: protocol@11 {
749                                 reg = <0x11>;
750                                 #power-domain-cells = <1>;
751                         };
752
753                         clk_scmi: protocol@14 {
754                                 reg = <0x14>;
755                                 #clock-cells = <1>;
756                                 linaro,sandbox-channel-id = <0x14>;
757                         };
758
759                         reset_scmi: protocol@16 {
760                                 reg = <0x16>;
761                                 #reset-cells = <1>;
762                         };
763
764                         protocol@17 {
765                                 reg = <0x17>;
766
767                                 regulators {
768                                         #address-cells = <1>;
769                                         #size-cells = <0>;
770
771                                         regul0_scmi: reg@0 {
772                                                 reg = <0>;
773                                                 regulator-name = "sandbox-voltd0";
774                                                 regulator-min-microvolt = <1100000>;
775                                                 regulator-max-microvolt = <3300000>;
776                                         };
777                                         regul1_scmi: reg@1 {
778                                                 reg = <0x1>;
779                                                 regulator-name = "sandbox-voltd1";
780                                                 regulator-min-microvolt = <1800000>;
781                                         };
782                                 };
783                         };
784                 };
785
786                 sm: secure-monitor {
787                         compatible = "sandbox,sm";
788                 };
789         };
790
791         fpga {
792                 compatible = "sandbox,fpga";
793         };
794
795         pinctrl-gpio {
796                 compatible = "sandbox,pinctrl-gpio";
797
798                 gpio_a: base-gpios {
799                         compatible = "sandbox,gpio";
800                         gpio-controller;
801                         #gpio-cells = <1>;
802                         gpio-bank-name = "a";
803                         sandbox,gpio-count = <20>;
804                         hog_input_active_low {
805                                 gpio-hog;
806                                 input;
807                                 gpios = <10 GPIO_ACTIVE_LOW>;
808                         };
809                         hog_input_active_high {
810                                 gpio-hog;
811                                 input;
812                                 gpios = <11 GPIO_ACTIVE_HIGH>;
813                         };
814                         hog_output_low {
815                                 gpio-hog;
816                                 output-low;
817                                 gpios = <12 GPIO_ACTIVE_HIGH>;
818                         };
819                         hog_output_high {
820                                 gpio-hog;
821                                 output-high;
822                                 gpios = <13 GPIO_ACTIVE_HIGH>;
823                         };
824                 };
825
826                 gpio_b: extra-gpios {
827                         compatible = "sandbox,gpio";
828                         gpio-controller;
829                         #gpio-cells = <5>;
830                         gpio-bank-name = "b";
831                         sandbox,gpio-count = <10>;
832                 };
833
834                 gpio_c: pinmux-gpios {
835                         compatible = "sandbox,gpio";
836                         gpio-controller;
837                         #gpio-cells = <2>;
838                         gpio-bank-name = "c";
839                         sandbox,gpio-count = <10>;
840                 };
841         };
842
843         i2c@0 {
844                 #address-cells = <1>;
845                 #size-cells = <0>;
846                 reg = <0 1>;
847                 compatible = "sandbox,i2c";
848                 clock-frequency = <100000>;
849                 pinctrl-names = "default";
850                 pinctrl-0 = <&pinmux_i2c0_pins>;
851
852                 eeprom@2c {
853                         #address-cells = <1>;
854                         #size-cells = <1>;
855                         reg = <0x2c>;
856                         compatible = "i2c-eeprom";
857                         sandbox,emul = <&emul_eeprom>;
858                         partitions {
859                                 compatible = "fixed-partitions";
860                                 #address-cells = <1>;
861                                 #size-cells = <1>;
862                                 bootcount_i2c: bootcount@10 {
863                                         reg = <10 2>;
864                                 };
865                         };
866
867                         eth3_addr: mac-address@24 {
868                                 reg = <24 6>;
869                         };
870                 };
871
872                 rtc_0: rtc@43 {
873                         #address-cells = <1>;
874                         #size-cells = <1>;
875                         reg = <0x43>;
876                         compatible = "sandbox-rtc";
877                         sandbox,emul = <&emul0>;
878
879                         eth4_addr: mac-address@40 {
880                                 reg = <0x40 6>;
881                         };
882                 };
883
884                 rtc_1: rtc@61 {
885                         reg = <0x61>;
886                         compatible = "sandbox-rtc";
887                         sandbox,emul = <&emul1>;
888                 };
889
890                 i2c_emul: emul {
891                         reg = <0xff>;
892                         compatible = "sandbox,i2c-emul-parent";
893                         emul_eeprom: emul-eeprom {
894                                 compatible = "sandbox,i2c-eeprom";
895                                 sandbox,filename = "i2c.bin";
896                                 sandbox,size = <256>;
897                         };
898                         emul0: emul0 {
899                                 compatible = "sandbox,i2c-rtc-emul";
900                         };
901                         emul1: emull {
902                                 compatible = "sandbox,i2c-rtc-emul";
903                         };
904                 };
905
906                 sandbox_pmic: sandbox_pmic {
907                         reg = <0x40>;
908                         sandbox,emul = <&emul_pmic0>;
909                 };
910
911                 mc34708: pmic@41 {
912                         reg = <0x41>;
913                         sandbox,emul = <&emul_pmic1>;
914                 };
915         };
916
917         bootcount@0 {
918                 compatible = "u-boot,bootcount-rtc";
919                 rtc = <&rtc_1>;
920                 offset = <0x13>;
921         };
922
923         bootcount {
924                 compatible = "u-boot,bootcount-i2c-eeprom";
925                 i2c-eeprom = <&bootcount_i2c>;
926         };
927
928         bootcount_4@0 {
929                 compatible = "u-boot,bootcount-syscon";
930                 syscon = <&syscon0>;
931                 reg = <0x0 0x04>, <0x0 0x04>;
932                 reg-names = "syscon_reg", "offset";
933         };
934
935         bootcount_2@0 {
936                 compatible = "u-boot,bootcount-syscon";
937                 syscon = <&syscon0>;
938                 reg = <0x0 0x04>, <0x0 0x02> ;
939                 reg-names = "syscon_reg", "offset";
940         };
941
942         adc: adc@0 {
943                 compatible = "sandbox,adc";
944                 #io-channel-cells = <1>;
945                 vdd-supply = <&buck2>;
946                 vss-microvolts = <0>;
947         };
948
949         iommu: iommu@0 {
950                 compatible = "sandbox,iommu";
951                 #iommu-cells = <0>;
952         };
953
954         irq: irq {
955                 compatible = "sandbox,irq";
956                 interrupt-controller;
957                 #interrupt-cells = <2>;
958         };
959
960         lcd {
961                 bootph-all;
962                 compatible = "sandbox,lcd-sdl";
963                 pinctrl-names = "default";
964                 pinctrl-0 = <&pinmux_lcd_pins>;
965                 xres = <1366>;
966                 yres = <768>;
967         };
968
969         leds {
970                 compatible = "gpio-leds";
971
972                 iracibble {
973                         gpios = <&gpio_a 1 0>;
974                         label = "sandbox:red";
975                 };
976
977                 martinet {
978                         gpios = <&gpio_a 2 0>;
979                         label = "sandbox:green";
980                 };
981
982                 default_on {
983                         gpios = <&gpio_a 5 0>;
984                         label = "sandbox:default_on";
985                         default-state = "on";
986                 };
987
988                 default_off {
989                         gpios = <&gpio_a 6 0>;
990                         /* label intentionally omitted */
991                         default-state = "off";
992                 };
993         };
994
995         wdt-gpio-toggle {
996                 gpios = <&gpio_a 8 0>;
997                 compatible = "linux,wdt-gpio";
998                 hw_margin_ms = <100>;
999                 hw_algo = "toggle";
1000                 always-running;
1001         };
1002
1003         wdt-gpio-level {
1004                 gpios = <&gpio_a 7 0>;
1005                 compatible = "linux,wdt-gpio";
1006                 hw_margin_ms = <100>;
1007                 hw_algo = "level";
1008                 always-running;
1009         };
1010
1011         mbox: mbox {
1012                 compatible = "sandbox,mbox";
1013                 #mbox-cells = <1>;
1014         };
1015
1016         mbox-test {
1017                 compatible = "sandbox,mbox-test";
1018                 mboxes = <&mbox 100>, <&mbox 1>;
1019                 mbox-names = "other", "test";
1020         };
1021
1022         cpus {
1023                 #address-cells = <1>;
1024                 #size-cells = <0>;
1025                 timebase-frequency = <2000000>;
1026                 cpu1: cpu@1 {
1027                         device_type = "cpu";
1028                         reg = <0x1>;
1029                         timebase-frequency = <3000000>;
1030                         compatible = "sandbox,cpu_sandbox";
1031                         bootph-all;
1032                 };
1033
1034                 cpu2: cpu@2 {
1035                         device_type = "cpu";
1036                         reg = <0x2>;
1037                         compatible = "sandbox,cpu_sandbox";
1038                         bootph-all;
1039                 };
1040
1041                 cpu3: cpu@3 {
1042                         device_type = "cpu";
1043                         reg = <0x3>;
1044                         compatible = "sandbox,cpu_sandbox";
1045                         bootph-all;
1046                 };
1047         };
1048
1049         chipid: chipid {
1050                 compatible = "sandbox,soc";
1051         };
1052
1053         i2s: i2s {
1054                 compatible = "sandbox,i2s";
1055                 #sound-dai-cells = <1>;
1056                 sandbox,silent; /* Don't emit sounds while testing */
1057         };
1058
1059         nop-test_0 {
1060                 compatible = "sandbox,nop_sandbox1";
1061                 nop-test_1 {
1062                         compatible = "sandbox,nop_sandbox2";
1063                         bind = "True";
1064                 };
1065                 nop-test_2 {
1066                         compatible = "sandbox,nop_sandbox2";
1067                         bind = "False";
1068                 };
1069         };
1070
1071         memory-controller {
1072                 compatible = "sandbox,memory";
1073         };
1074
1075         misc-test {
1076                 #address-cells = <1>;
1077                 #size-cells = <1>;
1078                 compatible = "sandbox,misc_sandbox";
1079
1080                 eth5_addr: mac-address@10 {
1081                         reg = <0x10 6>;
1082                 };
1083         };
1084
1085         mmc2 {
1086                 compatible = "sandbox,mmc";
1087                 non-removable;
1088         };
1089
1090         /* This is used for the bootdev tests */
1091         mmc1 {
1092                 compatible = "sandbox,mmc";
1093                 filename = "mmc1.img";
1094         };
1095
1096         /* This is used for the fastboot tests */
1097         mmc0: mmc0 {
1098                 compatible = "sandbox,mmc";
1099         };
1100
1101         /* This is used for VBE VPL tests */
1102         mmc3 {
1103                 status = "disabled";
1104                 compatible = "sandbox,mmc";
1105                 filename = "image.bin";
1106                 non-removable;
1107         };
1108
1109         /* This is used for bootstd bootmenu tests */
1110         mmc4 {
1111                 status = "disabled";
1112                 compatible = "sandbox,mmc";
1113                 filename = "mmc4.img";
1114         };
1115
1116         /* This is used for ChromiumOS tests */
1117         mmc5 {
1118                 status = "disabled";
1119                 compatible = "sandbox,mmc";
1120                 filename = "mmc5.img";
1121         };
1122
1123         /* This is used for mbr tests */
1124         mmc6 {
1125                 status = "disabled";
1126                 compatible = "sandbox,mmc";
1127                 filename = "mmc6.img";
1128         };
1129
1130         pch {
1131                 compatible = "sandbox,pch";
1132         };
1133
1134         pci0: pci@0 {
1135                 compatible = "sandbox,pci";
1136                 device_type = "pci";
1137                 bus-range = <0x00 0xff>;
1138                 #address-cells = <3>;
1139                 #size-cells = <2>;
1140                 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000000
1141                                 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
1142                 iommu-map = <0x0010 &iommu 0 1>;
1143                 iommu-map-mask = <0xfffffff8>;
1144                 pci@0,0 {
1145                         compatible = "pci-generic";
1146                         reg = <0x0000 0 0 0 0>;
1147                         sandbox,emul = <&swap_case_emul0_0>;
1148                 };
1149                 pci@1,0 {
1150                         compatible = "pci-generic";
1151                         /* reg 0 is at 0x14, using FDT_PCI_SPACE_MEM32 */
1152                         reg = <0x02000814 0 0 0x80 0
1153                                0x01000810 0 0 0xc0 0>;
1154                         sandbox,emul = <&swap_case_emul0_1>;
1155                 };
1156                 p2sb-pci@2,0 {
1157                         compatible = "sandbox,p2sb";
1158                         reg = <0x02001010 0 0 0 0>;
1159                         sandbox,emul = <&p2sb_emul>;
1160
1161                         adder {
1162                                 intel,p2sb-port-id = <3>;
1163                                 compatible = "sandbox,adder";
1164                         };
1165                 };
1166                 pci@1e,0 {
1167                         compatible = "sandbox,pmc";
1168                         reg = <0xf000 0 0 0 0>;
1169                         sandbox,emul = <&pmc_emul1e>;
1170                         acpi-base = <0x400>;
1171                         gpe0-dwx-mask = <0xf>;
1172                         gpe0-dwx-shift-base = <4>;
1173                         gpe0-dw = <6 7 9>;
1174                         gpe0-sts = <0x20>;
1175                         gpe0-en = <0x30>;
1176                 };
1177                 pci@1f,0 {
1178                         compatible = "pci-generic";
1179                         /* reg 0 is at 0x10, using FDT_PCI_SPACE_IO */
1180                         reg = <0x0100f810 0 0 0x100 0>;
1181                         sandbox,emul = <&swap_case_emul0_1f>;
1182                 };
1183         };
1184
1185         pci-emul0 {
1186                 compatible = "sandbox,pci-emul-parent";
1187                 swap_case_emul0_0: emul0@0,0 {
1188                         compatible = "sandbox,swap-case";
1189                 };
1190                 swap_case_emul0_1: emul0@1,0 {
1191                         compatible = "sandbox,swap-case";
1192                         use-ea;
1193                 };
1194                 swap_case_emul0_1f: emul0@1f,0 {
1195                         compatible = "sandbox,swap-case";
1196                 };
1197                 p2sb_emul: emul@2,0 {
1198                         compatible = "sandbox,p2sb-emul";
1199                 };
1200                 pmc_emul1e: emul@1e,0 {
1201                         compatible = "sandbox,pmc-emul";
1202                 };
1203         };
1204
1205         pci1: pci@1 {
1206                 compatible = "sandbox,pci";
1207                 device_type = "pci";
1208                 bus-range = <0x00 0xff>;
1209                 #address-cells = <3>;
1210                 #size-cells = <2>;
1211                 ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000 // MEM0
1212                           0x02000000 0 0x31000000 0x3e000000 0 0x2000 // MEM1
1213                           0x01000000 0 0x40000000 0x40000000 0 0x2000>;
1214                 sandbox,dev-info = <0x08 0x00 0x1234 0x5678
1215                                     0x0c 0x00 0x1234 0x5678
1216                                     0x10 0x00 0x1234 0x5678>;
1217                 pci@10,0 {
1218                         reg = <0x8000 0 0 0 0>;
1219                 };
1220         };
1221
1222         pci2: pci@2 {
1223                 compatible = "sandbox,pci";
1224                 device_type = "pci";
1225                 bus-range = <0x00 0xff>;
1226                 #address-cells = <3>;
1227                 #size-cells = <2>;
1228                 ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
1229                                 0x01000000 0 0x60000000 0x60000000 0 0x2000>;
1230                 sandbox,dev-info = <0x08 0x00 0x1234 0x5678>;
1231                 pci@1f,0 {
1232                         compatible = "pci-generic";
1233                         reg = <0xf800 0 0 0 0>;
1234                         sandbox,emul = <&swap_case_emul2_1f>;
1235                 };
1236         };
1237
1238         pci-emul2 {
1239                 compatible = "sandbox,pci-emul-parent";
1240                 swap_case_emul2_1f: emul2@1f,0 {
1241                         compatible = "sandbox,swap-case";
1242                 };
1243         };
1244
1245         pci_ep: pci_ep {
1246                 compatible = "sandbox,pci_ep";
1247         };
1248
1249         probing {
1250                 compatible = "simple-bus";
1251                 test1 {
1252                         compatible = "denx,u-boot-probe-test";
1253                 };
1254
1255                 test2 {
1256                         compatible = "denx,u-boot-probe-test";
1257                 };
1258
1259                 test3 {
1260                         compatible = "denx,u-boot-probe-test";
1261                 };
1262
1263                 test4 {
1264                         compatible = "denx,u-boot-probe-test";
1265                         first-syscon = <&syscon0>;
1266                         second-sys-ctrl = <&another_system_controller>;
1267                         third-syscon = <&syscon2>;
1268                 };
1269         };
1270
1271         pwrdom: power-domain {
1272                 compatible = "sandbox,power-domain";
1273                 #power-domain-cells = <1>;
1274         };
1275
1276         power-domain-test {
1277                 compatible = "sandbox,power-domain-test";
1278                 power-domains = <&pwrdom 2>;
1279         };
1280
1281         pwm: pwm {
1282                 compatible = "sandbox,pwm";
1283                 #pwm-cells = <2>;
1284                 pinctrl-names = "default";
1285                 pinctrl-0 = <&pinmux_pwm_pins>;
1286         };
1287
1288         pwm2 {
1289                 compatible = "sandbox,pwm";
1290                 #pwm-cells = <2>;
1291         };
1292
1293         ram {
1294                 compatible = "sandbox,ram";
1295         };
1296
1297         reset@0 {
1298                 compatible = "sandbox,warm-reset";
1299                 bootph-some-ram;
1300         };
1301
1302         reset@1 {
1303                 compatible = "sandbox,reset";
1304                 bootph-some-ram;
1305         };
1306
1307         resetc: reset-ctl {
1308                 compatible = "sandbox,reset-ctl";
1309                 #reset-cells = <1>;
1310         };
1311
1312         reset-ctl-test {
1313                 compatible = "sandbox,reset-ctl-test";
1314                 resets = <&resetc 100>, <&resetc 2>, <&resetc 20>, <&resetc 40>;
1315                 reset-names = "other", "test", "test2", "test3";
1316         };
1317
1318         rng {
1319                 compatible = "sandbox,sandbox-rng";
1320         };
1321
1322         rproc_1: rproc@1 {
1323                 compatible = "sandbox,test-processor";
1324                 remoteproc-name = "remoteproc-test-dev1";
1325         };
1326
1327         rproc_2: rproc@2 {
1328                 compatible = "sandbox,test-processor";
1329                 internal-memory-mapped;
1330                 remoteproc-name = "remoteproc-test-dev2";
1331         };
1332
1333         panel {
1334                 compatible = "simple-panel";
1335                 backlight = <&backlight 0 100>;
1336         };
1337
1338         scsi {
1339                 compatible = "sandbox,scsi";
1340                 sandbox,filepath = "scsi.img";
1341         };
1342
1343         smem@0 {
1344                 compatible = "sandbox,smem";
1345         };
1346
1347         sound {
1348                 compatible = "sandbox,sound";
1349                 cpu {
1350                         sound-dai = <&i2s 0>;
1351                 };
1352
1353                 codec {
1354                         sound-dai = <&audio 0>;
1355                 };
1356         };
1357
1358         spi@0 {
1359                 #address-cells = <1>;
1360                 #size-cells = <0>;
1361                 reg = <0 1>;
1362                 compatible = "sandbox,spi";
1363                 cs-gpios = <0>, <0>, <&gpio_a 0>;
1364                 pinctrl-names = "default";
1365                 pinctrl-0 = <&pinmux_spi0_pins>;
1366
1367                 spi.bin@0 {
1368                         reg = <0>;
1369                         compatible = "spansion,m25p16", "jedec,spi-nor";
1370                         spi-max-frequency = <40000000>;
1371                         sandbox,filename = "spi.bin";
1372                 };
1373                 spi.bin@1 {
1374                         reg = <1>;
1375                         compatible = "spansion,m25p16", "jedec,spi-nor";
1376                         spi-max-frequency = <50000000>;
1377                         sandbox,filename = "spi.bin";
1378                         spi-cpol;
1379                         spi-cpha;
1380                 };
1381         };
1382
1383         syscon0: syscon@0 {
1384                 compatible = "sandbox,syscon0";
1385                 reg = <0x10 16>;
1386         };
1387
1388         another_system_controller: syscon@1 {
1389                 compatible = "sandbox,syscon1";
1390                 reg = <0x20 5
1391                         0x28 6
1392                         0x30 7
1393                         0x38 8>;
1394         };
1395
1396         syscon2: syscon@2 {
1397                 compatible = "simple-mfd", "syscon";
1398                 reg = <0x40 5
1399                         0x48 6
1400                         0x50 7
1401                         0x58 8>;
1402         };
1403
1404         syscon3: syscon@3 {
1405                 compatible = "simple-mfd", "syscon";
1406                 reg = <0x000100 0x10>;
1407
1408                 muxcontroller0: a-mux-controller {
1409                         compatible = "mmio-mux";
1410                         #mux-control-cells = <1>;
1411
1412                         mux-reg-masks = <0x0 0x30>, /* 0: reg 0x0, bits 5:4 */
1413                                         <0xc 0x1E>, /* 1: reg 0xc, bits 4:1 */
1414                                         <0x4 0xFF>; /* 2: reg 0x4, bits 7:0 */
1415                         idle-states = <MUX_IDLE_AS_IS>, <0x02>, <0x73>;
1416                         u-boot,mux-autoprobe;
1417                 };
1418         };
1419
1420         muxcontroller1: emul-mux-controller {
1421                 compatible = "mux-emul";
1422                 #mux-control-cells = <0>;
1423                 u-boot,mux-autoprobe;
1424                 idle-state = <0xabcd>;
1425         };
1426
1427         testfdtm0 {
1428                 compatible = "denx,u-boot-fdtm-test";
1429         };
1430
1431         testfdtm1: testfdtm1 {
1432                 compatible = "denx,u-boot-fdtm-test";
1433         };
1434
1435         testfdtm2 {
1436                 compatible = "denx,u-boot-fdtm-test";
1437         };
1438
1439         timer@0 {
1440                 compatible = "sandbox,timer";
1441                 clock-frequency = <1000000>;
1442         };
1443
1444         timer@1 {
1445                 compatible = "sandbox,timer";
1446                 sandbox,timebase-frequency-fallback;
1447         };
1448
1449         tpm2 {
1450                 compatible = "sandbox,tpm2";
1451                 memory-region = <&event_log>;
1452         };
1453
1454         tpm {
1455                 compatible = "google,sandbox-tpm";
1456         };
1457
1458         uart0: serial {
1459                 compatible = "sandbox,serial";
1460                 bootph-all;
1461                 pinctrl-names = "default";
1462                 pinctrl-0 = <&pinmux_uart0_pins>;
1463         };
1464
1465         usb_0: usb@0 {
1466                 compatible = "sandbox,usb";
1467                 status = "disabled";
1468                 hub {
1469                         compatible = "sandbox,usb-hub";
1470                         #address-cells = <1>;
1471                         #size-cells = <0>;
1472                         flash-stick {
1473                                 reg = <0>;
1474                                 compatible = "sandbox,usb-flash";
1475                         };
1476                 };
1477         };
1478
1479         usb_1: usb@1 {
1480                 compatible = "sandbox,usb";
1481                 iommus = <&iommu>;
1482                 hub {
1483                         compatible = "usb-hub";
1484                         usb,device-class = <9>;
1485                         #address-cells = <1>;
1486                         #size-cells = <0>;
1487                         hub-emul {
1488                                 compatible = "sandbox,usb-hub";
1489                                 #address-cells = <1>;
1490                                 #size-cells = <0>;
1491                                 flash-stick@0 {
1492                                         reg = <0>;
1493                                         compatible = "sandbox,usb-flash";
1494                                         sandbox,filepath = "testflash.bin";
1495                                 };
1496
1497                                 flash-stick@1 {
1498                                         reg = <1>;
1499                                         compatible = "sandbox,usb-flash";
1500                                         sandbox,filepath = "testflash1.bin";
1501                                 };
1502
1503                                 flash-stick@2 {
1504                                         reg = <2>;
1505                                         compatible = "sandbox,usb-flash";
1506                                         sandbox,filepath = "testflash2.bin";
1507                                 };
1508
1509                                 keyb@3 {
1510                                         reg = <3>;
1511                                         compatible = "sandbox,usb-keyb";
1512                                 };
1513
1514                         };
1515
1516                         usbstor@1 {
1517                                 reg = <1>;
1518                         };
1519                         usbstor@3 {
1520                                 reg = <3>;
1521                         };
1522                 };
1523         };
1524
1525         usb_2: usb@2 {
1526                 compatible = "sandbox,usb";
1527                 status = "disabled";
1528         };
1529
1530         spmi: spmi@0 {
1531                 compatible = "sandbox,spmi";
1532                 #address-cells = <0x1>;
1533                 #size-cells = <0x1>;
1534                 ranges;
1535                 pm8916@0 {
1536                         compatible = "qcom,spmi-pmic";
1537                         reg = <0x0 0x1>;
1538                         #address-cells = <0x1>;
1539                         #size-cells = <0x1>;
1540                         ranges;
1541
1542                         spmi_gpios: gpios@c000 {
1543                                 compatible = "qcom,pm8916-gpio";
1544                                 reg = <0xc000 0x400>;
1545                                 gpio-controller;
1546                                 gpio-count = <4>;
1547                                 #gpio-cells = <2>;
1548                                 gpio-bank-name="spmi";
1549                         };
1550                 };
1551         };
1552
1553         wdt0: wdt@0 {
1554                 compatible = "sandbox,wdt";
1555                 hw_margin_ms = <200>;
1556         };
1557
1558         axi: axi@0 {
1559                 compatible = "sandbox,axi";
1560                 #address-cells = <0x1>;
1561                 #size-cells = <0x1>;
1562                 store@0 {
1563                         compatible = "sandbox,sandbox_store";
1564                         reg = <0x0 0x400>;
1565                 };
1566         };
1567
1568         chosen {
1569                 #address-cells = <1>;
1570                 #size-cells = <1>;
1571                 setting = "sunrise ohoka";
1572                 other-node = "/some-bus/c-test@5";
1573                 int-values = <0x1937 72993>;
1574                 u-boot,acpi-ssdt-order = <&acpi_test2 &acpi_test1>;
1575                 chosen-test {
1576                         compatible = "denx,u-boot-fdt-test";
1577                         reg = <9 1>;
1578                 };
1579         };
1580
1581         translation-test@8000 {
1582                 compatible = "simple-bus";
1583                 reg = <0x8000 0x4000>;
1584
1585                 #address-cells = <0x2>;
1586                 #size-cells = <0x1>;
1587
1588                 ranges = <0 0x0 0x8000 0x1000
1589                           1 0x100 0x9000 0x1000
1590                           2 0x200 0xA000 0x1000
1591                           3 0x300 0xB000 0x1000
1592                          >;
1593
1594                 dma-ranges = <0 0x000 0x10000000 0x1000
1595                               1 0x100 0x20000000 0x1000
1596                              >;
1597
1598                 dev@0,0 {
1599                         compatible = "denx,u-boot-fdt-dummy";
1600                         reg = <0 0x0 0x1000>;
1601                         reg-names = "sandbox-dummy-0";
1602                 };
1603
1604                 dev@1,100 {
1605                         compatible = "denx,u-boot-fdt-dummy";
1606                         reg = <1 0x100 0x1000>;
1607
1608                 };
1609
1610                 dev@2,200 {
1611                         compatible = "denx,u-boot-fdt-dummy";
1612                         reg = <2 0x200 0x1000>;
1613                 };
1614
1615
1616                 noxlatebus@3,300 {
1617                         compatible = "simple-bus";
1618                         reg = <3 0x300 0x1000>;
1619
1620                         #address-cells = <0x1>;
1621                         #size-cells = <0x0>;
1622
1623                         dev@42 {
1624                                 compatible = "denx,u-boot-fdt-dummy";
1625                                 reg = <0x42>;
1626                         };
1627                 };
1628         };
1629
1630         ofnode-foreach {
1631                 compatible = "foreach";
1632
1633                 first {
1634                         prop1 = <1>;
1635                         prop2 = <2>;
1636                 };
1637
1638                 second {
1639                         prop1 = <1>;
1640                         prop2 = <2>;
1641                 };
1642         };
1643
1644         osd {
1645                 compatible = "sandbox,sandbox_osd";
1646         };
1647
1648         sandbox_tee {
1649                 compatible = "sandbox,tee";
1650         };
1651
1652         sandbox_virtio1 {
1653                 compatible = "sandbox,virtio1";
1654                 virtio-type = <4>;      /* rng */
1655         };
1656
1657         sandbox_virtio2 {
1658                 compatible = "sandbox,virtio2";
1659         };
1660
1661         sandbox-virtio-blk {
1662                 compatible = "sandbox,virtio1";
1663                 virtio-type = <2>;      /* block */
1664         };
1665
1666         sandbox_scmi {
1667                 compatible = "sandbox,scmi-devices";
1668                 power-domains = <&pwrdom_scmi 2>;
1669                 clocks = <&clk_scmi 2>, <&clk_scmi 0>;
1670                 resets = <&reset_scmi 3>;
1671                 regul0-supply = <&regul0_scmi>;
1672                 regul1-supply = <&regul1_scmi>;
1673         };
1674
1675         pinctrl {
1676                 compatible = "sandbox,pinctrl";
1677
1678                 pinctrl-names = "default", "alternate";
1679                 pinctrl-0 = <&pinctrl_gpios>, <&pinctrl_i2s>;
1680                 pinctrl-1 = <&pinctrl_spi>, <&pinctrl_i2c>;
1681
1682                 pinctrl_gpios: gpios {
1683                         gpio0 {
1684                                 pins = "P5";
1685                                 function = "GPIO";
1686                                 bias-pull-up;
1687                                 input-disable;
1688                         };
1689                         gpio1 {
1690                                 pins = "P6";
1691                                 function = "GPIO";
1692                                 output-high;
1693                                 drive-open-drain;
1694                         };
1695                         gpio2 {
1696                                 pinmux = <SANDBOX_PINMUX(7, SANDBOX_PINMUX_GPIO)>;
1697                                 bias-pull-down;
1698                                 input-enable;
1699                         };
1700                         gpio3 {
1701                                 pinmux = <SANDBOX_PINMUX(8, SANDBOX_PINMUX_GPIO)>;
1702                                 bias-disable;
1703                         };
1704                 };
1705
1706                 pinctrl_i2c: i2c {
1707                         groups {
1708                                 groups = "I2C_UART";
1709                                 function = "I2C";
1710                         };
1711
1712                         pins {
1713                                 pins = "P0", "P1";
1714                                 drive-open-drain;
1715                         };
1716                 };
1717
1718                 pinctrl_i2s: i2s {
1719                         groups = "SPI_I2S";
1720                         function = "I2S";
1721                 };
1722
1723                 pinctrl_spi: spi {
1724                         groups = "SPI_I2S";
1725                         function = "SPI";
1726
1727                         cs {
1728                                 pinmux = <SANDBOX_PINMUX(5, SANDBOX_PINMUX_CS)>,
1729                                          <SANDBOX_PINMUX(6, SANDBOX_PINMUX_CS)>;
1730                         };
1731                 };
1732         };
1733
1734         pinctrl-single-no-width {
1735                 compatible = "pinctrl-single";
1736                 reg = <0x0000 0x238>;
1737                 #pinctrl-cells = <1>;
1738                 pinctrl-single,function-mask = <0x7f>;
1739         };
1740
1741         pinctrl-single-pins {
1742                 compatible = "pinctrl-single";
1743                 reg = <0x0000 0x238>;
1744                 #pinctrl-cells = <1>;
1745                 pinctrl-single,register-width = <32>;
1746                 pinctrl-single,function-mask = <0x7f>;
1747
1748                 pinmux_pwm_pins: pinmux_pwm_pins {
1749                         pinctrl-single,pins = < 0x48 0x06 >;
1750                 };
1751
1752                 pinmux_spi0_pins: pinmux_spi0_pins {
1753                         pinctrl-single,pins = <
1754                                 0x190 0x0c
1755                                 0x194 0x0c
1756                                 0x198 0x23
1757                                 0x19c 0x0c
1758                         >;
1759                 };
1760
1761                 pinmux_uart0_pins: pinmux_uart0_pins {
1762                         pinctrl-single,pins = <
1763                                 0x70 0x30
1764                                 0x74 0x00
1765                         >;
1766                 };
1767         };
1768
1769         pinctrl-single-bits {
1770                 compatible = "pinctrl-single";
1771                 reg = <0x0000 0x50>;
1772                 #pinctrl-cells = <2>;
1773                 pinctrl-single,bit-per-mux;
1774                 pinctrl-single,register-width = <32>;
1775                 pinctrl-single,function-mask = <0xf>;
1776
1777                 pinmux_i2c0_pins: pinmux_i2c0_pins {
1778                         pinctrl-single,bits = <
1779                                 0x10 0x00002200 0x0000ff00
1780                         >;
1781                 };
1782
1783                 pinmux_lcd_pins: pinmux_lcd_pins {
1784                         pinctrl-single,bits = <
1785                                 0x40 0x22222200 0xffffff00
1786                                 0x44 0x22222222 0xffffffff
1787                                 0x48 0x00000022 0x000000ff
1788                                 0x48 0x02000000 0x0f000000
1789                                 0x4c 0x02000022 0x0f0000ff
1790                         >;
1791                 };
1792         };
1793
1794         hwspinlock@0 {
1795                 compatible = "sandbox,hwspinlock";
1796         };
1797
1798         dma: dma {
1799                 compatible = "sandbox,dma";
1800                 #dma-cells = <1>;
1801
1802                 dmas = <&dma 0>, <&dma 1>, <&dma 2>;
1803                 dma-names = "m2m", "tx0", "rx0";
1804         };
1805
1806         /*
1807          * keep mdio-mux ahead of mdio so that the mux is removed first at the
1808          * end of the test.  If parent mdio is removed first, clean-up of the
1809          * mux will trigger a 2nd probe of parent-mdio, leaving parent-mdio
1810          * active at the end of the test.  That it turn doesn't allow the mdio
1811          * class to be destroyed, triggering an error.
1812          */
1813         mdio-mux-test {
1814                 compatible = "sandbox,mdio-mux";
1815                 #address-cells = <1>;
1816                 #size-cells = <0>;
1817                 mdio-parent-bus = <&mdio>;
1818
1819                 mdio-ch-test@0 {
1820                         reg = <0>;
1821                 };
1822                 mdio-ch-test@1 {
1823                         reg = <1>;
1824                 };
1825         };
1826
1827         mdio: mdio-test {
1828                 compatible = "sandbox,mdio";
1829                 #address-cells = <1>;
1830                 #size-cells = <0>;
1831
1832                 ethphy1: ethernet-phy@1 {
1833                         reg = <1>;
1834                 };
1835         };
1836
1837         pm-bus-test {
1838                 compatible = "simple-pm-bus";
1839                 clocks = <&clk_sandbox 4>;
1840                 power-domains = <&pwrdom 1>;
1841         };
1842
1843         resetc2: syscon-reset {
1844                 compatible = "syscon-reset";
1845                 #reset-cells = <1>;
1846                 regmap = <&syscon0>;
1847                 offset = <1>;
1848                 mask = <0x27FFFFFF>;
1849                 assert-high = <0>;
1850         };
1851
1852         syscon-reset-test {
1853                 compatible = "sandbox,misc_sandbox";
1854                 resets = <&resetc2 15>, <&resetc2 30>, <&resetc2 60>;
1855                 reset-names = "valid", "no_mask", "out_of_range";
1856         };
1857
1858         sysinfo {
1859                 compatible = "sandbox,sysinfo-sandbox";
1860         };
1861
1862         sysinfo-gpio {
1863                 compatible = "gpio-sysinfo";
1864                 gpios = <&gpio_a 15>, <&gpio_a 16>, <&gpio_a 17>;
1865                 revisions = <19>, <5>;
1866                 names = "rev_a", "foo";
1867         };
1868
1869         some_regmapped-bus {
1870                 #address-cells = <0x1>;
1871                 #size-cells = <0x1>;
1872
1873                 ranges = <0x0 0x0 0x10>;
1874                 compatible = "simple-bus";
1875
1876                 regmap-test_0 {
1877                         reg = <0 0x10>;
1878                         compatible = "sandbox,regmap_test";
1879                 };
1880         };
1881
1882         thermal {
1883                 compatible = "sandbox,thermal";
1884         };
1885
1886         fwu-mdata {
1887                 compatible = "u-boot,fwu-mdata-gpt";
1888                 fwu-mdata-store = <&mmc0>;
1889         };
1890
1891         nvmxip-qspi1@08000000 {
1892                 compatible = "nvmxip,qspi";
1893                 reg = <0x08000000 0x00200000>;
1894                 lba_shift = <9>;
1895                 lba = <4096>;
1896         };
1897
1898         nvmxip-qspi2@08200000 {
1899                 compatible = "nvmxip,qspi";
1900                 reg = <0x08200000 0x00100000>;
1901                 lba_shift = <9>;
1902                 lba = <2048>;
1903         };
1904
1905         extcon {
1906                 compatible = "sandbox,extcon";
1907         };
1908
1909         arm-ffa-emul {
1910                 compatible = "sandbox,arm-ffa-emul";
1911
1912                 sandbox-arm-ffa {
1913                                 compatible = "sandbox,arm-ffa";
1914                 };
1915         };
1916 };
1917
1918 #include "sandbox_pmic.dtsi"
1919 #include "cros-ec-keyboard.dtsi"
1920
1921 #ifdef CONFIG_SANDBOX_VPL
1922 #include "sandbox_vpl.dtsi"
1923 #endif
1924
1925 #include "cedit.dtsi"