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