3 #include <dt-bindings/gpio/gpio.h>
4 #include <dt-bindings/gpio/sandbox-gpio.h>
5 #include <dt-bindings/pinctrl/sandbox-pinmux.h>
6 #include <dt-bindings/mux/mux.h>
10 compatible = "sandbox";
16 eth0 = "/eth@10002000";
28 remoteproc0 = &rproc_1;
29 remoteproc1 = &rproc_2;
34 testbus3 = "/some-bus";
35 testfdt0 = "/some-bus/c-test@0";
36 testfdt12 = "/some-bus/c-test@1";
38 testfdt5 = "/some-bus/c-test@5";
40 testfdtm1 = &testfdtm1;
41 fdt-dummy0 = "/translation-test@8000/dev@0,0";
42 fdt-dummy1 = "/translation-test@8000/dev@1,100";
43 fdt-dummy2 = "/translation-test@8000/dev@2,200";
44 fdt-dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
45 fdt-dummy4 = "/translation-test@8000/xlatebus@4,400/devs/dev@19";
54 compatible = "sandbox,audio-codec";
55 #sound-dai-cells = <1>;
59 compatible = "gpio-keys";
62 gpios = <&gpio_a 3 0>;
67 gpios = <&gpio_a 4 0>;
74 compatible = "google,cros-ec-sandbox";
77 * This describes the flash memory within the EC. Note
78 * that the STM32L flash erases to 0, not 0xff.
81 image-pos = <0x08000000>;
85 /* Information for sandbox */
95 image-pos = <0x10000>;
102 compatible = "sandbox,dsi-host";
107 compatible = "denx,u-boot-fdt-test";
111 test-gpios = <&gpio_a 1>, <&gpio_a 4>,
112 <&gpio_b 5 GPIO_ACTIVE_HIGH 3 2 1>,
114 test2-gpios = <&gpio_a 1>, <&gpio_a 4>,
115 <&gpio_b 6 GPIO_ACTIVE_LOW 3 2 1>,
116 <&gpio_b 7 GPIO_IN 3 2 1>,
117 <&gpio_b 8 GPIO_OUT 3 2 1>,
118 <&gpio_b 9 (GPIO_OUT|GPIO_OUT_ACTIVE) 3 2 1>;
120 <&gpio_c 0 (GPIO_OUT|GPIO_OPEN_DRAIN)>,
121 <&gpio_c 1 (GPIO_OUT|GPIO_OPEN_SOURCE)>,
122 <&gpio_c 2 GPIO_OUT>,
123 <&gpio_c 3 (GPIO_IN|GPIO_PULL_UP)>,
124 <&gpio_c 4 (GPIO_IN|GPIO_PULL_DOWN)>,
126 <&gpio_c 6 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_DRAIN)>,
127 <&gpio_c 7 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_SOURCE)>;
128 test4-gpios = <&gpio_a 14>, <&gpio_b 4 1 3 2 1>;
129 test5-gpios = <&gpio_a 19>;
132 uint-value = <(-1234)>;
133 int64-value = /bits/ 64 <0x1111222233334444>;
134 int-array = <5678 9123 4567>;
135 str-value = "test string";
136 interrupts-extended = <&irq 3 0>;
138 phandle-value = <&gpio_c 10>, <0xFFFFFFFF 20>, <&gpio_a 30>;
140 mux-controls = <&muxcontroller0 0>, <&muxcontroller0 1>,
141 <&muxcontroller0 2>, <&muxcontroller0 3>,
143 mux-control-names = "mux0", "mux1", "mux2", "mux3", "mux4";
144 mux-syscon = <&syscon3>;
147 clock-frequency = <6500000>;
159 pixelclk-active = <1>;
165 clock-frequency = <9000000>;
177 pixelclk-active = <0>;
180 clock-frequency = <33500000>;
184 hfront-porch = <164>;
195 compatible = "not,compatible";
202 backlight: backlight {
203 compatible = "pwm-backlight";
204 enable-gpios = <&gpio_a 1>;
205 power-supply = <&ldo_1>;
206 pwms = <&pwm 0 1000>;
207 default-brightness-level = <5>;
208 brightness-levels = <0 16 32 64 128 170 202 234 255>;
212 compatible = "simple-bus";
214 compatible = "sandbox,phy";
219 compatible = "simple-bus";
225 compatible = "denx,u-boot-fdt-test";
229 mux-controls = <&muxcontroller0 0>;
230 mux-control-names = "mux0";
233 phy_provider0: gen_phy@0 {
234 compatible = "sandbox,phy";
238 phy_provider1: gen_phy@1 {
239 compatible = "sandbox,phy";
244 phy_provider2: gen_phy@2 {
245 compatible = "sandbox,phy";
249 gen_phy_user: gen_phy_user {
250 compatible = "simple-bus";
251 phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
252 phy-names = "phy1", "phy2", "phy3";
255 gen_phy_user1: gen_phy_user1 {
256 compatible = "simple-bus";
257 phys = <&phy_provider0 0>, <&phy_provider2>;
258 phy-names = "phy1", "phy2";
262 #address-cells = <1>;
264 compatible = "denx,u-boot-test-bus";
269 compatible = "denx,u-boot-fdt-test";
275 compatible = "denx,u-boot-fdt-test";
281 compatible = "denx,u-boot-fdt-test";
292 compatible = "google,another-fdt-test";
299 compatible = "google,another-fdt-test";
303 compatible = "denx,u-boot-fdt-test";
307 compatible = "denx,u-boot-fdt-test";
311 compatible = "denx,u-boot-fdt-test1";
315 compatible = "mediatek,u-boot-fdt-test";
316 #address-cells = <1>;
333 compatible = "denx,u-boot-devres-test";
338 compatible = "denx,u-boot-fdt-test";
339 test4-gpios = <&gpio_a 14>, <&gpio_b 4 1 3 2 1>;
340 test5-gpios = <&gpio_a 19>;
343 acpi_test1: acpi-test {
344 compatible = "denx,u-boot-acpi-test";
345 acpi-ssdt-test-data = "ab";
346 acpi-dsdt-test-data = "hi";
348 compatible = "denx,u-boot-acpi-test";
352 acpi_test2: acpi-test2 {
353 compatible = "denx,u-boot-acpi-test";
354 acpi-ssdt-test-data = "cd";
355 acpi-dsdt-test-data = "jk";
359 clk_fixed: clk-fixed {
360 compatible = "fixed-clock";
362 clock-frequency = <1234>;
365 clk_fixed_factor: clk-fixed-factor {
366 compatible = "fixed-factor-clock";
370 clocks = <&clk_fixed>;
374 compatible = "fixed-clock";
376 clock-frequency = <20000000>;
380 clk_sandbox: clk-sbox {
381 compatible = "sandbox,clk";
383 assigned-clocks = <&clk_sandbox 3>;
384 assigned-clock-rates = <321>;
388 compatible = "sandbox,clk-test";
389 clocks = <&clk_fixed>,
394 clock-names = "fixed", "i2c", "spi", "uart2", "uart1";
398 compatible = "sandbox,clk-ccf";
402 compatible = "sandbox,eth";
403 reg = <0x10002000 0x1000>;
404 fake-host-hwaddr = [00 00 66 44 22 00];
407 eth_5: eth@10003000 {
408 compatible = "sandbox,eth";
409 reg = <0x10003000 0x1000>;
410 fake-host-hwaddr = [00 00 66 44 22 11];
414 compatible = "sandbox,eth";
415 reg = <0x10005000 0x1000>;
416 fake-host-hwaddr = [00 00 66 44 22 33];
420 compatible = "sandbox,eth";
421 reg = <0x10004000 0x1000>;
422 fake-host-hwaddr = [00 00 66 44 22 22];
426 sandbox_firmware: sandbox-firmware {
427 compatible = "sandbox,firmware";
430 sandbox-scmi-agent@0 {
431 compatible = "sandbox,scmi-agent";
432 #address-cells = <1>;
435 clk_scmi0: protocol@14 {
440 reset_scmi0: protocol@16 {
446 sandbox-scmi-agent@1 {
447 compatible = "sandbox,scmi-agent";
448 #address-cells = <1>;
451 clk_scmi1: protocol@14 {
463 compatible = "sandbox,pinctrl-gpio";
466 compatible = "sandbox,gpio";
469 gpio-bank-name = "a";
470 sandbox,gpio-count = <20>;
471 hog_input_active_low {
474 gpios = <10 GPIO_ACTIVE_LOW>;
476 hog_input_active_high {
479 gpios = <11 GPIO_ACTIVE_HIGH>;
484 gpios = <12 GPIO_ACTIVE_HIGH>;
489 gpios = <13 GPIO_ACTIVE_HIGH>;
493 gpio_b: extra-gpios {
494 compatible = "sandbox,gpio";
497 gpio-bank-name = "b";
498 sandbox,gpio-count = <10>;
501 gpio_c: pinmux-gpios {
502 compatible = "sandbox,gpio";
505 gpio-bank-name = "c";
506 sandbox,gpio-count = <10>;
511 #address-cells = <1>;
514 compatible = "sandbox,i2c";
515 clock-frequency = <100000>;
518 compatible = "i2c-eeprom";
519 sandbox,emul = <&emul_eeprom>;
521 compatible = "fixed-partitions";
522 #address-cells = <1>;
524 bootcount_i2c: bootcount@10 {
532 compatible = "sandbox-rtc";
533 sandbox,emul = <&emul0>;
538 compatible = "sandbox-rtc";
539 sandbox,emul = <&emul1>;
544 compatible = "sandbox,i2c-emul-parent";
545 emul_eeprom: emul-eeprom {
546 compatible = "sandbox,i2c-eeprom";
547 sandbox,filename = "i2c.bin";
548 sandbox,size = <256>;
551 compatible = "sandbox,i2c-rtc";
554 compatible = "sandbox,i2c-rtc";
558 sandbox_pmic: sandbox_pmic {
560 sandbox,emul = <&emul_pmic0>;
565 sandbox,emul = <&emul_pmic1>;
570 compatible = "u-boot,bootcount-rtc";
576 compatible = "u-boot,bootcount-i2c-eeprom";
577 i2c-eeprom = <&bootcount_i2c>;
581 compatible = "sandbox,adc";
582 vdd-supply = <&buck2>;
583 vss-microvolts = <0>;
587 compatible = "sandbox,irq";
588 interrupt-controller;
589 #interrupt-cells = <2>;
594 compatible = "sandbox,lcd-sdl";
600 compatible = "gpio-leds";
603 gpios = <&gpio_a 1 0>;
604 label = "sandbox:red";
608 gpios = <&gpio_a 2 0>;
609 label = "sandbox:green";
613 gpios = <&gpio_a 5 0>;
614 label = "sandbox:default_on";
615 default-state = "on";
619 gpios = <&gpio_a 6 0>;
620 /* label intentionally omitted */
621 default-state = "off";
626 compatible = "sandbox,mbox";
631 compatible = "sandbox,mbox-test";
632 mboxes = <&mbox 100>, <&mbox 1>;
633 mbox-names = "other", "test";
637 timebase-frequency = <2000000>;
639 timebase-frequency = <3000000>;
640 compatible = "sandbox,cpu_sandbox";
645 compatible = "sandbox,cpu_sandbox";
650 compatible = "sandbox,cpu_sandbox";
656 compatible = "sandbox,soc";
660 compatible = "sandbox,i2s";
661 #sound-dai-cells = <1>;
662 sandbox,silent; /* Don't emit sounds while testing */
666 compatible = "sandbox,nop_sandbox1";
668 compatible = "sandbox,nop_sandbox2";
672 compatible = "sandbox,nop_sandbox2";
678 compatible = "sandbox,misc_sandbox";
682 compatible = "sandbox,mmc";
686 compatible = "sandbox,mmc";
690 compatible = "sandbox,mmc";
694 compatible = "sandbox,pch";
698 compatible = "sandbox,pci";
700 bus-range = <0x00 0xff>;
701 #address-cells = <3>;
703 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000000
704 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
706 compatible = "pci-generic";
707 reg = <0x0000 0 0 0 0>;
708 sandbox,emul = <&swap_case_emul0_0>;
711 compatible = "pci-generic";
712 /* reg 0 is at 0x14, using FDT_PCI_SPACE_MEM32 */
713 reg = <0x02000814 0 0 0 0
715 sandbox,emul = <&swap_case_emul0_1>;
718 compatible = "sandbox,p2sb";
719 reg = <0x02001010 0 0 0 0>;
720 sandbox,emul = <&p2sb_emul>;
723 intel,p2sb-port-id = <3>;
724 compatible = "sandbox,adder";
728 compatible = "sandbox,pmc";
729 reg = <0xf000 0 0 0 0>;
730 sandbox,emul = <&pmc_emul1e>;
732 gpe0-dwx-mask = <0xf>;
733 gpe0-dwx-shift-base = <4>;
739 compatible = "pci-generic";
740 /* reg 0 is at 0x10, using FDT_PCI_SPACE_IO */
741 reg = <0x0100f810 0 0 0 0>;
742 sandbox,emul = <&swap_case_emul0_1f>;
747 compatible = "sandbox,pci-emul-parent";
748 swap_case_emul0_0: emul0@0,0 {
749 compatible = "sandbox,swap-case";
751 swap_case_emul0_1: emul0@1,0 {
752 compatible = "sandbox,swap-case";
755 swap_case_emul0_1f: emul0@1f,0 {
756 compatible = "sandbox,swap-case";
758 p2sb_emul: emul@2,0 {
759 compatible = "sandbox,p2sb-emul";
761 pmc_emul1e: emul@1e,0 {
762 compatible = "sandbox,pmc-emul";
767 compatible = "sandbox,pci";
769 bus-range = <0x00 0xff>;
770 #address-cells = <3>;
772 ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000 // MEM0
773 0x02000000 0 0x31000000 0x31000000 0 0x2000 // MEM1
774 0x01000000 0 0x40000000 0x40000000 0 0x2000>;
775 sandbox,dev-info = <0x08 0x00 0x1234 0x5678
776 0x0c 0x00 0x1234 0x5678
777 0x10 0x00 0x1234 0x5678>;
779 reg = <0x8000 0 0 0 0>;
784 compatible = "sandbox,pci";
786 bus-range = <0x00 0xff>;
787 #address-cells = <3>;
789 ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
790 0x01000000 0 0x60000000 0x60000000 0 0x2000>;
791 sandbox,dev-info = <0x08 0x00 0x1234 0x5678>;
793 compatible = "pci-generic";
794 reg = <0xf800 0 0 0 0>;
795 sandbox,emul = <&swap_case_emul2_1f>;
800 compatible = "sandbox,pci-emul-parent";
801 swap_case_emul2_1f: emul2@1f,0 {
802 compatible = "sandbox,swap-case";
807 compatible = "sandbox,pci_ep";
811 compatible = "simple-bus";
813 compatible = "denx,u-boot-probe-test";
817 compatible = "denx,u-boot-probe-test";
821 compatible = "denx,u-boot-probe-test";
825 compatible = "denx,u-boot-probe-test";
826 first-syscon = <&syscon0>;
827 second-sys-ctrl = <&another_system_controller>;
828 third-syscon = <&syscon2>;
832 pwrdom: power-domain {
833 compatible = "sandbox,power-domain";
834 #power-domain-cells = <1>;
838 compatible = "sandbox,power-domain-test";
839 power-domains = <&pwrdom 2>;
843 compatible = "sandbox,pwm";
848 compatible = "sandbox,pwm";
853 compatible = "sandbox,ram";
857 compatible = "sandbox,warm-reset";
861 compatible = "sandbox,reset";
865 compatible = "sandbox,reset-ctl";
870 compatible = "sandbox,reset-ctl-test";
871 resets = <&resetc 100>, <&resetc 2>;
872 reset-names = "other", "test";
876 compatible = "sandbox,sandbox-rng";
880 compatible = "sandbox,test-processor";
881 remoteproc-name = "remoteproc-test-dev1";
885 compatible = "sandbox,test-processor";
886 internal-memory-mapped;
887 remoteproc-name = "remoteproc-test-dev2";
891 compatible = "simple-panel";
892 backlight = <&backlight 0 100>;
896 compatible = "sandbox,smem";
900 compatible = "sandbox,sound";
902 sound-dai = <&i2s 0>;
906 sound-dai = <&audio 0>;
911 #address-cells = <1>;
914 compatible = "sandbox,spi";
915 cs-gpios = <0>, <0>, <&gpio_a 0>;
918 compatible = "spansion,m25p16", "jedec,spi-nor";
919 spi-max-frequency = <40000000>;
920 sandbox,filename = "spi.bin";
924 compatible = "spansion,m25p16", "jedec,spi-nor";
925 spi-max-frequency = <50000000>;
926 sandbox,filename = "spi.bin";
933 compatible = "sandbox,syscon0";
937 another_system_controller: syscon@1 {
938 compatible = "sandbox,syscon1";
946 compatible = "simple-mfd", "syscon";
954 compatible = "simple-mfd", "syscon";
955 reg = <0x000100 0x10>;
957 muxcontroller0: a-mux-controller {
958 compatible = "mmio-mux";
959 #mux-control-cells = <1>;
961 mux-reg-masks = <0x0 0x30>, /* 0: reg 0x0, bits 5:4 */
962 <0xc 0x1E>, /* 1: reg 0xc, bits 4:1 */
963 <0x4 0xFF>; /* 2: reg 0x4, bits 7:0 */
964 idle-states = <MUX_IDLE_AS_IS>, <0x02>, <0x73>;
965 u-boot,mux-autoprobe;
969 muxcontroller1: emul-mux-controller {
970 compatible = "mux-emul";
971 #mux-control-cells = <0>;
972 u-boot,mux-autoprobe;
973 idle-state = <0xabcd>;
977 compatible = "denx,u-boot-fdtm-test";
980 testfdtm1: testfdtm1 {
981 compatible = "denx,u-boot-fdtm-test";
985 compatible = "denx,u-boot-fdtm-test";
989 compatible = "sandbox,timer";
990 clock-frequency = <1000000>;
994 compatible = "sandbox,timer";
995 sandbox,timebase-frequency-fallback;
999 compatible = "sandbox,tpm2";
1003 compatible = "sandbox,serial";
1004 u-boot,dm-pre-reloc;
1008 compatible = "sandbox,usb";
1009 status = "disabled";
1011 compatible = "sandbox,usb-hub";
1012 #address-cells = <1>;
1016 compatible = "sandbox,usb-flash";
1022 compatible = "sandbox,usb";
1024 compatible = "usb-hub";
1025 usb,device-class = <9>;
1026 #address-cells = <1>;
1029 compatible = "sandbox,usb-hub";
1030 #address-cells = <1>;
1034 compatible = "sandbox,usb-flash";
1035 sandbox,filepath = "testflash.bin";
1040 compatible = "sandbox,usb-flash";
1041 sandbox,filepath = "testflash1.bin";
1046 compatible = "sandbox,usb-flash";
1047 sandbox,filepath = "testflash2.bin";
1052 compatible = "sandbox,usb-keyb";
1067 compatible = "sandbox,usb";
1068 status = "disabled";
1072 compatible = "sandbox,spmi";
1073 #address-cells = <0x1>;
1074 #size-cells = <0x1>;
1077 compatible = "qcom,spmi-pmic";
1079 #address-cells = <0x1>;
1080 #size-cells = <0x1>;
1083 spmi_gpios: gpios@c000 {
1084 compatible = "qcom,pm8916-gpio";
1085 reg = <0xc000 0x400>;
1089 gpio-bank-name="spmi";
1095 compatible = "sandbox,wdt";
1099 compatible = "sandbox,axi";
1100 #address-cells = <0x1>;
1101 #size-cells = <0x1>;
1103 compatible = "sandbox,sandbox_store";
1109 #address-cells = <1>;
1111 setting = "sunrise ohoka";
1112 other-node = "/some-bus/c-test@5";
1113 int-values = <0x1937 72993>;
1114 u-boot,acpi-ssdt-order = <&acpi_test2 &acpi_test1>;
1116 compatible = "denx,u-boot-fdt-test";
1121 translation-test@8000 {
1122 compatible = "simple-bus";
1123 reg = <0x8000 0x4000>;
1125 #address-cells = <0x2>;
1126 #size-cells = <0x1>;
1128 ranges = <0 0x0 0x8000 0x1000
1129 1 0x100 0x9000 0x1000
1130 2 0x200 0xA000 0x1000
1131 3 0x300 0xB000 0x1000
1132 4 0x400 0xC000 0x1000
1135 dma-ranges = <0 0x000 0x10000000 0x1000
1136 1 0x100 0x20000000 0x1000
1140 compatible = "denx,u-boot-fdt-dummy";
1141 reg = <0 0x0 0x1000>;
1142 reg-names = "sandbox-dummy-0";
1146 compatible = "denx,u-boot-fdt-dummy";
1147 reg = <1 0x100 0x1000>;
1152 compatible = "denx,u-boot-fdt-dummy";
1153 reg = <2 0x200 0x1000>;
1158 compatible = "simple-bus";
1159 reg = <3 0x300 0x1000>;
1161 #address-cells = <0x1>;
1162 #size-cells = <0x0>;
1165 compatible = "denx,u-boot-fdt-dummy";
1171 compatible = "sandbox,zero-size-cells-bus";
1172 reg = <4 0x400 0x1000>;
1173 #address-cells = <1>;
1175 ranges = <0 4 0x400 0x1000>;
1178 #address-cells = <1>;
1182 compatible = "denx,u-boot-fdt-dummy";
1191 compatible = "sandbox,sandbox_osd";
1195 compatible = "sandbox,tee";
1199 compatible = "sandbox,virtio1";
1203 compatible = "sandbox,virtio2";
1207 compatible = "sandbox,scmi-devices";
1208 clocks = <&clk_scmi0 7>, <&clk_scmi0 3>, <&clk_scmi1 1>;
1209 resets = <&reset_scmi0 3>;
1213 compatible = "sandbox,pinctrl";
1215 pinctrl-names = "default", "alternate";
1216 pinctrl-0 = <&pinctrl_gpios>, <&pinctrl_i2s>;
1217 pinctrl-1 = <&pinctrl_spi>, <&pinctrl_i2c>;
1219 pinctrl_gpios: gpios {
1233 pinmux = <SANDBOX_PINMUX(7, SANDBOX_PINMUX_GPIO)>;
1238 pinmux = <SANDBOX_PINMUX(8, SANDBOX_PINMUX_GPIO)>;
1245 groups = "I2C_UART";
1265 pinmux = <SANDBOX_PINMUX(5, SANDBOX_PINMUX_CS)>,
1266 <SANDBOX_PINMUX(6, SANDBOX_PINMUX_CS)>;
1272 compatible = "sandbox,hwspinlock";
1276 compatible = "sandbox,dma";
1279 dmas = <&dma 0>, <&dma 1>, <&dma 2>;
1280 dma-names = "m2m", "tx0", "rx0";
1284 * keep mdio-mux ahead of mdio so that the mux is removed first at the
1285 * end of the test. If parent mdio is removed first, clean-up of the
1286 * mux will trigger a 2nd probe of parent-mdio, leaving parent-mdio
1287 * active at the end of the test. That it turn doesn't allow the mdio
1288 * class to be destroyed, triggering an error.
1291 compatible = "sandbox,mdio-mux";
1292 #address-cells = <1>;
1294 mdio-parent-bus = <&mdio>;
1305 compatible = "sandbox,mdio";
1309 compatible = "simple-pm-bus";
1310 clocks = <&clk_sandbox 4>;
1311 power-domains = <&pwrdom 1>;
1314 resetc2: syscon-reset {
1315 compatible = "syscon-reset";
1317 regmap = <&syscon0>;
1319 mask = <0x27FFFFFF>;
1324 compatible = "sandbox,misc_sandbox";
1325 resets = <&resetc2 15>, <&resetc2 30>, <&resetc2 60>;
1326 reset-names = "valid", "no_mask", "out_of_range";
1330 compatible = "sandbox,sysinfo-sandbox";
1333 some_regmapped-bus {
1334 #address-cells = <0x1>;
1335 #size-cells = <0x1>;
1337 ranges = <0x0 0x0 0x10>;
1338 compatible = "simple-bus";
1342 compatible = "sandbox,regmap_test";
1347 #include "sandbox_pmic.dtsi"