blob: 50c8715f769cba18cb9b754c7bca8b8eccca3495 [file] [log] [blame]
Simon Glass4cc43bf2021-08-18 21:40:25 -06001// 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
Simon Glassb2c1cac2014-02-26 15:59:21 -070010/dts-v1/;
11
Patrick Delaunay23aee612020-01-13 11:35:13 +010012#include <dt-bindings/gpio/gpio.h>
13#include <dt-bindings/gpio/sandbox-gpio.h>
Marek Szyprowskiad398592021-02-18 11:33:18 +010014#include <dt-bindings/input/input.h>
Sean Anderson3438e3b2020-09-14 11:01:57 -040015#include <dt-bindings/pinctrl/sandbox-pinmux.h>
Jean-Jacques Hiblota94b6972020-10-16 16:16:34 +053016#include <dt-bindings/mux/mux.h>
Patrick Delaunay23aee612020-01-13 11:35:13 +010017
Simon Glassb2c1cac2014-02-26 15:59:21 -070018/ {
19 model = "sandbox";
20 compatible = "sandbox";
21 #address-cells = <1>;
Simon Glasscf61f742015-07-06 12:54:36 -060022 #size-cells = <1>;
Simon Glassb2c1cac2014-02-26 15:59:21 -070023
Simon Glassfef72b72014-07-23 06:55:03 -060024 aliases {
25 console = &uart0;
Michael Walle7efcdfd2021-02-25 16:51:11 +010026 ethernet0 = "/eth@10002000";
27 ethernet2 = &swp_0;
28 ethernet3 = &eth_3;
29 ethernet4 = &dsa_eth0;
30 ethernet5 = &eth_5;
Sean Anderson67d93a42022-05-05 13:11:30 -040031 ethernet6 = "/eth@10004000";
32 ethernet7 = &swp_1;
33 ethernet8 = &phy_eth0;
Simon Glass5620cf82018-10-01 12:22:40 -060034 gpio1 = &gpio_a;
35 gpio2 = &gpio_b;
Patrick Delaunay28bdaa52020-01-13 11:35:14 +010036 gpio3 = &gpio_c;
Simon Glass0ccb0972015-01-25 08:27:05 -070037 i2c0 = "/i2c@0";
Simon Glasse4fef742017-04-23 20:02:07 -060038 mmc0 = "/mmc0";
39 mmc1 = "/mmc1";
Simon Glassf1eba352022-10-20 18:23:20 -060040 mmc2 = "/mmc2";
41 mmc3 = "/mmc3";
Simon Glassfff928c2023-08-24 13:55:41 -060042 mmc4 = "/mmc4";
43 mmc5 = "/mmc5";
Bin Meng408e5902018-08-03 01:14:41 -070044 pci0 = &pci0;
45 pci1 = &pci1;
Bin Meng510dddb2018-08-03 01:14:50 -070046 pci2 = &pci2;
Michael Walle7c41a222020-06-02 01:47:09 +020047 remoteproc0 = &rproc_1;
48 remoteproc1 = &rproc_2;
Simon Glass336b2952015-05-22 15:42:17 -060049 rtc0 = &rtc_0;
50 rtc1 = &rtc_1;
Simon Glass5b968632015-05-22 15:42:15 -060051 spi0 = "/spi@0";
Przemyslaw Marczak3dbb55e2015-05-13 13:38:34 +020052 testfdt6 = "/e-test";
Simon Glass0ccb0972015-01-25 08:27:05 -070053 testbus3 = "/some-bus";
54 testfdt0 = "/some-bus/c-test@0";
Simon Glass7d5e4112020-12-16 21:20:26 -070055 testfdt12 = "/some-bus/c-test@1";
Simon Glass0ccb0972015-01-25 08:27:05 -070056 testfdt3 = "/b-test";
57 testfdt5 = "/some-bus/c-test@5";
58 testfdt8 = "/a-test";
Simon Glass791a17f2020-12-16 21:20:27 -070059 testfdtm1 = &testfdtm1;
Eugeniu Rosca5ba71e52018-05-19 14:13:55 +020060 fdt-dummy0 = "/translation-test@8000/dev@0,0";
61 fdt-dummy1 = "/translation-test@8000/dev@1,100";
62 fdt-dummy2 = "/translation-test@8000/dev@2,200";
63 fdt-dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
Simon Glass31680482015-03-25 12:23:05 -060064 usb0 = &usb_0;
65 usb1 = &usb_1;
66 usb2 = &usb_2;
Mario Six95922152018-08-09 14:51:19 +020067 axi0 = &axi;
Mario Six02ad6fb2018-09-27 09:19:31 +020068 osd0 = "/osd";
Simon Glassfef72b72014-07-23 06:55:03 -060069 };
70
Simon Glass5e135d32022-10-20 18:23:15 -060071 binman: binman {
Philippe Reynes462d1632022-03-28 22:56:53 +020072 };
73
Rasmus Villemoes30d4d2b2021-04-21 11:06:55 +020074 config {
Simon Glass0034d962021-08-07 07:24:01 -060075 testing-bool;
76 testing-int = <123>;
77 testing-str = "testing";
Rasmus Villemoes30d4d2b2021-04-21 11:06:55 +020078 environment {
79 from_fdt = "yes";
80 fdt_env_path = "";
81 };
82 };
83
Michal Simek43c42bd2023-08-31 08:59:05 +020084 options {
85 u-boot {
86 compatible = "u-boot,config";
87 bootscr-ram-offset = /bits/ 64 <0x12345678>;
Michal Simek6a7c1ce2023-08-31 09:04:27 +020088 bootscr-flash-offset = /bits/ 64 <0>;
89 bootscr-flash-size = /bits/ 64 <0x2000>;
Michal Simek43c42bd2023-08-31 08:59:05 +020090 };
91 };
92
Simon Glassb255efc2022-04-24 23:31:24 -060093 bootstd {
Simon Glassd3a98cb2023-02-13 08:56:33 -070094 bootph-verify;
Simon Glassb255efc2022-04-24 23:31:24 -060095 compatible = "u-boot,boot-std";
96
97 filename-prefixes = "/", "/boot/";
98 bootdev-order = "mmc2", "mmc1";
99
Simon Glassb71d7f72023-05-10 16:34:46 -0600100 extlinux {
101 compatible = "u-boot,extlinux";
Simon Glassb255efc2022-04-24 23:31:24 -0600102 };
103
104 efi {
105 compatible = "u-boot,distro-efi";
106 };
Simon Glassa9289612022-10-20 18:23:14 -0600107
Simon Glassd2bc33ed2023-01-06 08:52:41 -0600108 theme {
109 font-size = <30>;
Simon Glass86f1ac52023-06-01 10:23:00 -0600110 menu-inset = <3>;
111 menuitem-gap-y = <1>;
Simon Glassd2bc33ed2023-01-06 08:52:41 -0600112 };
113
Simon Glass82adc292023-08-14 16:40:30 -0600114 cedit-theme {
115 font-size = <30>;
116 menu-inset = <3>;
117 menuitem-gap-y = <1>;
118 };
119
Simon Glassf1eba352022-10-20 18:23:20 -0600120 /*
121 * This is used for the VBE OS-request tests. A FAT filesystem
122 * created in a partition with the VBE information appearing
Michal Simek33224372023-09-07 14:55:48 +0200123 * before the partition starts
Simon Glassf1eba352022-10-20 18:23:20 -0600124 */
Simon Glassa9289612022-10-20 18:23:14 -0600125 firmware0 {
Simon Glassd3a98cb2023-02-13 08:56:33 -0700126 bootph-verify;
Simon Glassa9289612022-10-20 18:23:14 -0600127 compatible = "fwupd,vbe-simple";
128 storage = "mmc1";
129 skip-offset = <0x200>;
130 area-start = <0x400>;
131 area-size = <0x1000>;
132 state-offset = <0x400>;
133 state-size = <0x40>;
134 version-offset = <0x800>;
135 version-size = <0x100>;
136 };
Simon Glassf1eba352022-10-20 18:23:20 -0600137
138 /*
139 * This is used for the VBE VPL tests. The MMC device holds the
140 * binman image.bin file. The test progresses through each phase
141 * of U-Boot, loading each in turn from MMC.
142 *
143 * Note that the test enables this node (and mmc3) before
144 * running U-Boot
145 */
146 firmware1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -0700147 bootph-verify;
Simon Glassf1eba352022-10-20 18:23:20 -0600148 status = "disabled";
149 compatible = "fwupd,vbe-simple";
150 storage = "mmc3";
Simon Glass9bb73e32023-04-02 14:01:24 +1200151 skip-offset = <0x800000>;
Simon Glassf1eba352022-10-20 18:23:20 -0600152 area-start = <0>;
153 area-size = <0xe00000>;
154 state-offset = <0xdffc00>;
155 state-size = <0x40>;
156 version-offset = <0xdffe00>;
157 version-size = <0x100>;
158 };
Simon Glassb255efc2022-04-24 23:31:24 -0600159 };
160
Simon Glass61300722023-06-01 10:23:01 -0600161 cedit: cedit {
162 };
163
Andrew Scull451b8b12022-05-30 10:00:12 +0000164 fuzzing-engine {
165 compatible = "sandbox,fuzzing-engine";
166 };
167
Nandor Han6521e5d2021-06-10 16:56:44 +0300168 reboot-mode0 {
169 compatible = "reboot-mode-gpio";
170 gpios = <&gpio_c 0 GPIO_ACTIVE_HIGH>, <&gpio_c 1 GPIO_ACTIVE_HIGH>;
171 u-boot,env-variable = "bootstatus";
172 mode-test = <0x01>;
173 mode-download = <0x03>;
174 };
175
Nandor Han7e4067a2021-06-10 16:56:45 +0300176 reboot_mode1: reboot-mode@14 {
177 compatible = "reboot-mode-rtc";
178 rtc = <&rtc_0>;
179 reg = <0x30 4>;
180 u-boot,env-variable = "bootstatus";
181 big-endian;
182 mode-test = <0x21969147>;
183 mode-download = <0x51939147>;
184 };
185
Simon Glassed96cde2018-12-10 10:37:33 -0700186 audio: audio-codec {
187 compatible = "sandbox,audio-codec";
188 #sound-dai-cells = <1>;
189 };
190
Philippe Reynes1ee26482020-07-24 18:19:51 +0200191 buttons {
192 compatible = "gpio-keys";
193
Heinrich Schuchardt57c2fc62020-09-14 12:50:54 +0200194 btn1 {
Philippe Reynes1ee26482020-07-24 18:19:51 +0200195 gpios = <&gpio_a 3 0>;
Heinrich Schuchardt57c2fc62020-09-14 12:50:54 +0200196 label = "button1";
Dzmitry Sankouski157f2c52023-01-22 18:21:24 +0300197 linux,code = <BTN_1>;
Philippe Reynes1ee26482020-07-24 18:19:51 +0200198 };
199
Heinrich Schuchardt57c2fc62020-09-14 12:50:54 +0200200 btn2 {
Philippe Reynes1ee26482020-07-24 18:19:51 +0200201 gpios = <&gpio_a 4 0>;
Heinrich Schuchardt57c2fc62020-09-14 12:50:54 +0200202 label = "button2";
Dzmitry Sankouski157f2c52023-01-22 18:21:24 +0300203 linux,code = <BTN_2>;
Philippe Reynes1ee26482020-07-24 18:19:51 +0200204 };
205 };
206
Marek Szyprowskiad398592021-02-18 11:33:18 +0100207 buttons2 {
208 compatible = "adc-keys";
209 io-channels = <&adc 3>;
210 keyup-threshold-microvolt = <3000000>;
211
212 button-up {
213 label = "button3";
214 linux,code = <KEY_F3>;
215 press-threshold-microvolt = <1500000>;
216 };
217
218 button-down {
219 label = "button4";
220 linux,code = <KEY_F4>;
221 press-threshold-microvolt = <1000000>;
222 };
223
224 button-enter {
225 label = "button5";
226 linux,code = <KEY_F5>;
227 press-threshold-microvolt = <500000>;
228 };
229 };
230
Simon Glassc953aaf2018-12-10 10:37:34 -0700231 cros_ec: cros-ec {
Simon Glass699c9ca2018-10-01 12:22:08 -0600232 reg = <0 0>;
233 compatible = "google,cros-ec-sandbox";
234
235 /*
236 * This describes the flash memory within the EC. Note
237 * that the STM32L flash erases to 0, not 0xff.
238 */
239 flash {
240 image-pos = <0x08000000>;
241 size = <0x20000>;
242 erase-value = <0>;
243
244 /* Information for sandbox */
245 ro {
246 image-pos = <0>;
247 size = <0xf000>;
248 };
249 wp-ro {
250 image-pos = <0xf000>;
251 size = <0x1000>;
Simon Glassbf0a6922021-01-21 13:57:14 -0700252 used = <0x884>;
253 compress = "lz4";
254 uncomp-size = <0xcf8>;
255 hash {
256 algo = "sha256";
257 value = [00 01 02 03 04 05 06 07
258 08 09 0a 0b 0c 0d 0e 0f
259 10 11 12 13 14 15 16 17
260 18 19 1a 1b 1c 1d 1e 1f];
261 };
Simon Glass699c9ca2018-10-01 12:22:08 -0600262 };
263 rw {
264 image-pos = <0x10000>;
265 size = <0x10000>;
266 };
267 };
Alper Nebi Yasak8a8cd4f2021-05-19 19:33:31 +0300268
269 cros_ec_pwm: cros-ec-pwm {
270 compatible = "google,cros-ec-pwm";
271 #pwm-cells = <1>;
272 };
273
Simon Glass699c9ca2018-10-01 12:22:08 -0600274 };
275
Yannick Fertré9712c822019-10-07 15:29:05 +0200276 dsi_host: dsi_host {
277 compatible = "sandbox,dsi-host";
278 };
279
Simon Glassb2c1cac2014-02-26 15:59:21 -0700280 a-test {
Simon Glasscf61f742015-07-06 12:54:36 -0600281 reg = <0 1>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700282 compatible = "denx,u-boot-fdt-test";
Simon Glassa7bb08a2014-07-23 06:54:57 -0600283 ping-expect = <0>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700284 ping-add = <0>;
Simon Glassd3a98cb2023-02-13 08:56:33 -0700285 bootph-all;
Patrick Delaunay23aee612020-01-13 11:35:13 +0100286 test-gpios = <&gpio_a 1>, <&gpio_a 4>,
287 <&gpio_b 5 GPIO_ACTIVE_HIGH 3 2 1>,
Simon Glass16e10402015-01-05 20:05:29 -0700288 <0>, <&gpio_a 12>;
Patrick Delaunay23aee612020-01-13 11:35:13 +0100289 test2-gpios = <&gpio_a 1>, <&gpio_a 4>,
290 <&gpio_b 6 GPIO_ACTIVE_LOW 3 2 1>,
291 <&gpio_b 7 GPIO_IN 3 2 1>,
292 <&gpio_b 8 GPIO_OUT 3 2 1>,
293 <&gpio_b 9 (GPIO_OUT|GPIO_OUT_ACTIVE) 3 2 1>;
Patrick Delaunay28bdaa52020-01-13 11:35:14 +0100294 test3-gpios =
295 <&gpio_c 0 (GPIO_OUT|GPIO_OPEN_DRAIN)>,
296 <&gpio_c 1 (GPIO_OUT|GPIO_OPEN_SOURCE)>,
297 <&gpio_c 2 GPIO_OUT>,
298 <&gpio_c 3 (GPIO_IN|GPIO_PULL_UP)>,
299 <&gpio_c 4 (GPIO_IN|GPIO_PULL_DOWN)>,
Neil Armstrong643778b2020-05-05 10:43:18 +0200300 <&gpio_c 5 GPIO_IN>,
301 <&gpio_c 6 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_DRAIN)>,
302 <&gpio_c 7 (GPIO_ACTIVE_LOW|GPIO_OUT|GPIO_OPEN_SOURCE)>;
Jean-Jacques Hiblot73873402020-09-11 13:43:35 +0530303 test4-gpios = <&gpio_a 14>, <&gpio_b 4 1 3 2 1>;
304 test5-gpios = <&gpio_a 19>;
305
Simon Glass73025392021-10-23 17:26:04 -0600306 bool-value;
Stefan Herbrechtsmeier1b090e62022-06-14 15:21:30 +0200307 int8-value = /bits/ 8 <0x12>;
308 int16-value = /bits/ 16 <0x1234>;
Simon Glass6df01f92018-12-10 10:37:37 -0700309 int-value = <1234>;
310 uint-value = <(-1234)>;
Dario Binacchi421e81e2020-03-29 18:04:40 +0200311 int64-value = /bits/ 64 <0x1111222233334444>;
Dario Binacchi81d80b52020-03-29 18:04:41 +0200312 int-array = <5678 9123 4567>;
Michal Simek08a194e2023-08-25 11:37:46 +0200313 int64-array = /bits/ 64 <0x1111222233334444 0x4444333322221111>;
Simon Glassdd0ed902020-07-07 13:11:58 -0600314 str-value = "test string";
Simon Glass515dcff2020-02-06 09:55:00 -0700315 interrupts-extended = <&irq 3 0>;
Simon Glass09642392020-07-07 13:12:11 -0600316 acpi,name = "GHIJ";
Patrick Delaunay8cd28012020-09-25 09:41:16 +0200317 phandle-value = <&gpio_c 10>, <0xFFFFFFFF 20>, <&gpio_a 30>;
Jean-Jacques Hiblota94b6972020-10-16 16:16:34 +0530318
319 mux-controls = <&muxcontroller0 0>, <&muxcontroller0 1>,
320 <&muxcontroller0 2>, <&muxcontroller0 3>,
321 <&muxcontroller1>;
322 mux-control-names = "mux0", "mux1", "mux2", "mux3", "mux4";
323 mux-syscon = <&syscon3>;
Dario Binacchi836cc9d2020-12-30 00:16:26 +0100324 display-timings {
325 timing0: 240x320 {
326 clock-frequency = <6500000>;
327 hactive = <240>;
328 vactive = <320>;
329 hfront-porch = <6>;
330 hback-porch = <7>;
331 hsync-len = <1>;
332 vback-porch = <5>;
333 vfront-porch = <8>;
334 vsync-len = <2>;
335 hsync-active = <1>;
336 vsync-active = <0>;
337 de-active = <1>;
338 pixelclk-active = <1>;
339 interlaced;
340 doublescan;
341 doubleclk;
342 };
343 timing1: 480x800 {
344 clock-frequency = <9000000>;
345 hactive = <480>;
346 vactive = <800>;
347 hfront-porch = <10>;
348 hback-porch = <59>;
349 hsync-len = <12>;
350 vback-porch = <15>;
351 vfront-porch = <17>;
352 vsync-len = <16>;
353 hsync-active = <0>;
354 vsync-active = <1>;
355 de-active = <0>;
356 pixelclk-active = <0>;
357 };
358 timing2: 800x480 {
359 clock-frequency = <33500000>;
360 hactive = <800>;
361 vactive = <480>;
362 hback-porch = <89>;
363 hfront-porch = <164>;
364 vback-porch = <23>;
365 vfront-porch = <10>;
366 hsync-len = <11>;
367 vsync-len = <13>;
368 };
369 };
Raphael Gallais-Poua853b922023-05-11 16:36:52 +0200370 panel-timing {
Nikhil M Jainbb9d1312023-01-31 15:35:15 +0530371 clock-frequency = <6500000>;
372 hactive = <240>;
373 vactive = <320>;
374 hfront-porch = <6>;
375 hback-porch = <7>;
376 hsync-len = <1>;
377 vback-porch = <5>;
378 vfront-porch = <8>;
379 vsync-len = <2>;
380 hsync-active = <1>;
381 vsync-active = <0>;
382 de-active = <1>;
383 pixelclk-active = <1>;
384 interlaced;
385 doublescan;
386 doubleclk;
387 };
Simon Glassb2c1cac2014-02-26 15:59:21 -0700388 };
389
390 junk {
Simon Glasscf61f742015-07-06 12:54:36 -0600391 reg = <1 1>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700392 compatible = "not,compatible";
393 };
394
395 no-compatible {
Simon Glasscf61f742015-07-06 12:54:36 -0600396 reg = <2 1>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700397 };
398
Simon Glass5620cf82018-10-01 12:22:40 -0600399 backlight: backlight {
400 compatible = "pwm-backlight";
401 enable-gpios = <&gpio_a 1>;
402 power-supply = <&ldo_1>;
403 pwms = <&pwm 0 1000>;
404 default-brightness-level = <5>;
405 brightness-levels = <0 16 32 64 128 170 202 234 255>;
406 };
407
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200408 bind-test {
Patrice Chotard7b7f9392020-07-28 09:13:33 +0200409 compatible = "simple-bus";
Jean-Jacques Hiblote83a31b2018-08-09 16:17:46 +0200410 bind-test-child1 {
411 compatible = "sandbox,phy";
412 #phy-cells = <1>;
413 };
414
415 bind-test-child2 {
416 compatible = "simple-bus";
417 };
418 };
419
Simon Glassb2c1cac2014-02-26 15:59:21 -0700420 b-test {
Simon Glasscf61f742015-07-06 12:54:36 -0600421 reg = <3 1>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700422 compatible = "denx,u-boot-fdt-test";
Simon Glassa7bb08a2014-07-23 06:54:57 -0600423 ping-expect = <3>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700424 ping-add = <3>;
Jean-Jacques Hiblota94b6972020-10-16 16:16:34 +0530425
426 mux-controls = <&muxcontroller0 0>;
427 mux-control-names = "mux0";
Simon Glassb2c1cac2014-02-26 15:59:21 -0700428 };
429
Jean-Jacques Hiblot7e9db022017-04-24 11:51:28 +0200430 phy_provider0: gen_phy@0 {
431 compatible = "sandbox,phy";
432 #phy-cells = <1>;
433 };
434
435 phy_provider1: gen_phy@1 {
436 compatible = "sandbox,phy";
437 #phy-cells = <0>;
438 broken;
439 };
440
developer71092972020-05-02 11:35:12 +0200441 phy_provider2: gen_phy@2 {
442 compatible = "sandbox,phy";
443 #phy-cells = <0>;
444 };
445
Jonas Karlman9f89e682023-08-31 22:16:35 +0000446 phy_provider3: gen_phy@3 {
447 compatible = "sandbox,phy";
448 #phy-cells = <2>;
449 };
450
Jean-Jacques Hiblot7e9db022017-04-24 11:51:28 +0200451 gen_phy_user: gen_phy_user {
452 compatible = "simple-bus";
453 phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
454 phy-names = "phy1", "phy2", "phy3";
455 };
456
developer71092972020-05-02 11:35:12 +0200457 gen_phy_user1: gen_phy_user1 {
458 compatible = "simple-bus";
459 phys = <&phy_provider0 0>, <&phy_provider2>;
460 phy-names = "phy1", "phy2";
461 };
462
Jonas Karlman9f89e682023-08-31 22:16:35 +0000463 gen_phy_user2: gen_phy_user2 {
464 compatible = "simple-bus";
465 phys = <&phy_provider3 0 0>;
466 phy-names = "phy1";
467 };
468
Simon Glassb2c1cac2014-02-26 15:59:21 -0700469 some-bus {
470 #address-cells = <1>;
471 #size-cells = <0>;
Simon Glass40717422014-07-23 06:55:18 -0600472 compatible = "denx,u-boot-test-bus";
Simon Glasscf61f742015-07-06 12:54:36 -0600473 reg = <3 1>;
Simon Glassa7bb08a2014-07-23 06:54:57 -0600474 ping-expect = <4>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700475 ping-add = <4>;
Simon Glass40717422014-07-23 06:55:18 -0600476 c-test@5 {
Simon Glassb2c1cac2014-02-26 15:59:21 -0700477 compatible = "denx,u-boot-fdt-test";
478 reg = <5>;
Simon Glass40717422014-07-23 06:55:18 -0600479 ping-expect = <5>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700480 ping-add = <5>;
481 };
Simon Glass40717422014-07-23 06:55:18 -0600482 c-test@0 {
483 compatible = "denx,u-boot-fdt-test";
484 reg = <0>;
485 ping-expect = <6>;
486 ping-add = <6>;
487 };
488 c-test@1 {
489 compatible = "denx,u-boot-fdt-test";
490 reg = <1>;
491 ping-expect = <7>;
492 ping-add = <7>;
493 };
Simon Glassb2c1cac2014-02-26 15:59:21 -0700494 };
495
496 d-test {
Simon Glasscf61f742015-07-06 12:54:36 -0600497 reg = <3 1>;
Simon Glassdb6f0202014-07-23 06:55:12 -0600498 ping-expect = <6>;
499 ping-add = <6>;
500 compatible = "google,another-fdt-test";
501 };
502
503 e-test {
Simon Glasscf61f742015-07-06 12:54:36 -0600504 reg = <3 1>;
Simon Glassa7bb08a2014-07-23 06:54:57 -0600505 ping-expect = <6>;
Simon Glassb2c1cac2014-02-26 15:59:21 -0700506 ping-add = <6>;
507 compatible = "google,another-fdt-test";
508 };
509
Simon Glass0ccb0972015-01-25 08:27:05 -0700510 f-test {
511 compatible = "denx,u-boot-fdt-test";
512 };
513
514 g-test {
515 compatible = "denx,u-boot-fdt-test";
516 };
517
Bin Mengd9d24782018-10-10 22:07:01 -0700518 h-test {
519 compatible = "denx,u-boot-fdt-test1";
520 };
521
developercf8bc132020-05-02 11:35:10 +0200522 i-test {
523 compatible = "mediatek,u-boot-fdt-test";
524 #address-cells = <1>;
525 #size-cells = <0>;
526
527 subnode@0 {
528 reg = <0>;
529 };
530
531 subnode@1 {
532 reg = <1>;
533 };
534
535 subnode@2 {
536 reg = <2>;
537 };
538 };
539
Simon Glass204675c2019-12-29 21:19:25 -0700540 devres-test {
541 compatible = "denx,u-boot-devres-test";
542 };
543
Jean-Jacques Hiblot73873402020-09-11 13:43:35 +0530544 another-test {
545 reg = <0 2>;
546 compatible = "denx,u-boot-fdt-test";
547 test4-gpios = <&gpio_a 14>, <&gpio_b 4 1 3 2 1>;
548 test5-gpios = <&gpio_a 19>;
549 };
550
Nicolas Saenz Julienne22b7f7e2021-01-12 13:55:23 +0100551 mmio-bus@0 {
552 #address-cells = <1>;
553 #size-cells = <1>;
554 compatible = "denx,u-boot-test-bus";
555 dma-ranges = <0x10000000 0x00000000 0x00040000>;
556
557 subnode@0 {
558 compatible = "denx,u-boot-fdt-test";
559 };
560 };
561
562 mmio-bus@1 {
563 #address-cells = <1>;
564 #size-cells = <1>;
565 compatible = "denx,u-boot-test-bus";
Nicolas Saenz Julienne892e9b42021-01-12 13:55:25 +0100566
567 subnode@0 {
568 compatible = "denx,u-boot-fdt-test";
569 };
Nicolas Saenz Julienne22b7f7e2021-01-12 13:55:23 +0100570 };
571
Simon Glass3c601b12020-07-07 13:12:06 -0600572 acpi_test1: acpi-test {
Simon Glass2d67fdf2020-04-08 16:57:34 -0600573 compatible = "denx,u-boot-acpi-test";
Simon Glassd43e0ba2020-07-07 13:12:03 -0600574 acpi-ssdt-test-data = "ab";
Simon Glass990cd5b2020-07-07 13:12:08 -0600575 acpi-dsdt-test-data = "hi";
Simon Glassebb2e832020-07-07 13:11:39 -0600576 child {
577 compatible = "denx,u-boot-acpi-test";
578 };
Simon Glass2d67fdf2020-04-08 16:57:34 -0600579 };
580
Simon Glass3c601b12020-07-07 13:12:06 -0600581 acpi_test2: acpi-test2 {
Simon Glass17968c32020-04-26 09:19:46 -0600582 compatible = "denx,u-boot-acpi-test";
Simon Glassd43e0ba2020-07-07 13:12:03 -0600583 acpi-ssdt-test-data = "cd";
Simon Glass990cd5b2020-07-07 13:12:08 -0600584 acpi-dsdt-test-data = "jk";
Simon Glass17968c32020-04-26 09:19:46 -0600585 };
586
Patrice Chotard9cc2d142017-09-04 14:55:57 +0200587 clocks {
588 clk_fixed: clk-fixed {
589 compatible = "fixed-clock";
590 #clock-cells = <0>;
591 clock-frequency = <1234>;
592 };
Anup Patel8d28c3c2019-02-25 08:14:55 +0000593
594 clk_fixed_factor: clk-fixed-factor {
595 compatible = "fixed-factor-clock";
596 #clock-cells = <0>;
597 clock-div = <3>;
598 clock-mult = <2>;
599 clocks = <&clk_fixed>;
600 };
Lukasz Majewskiccafcdd2019-06-24 15:50:47 +0200601
602 osc {
603 compatible = "fixed-clock";
604 #clock-cells = <0>;
605 clock-frequency = <20000000>;
606 };
Stephen Warrena9622432016-06-17 09:44:00 -0600607 };
608
609 clk_sandbox: clk-sbox {
Simon Glass8cc4d822015-07-06 12:54:24 -0600610 compatible = "sandbox,clk";
Stephen Warrena9622432016-06-17 09:44:00 -0600611 #clock-cells = <1>;
Jean-Jacques Hiblotc1e9c942019-10-22 14:00:07 +0200612 assigned-clocks = <&clk_sandbox 3>;
613 assigned-clock-rates = <321>;
Stephen Warrena9622432016-06-17 09:44:00 -0600614 };
615
616 clk-test {
617 compatible = "sandbox,clk-test";
618 clocks = <&clk_fixed>,
619 <&clk_sandbox 1>,
Jean-Jacques Hiblot98e84182019-10-22 14:00:05 +0200620 <&clk_sandbox 0>,
621 <&clk_sandbox 3>,
622 <&clk_sandbox 2>;
623 clock-names = "fixed", "i2c", "spi", "uart2", "uart1";
Simon Glass8cc4d822015-07-06 12:54:24 -0600624 };
625
Ashok Reddy Soma8f03cef2023-08-30 10:31:42 +0200626 clk-test2 {
627 compatible = "sandbox,clk-test";
628 assigned-clock-rates = <321>;
629 };
630
631 clk-test3 {
632 compatible = "sandbox,clk-test";
633 assigned-clocks = <&clk_sandbox 1>;
634 };
635
636 clk-test4 {
637 compatible = "sandbox,clk-test";
638 assigned-clock-rates = <654>, <321>;
639 assigned-clocks = <&clk_sandbox 1>;
640 };
641
Lukasz Majewski8c0709b2019-06-24 15:50:50 +0200642 ccf: clk-ccf {
643 compatible = "sandbox,clk-ccf";
644 };
645
Simon Glass507ab962021-12-04 08:56:31 -0700646 efi-media {
647 compatible = "sandbox,efi-media";
648 };
649
Simon Glass5b968632015-05-22 15:42:15 -0600650 eth@10002000 {
651 compatible = "sandbox,eth";
652 reg = <0x10002000 0x1000>;
Simon Glass5b968632015-05-22 15:42:15 -0600653 };
654
655 eth_5: eth@10003000 {
656 compatible = "sandbox,eth";
657 reg = <0x10003000 0x1000>;
Sean Anderson13652b82022-05-05 13:11:44 -0400658 nvmem-cells = <&eth5_addr>;
659 nvmem-cell-names = "mac-address";
Simon Glass5b968632015-05-22 15:42:15 -0600660 };
661
Bin Meng04a11cb2015-08-27 22:25:53 -0700662 eth_3: sbe5 {
663 compatible = "sandbox,eth";
664 reg = <0x10005000 0x1000>;
Sean Andersone2dc0e62022-05-05 13:11:42 -0400665 nvmem-cells = <&eth3_addr>;
666 nvmem-cell-names = "mac-address";
Bin Meng04a11cb2015-08-27 22:25:53 -0700667 };
668
Simon Glass5b968632015-05-22 15:42:15 -0600669 eth@10004000 {
670 compatible = "sandbox,eth";
671 reg = <0x10004000 0x1000>;
Simon Glass5b968632015-05-22 15:42:15 -0600672 };
673
Marek BehĂșnf4f1ddc2022-04-07 00:32:57 +0200674 phy_eth0: phy-test-eth {
675 compatible = "sandbox,eth";
676 reg = <0x10007000 0x1000>;
Sean Anderson24b1b8d2022-05-05 13:11:35 -0400677 mac-address = [ 02 00 11 22 33 49 ];
Marek BehĂșnf4f1ddc2022-04-07 00:32:57 +0200678 phy-handle = <&ethphy1>;
Marek BehĂșnbc194772022-04-07 00:33:01 +0200679 phy-mode = "2500base-x";
Marek BehĂșnf4f1ddc2022-04-07 00:32:57 +0200680 };
681
Claudiu Manoild9eaa922021-03-14 20:14:57 +0800682 dsa_eth0: dsa-test-eth {
683 compatible = "sandbox,eth";
684 reg = <0x10006000 0x1000>;
Sean Anderson5768e8b2022-05-05 13:11:43 -0400685 nvmem-cells = <&eth4_addr>;
686 nvmem-cell-names = "mac-address";
Claudiu Manoild9eaa922021-03-14 20:14:57 +0800687 };
688
689 dsa-test {
690 compatible = "sandbox,dsa";
691
692 ports {
693 #address-cells = <1>;
694 #size-cells = <0>;
695 swp_0: port@0 {
696 reg = <0>;
697 label = "lan0";
698 phy-mode = "rgmii-rxid";
699
700 fixed-link {
701 speed = <100>;
702 full-duplex;
703 };
704 };
705
706 swp_1: port@1 {
707 reg = <1>;
708 label = "lan1";
709 phy-mode = "rgmii-txid";
Bin Meng381ed972021-03-14 20:14:58 +0800710 fixed-link = <0 1 100 0 0>;
Claudiu Manoild9eaa922021-03-14 20:14:57 +0800711 };
712
713 port@2 {
714 reg = <2>;
715 ethernet = <&dsa_eth0>;
716
717 fixed-link {
718 speed = <1000>;
719 full-duplex;
720 };
721 };
722 };
723 };
724
Rajan Vajab3b2ddb2018-09-19 03:43:46 -0700725 firmware {
726 sandbox_firmware: sandbox-firmware {
727 compatible = "sandbox,firmware";
728 };
Etienne Carriere02fd1262020-09-09 18:44:00 +0200729
Etienne Carriere09665cb2022-02-21 09:22:39 +0100730 scmi {
Etienne Carriere02fd1262020-09-09 18:44:00 +0200731 compatible = "sandbox,scmi-agent";
732 #address-cells = <1>;
733 #size-cells = <0>;
Etienne Carriere2d94c08fa2020-09-09 18:44:05 +0200734
Etienne Carriere09665cb2022-02-21 09:22:39 +0100735 protocol@10 {
736 reg = <0x10>;
737 };
738
739 clk_scmi: protocol@14 {
Etienne Carriere2d94c08fa2020-09-09 18:44:05 +0200740 reg = <0x14>;
741 #clock-cells = <1>;
AKASHI Takahirocc4ecda2023-10-11 19:06:59 +0900742 linaro,sandbox-channel-id = <0x14>;
Etienne Carriere2d94c08fa2020-09-09 18:44:05 +0200743 };
Etienne Carriere8b9b6892020-09-09 18:44:07 +0200744
Etienne Carriere09665cb2022-02-21 09:22:39 +0100745 reset_scmi: protocol@16 {
Etienne Carriere8b9b6892020-09-09 18:44:07 +0200746 reg = <0x16>;
747 #reset-cells = <1>;
748 };
Etienne Carriereb8f15cd2021-03-08 22:38:07 +0100749
750 protocol@17 {
751 reg = <0x17>;
752
753 regulators {
754 #address-cells = <1>;
755 #size-cells = <0>;
756
Etienne Carriere09665cb2022-02-21 09:22:39 +0100757 regul0_scmi: reg@0 {
Etienne Carriereb8f15cd2021-03-08 22:38:07 +0100758 reg = <0>;
759 regulator-name = "sandbox-voltd0";
760 regulator-min-microvolt = <1100000>;
761 regulator-max-microvolt = <3300000>;
762 };
Etienne Carriere09665cb2022-02-21 09:22:39 +0100763 regul1_scmi: reg@1 {
Etienne Carriereb8f15cd2021-03-08 22:38:07 +0100764 reg = <0x1>;
765 regulator-name = "sandbox-voltd1";
766 regulator-min-microvolt = <1800000>;
767 };
768 };
769 };
Etienne Carriere02fd1262020-09-09 18:44:00 +0200770 };
Rajan Vajab3b2ddb2018-09-19 03:43:46 -0700771 };
772
Alexander Dahl6ac319d2022-09-30 14:04:30 +0200773 fpga {
774 compatible = "sandbox,fpga";
775 };
776
Patrick Delaunay1b4a22f2020-01-13 11:35:15 +0100777 pinctrl-gpio {
778 compatible = "sandbox,pinctrl-gpio";
Simon Glassb2c1cac2014-02-26 15:59:21 -0700779
Patrick Delaunay1b4a22f2020-01-13 11:35:15 +0100780 gpio_a: base-gpios {
781 compatible = "sandbox,gpio";
782 gpio-controller;
783 #gpio-cells = <1>;
784 gpio-bank-name = "a";
785 sandbox,gpio-count = <20>;
Heiko Schocher4508abf2020-05-22 11:08:58 +0200786 hog_input_active_low {
787 gpio-hog;
788 input;
Philippe Reynesb25a5b32020-07-24 15:51:53 +0200789 gpios = <10 GPIO_ACTIVE_LOW>;
Heiko Schocher4508abf2020-05-22 11:08:58 +0200790 };
791 hog_input_active_high {
792 gpio-hog;
793 input;
Philippe Reynesb25a5b32020-07-24 15:51:53 +0200794 gpios = <11 GPIO_ACTIVE_HIGH>;
Heiko Schocher4508abf2020-05-22 11:08:58 +0200795 };
796 hog_output_low {
797 gpio-hog;
798 output-low;
Philippe Reynesb25a5b32020-07-24 15:51:53 +0200799 gpios = <12 GPIO_ACTIVE_HIGH>;
Heiko Schocher4508abf2020-05-22 11:08:58 +0200800 };
801 hog_output_high {
802 gpio-hog;
803 output-high;
Philippe Reynesb25a5b32020-07-24 15:51:53 +0200804 gpios = <13 GPIO_ACTIVE_HIGH>;
Heiko Schocher4508abf2020-05-22 11:08:58 +0200805 };
Patrick Delaunay1b4a22f2020-01-13 11:35:15 +0100806 };
807
808 gpio_b: extra-gpios {
809 compatible = "sandbox,gpio";
810 gpio-controller;
811 #gpio-cells = <5>;
812 gpio-bank-name = "b";
813 sandbox,gpio-count = <10>;
814 };
Simon Glass25348a42014-10-13 23:42:11 -0600815
Patrick Delaunay1b4a22f2020-01-13 11:35:15 +0100816 gpio_c: pinmux-gpios {
817 compatible = "sandbox,gpio";
818 gpio-controller;
819 #gpio-cells = <2>;
820 gpio-bank-name = "c";
821 sandbox,gpio-count = <10>;
822 };
Patrick Delaunay28bdaa52020-01-13 11:35:14 +0100823 };
824
Simon Glass7df766e2014-12-10 08:55:55 -0700825 i2c@0 {
826 #address-cells = <1>;
827 #size-cells = <0>;
Simon Glasscf61f742015-07-06 12:54:36 -0600828 reg = <0 1>;
Simon Glass7df766e2014-12-10 08:55:55 -0700829 compatible = "sandbox,i2c";
830 clock-frequency = <100000>;
Dario Binacchi20dd9e12021-04-11 09:39:50 +0200831 pinctrl-names = "default";
832 pinctrl-0 = <&pinmux_i2c0_pins>;
833
Simon Glass7df766e2014-12-10 08:55:55 -0700834 eeprom@2c {
Sean Andersone2dc0e62022-05-05 13:11:42 -0400835 #address-cells = <1>;
836 #size-cells = <1>;
Simon Glass7df766e2014-12-10 08:55:55 -0700837 reg = <0x2c>;
838 compatible = "i2c-eeprom";
Simon Glass17b56f62018-11-18 08:14:34 -0700839 sandbox,emul = <&emul_eeprom>;
Michal Simek4f18f922020-05-28 11:48:55 +0200840 partitions {
841 compatible = "fixed-partitions";
842 #address-cells = <1>;
843 #size-cells = <1>;
844 bootcount_i2c: bootcount@10 {
845 reg = <10 2>;
846 };
847 };
Sean Andersone2dc0e62022-05-05 13:11:42 -0400848
849 eth3_addr: mac-address@24 {
850 reg = <24 6>;
851 };
Simon Glass7df766e2014-12-10 08:55:55 -0700852 };
Przemyslaw Marczak77bee052015-05-13 13:38:35 +0200853
Simon Glass336b2952015-05-22 15:42:17 -0600854 rtc_0: rtc@43 {
Sean Anderson5768e8b2022-05-05 13:11:43 -0400855 #address-cells = <1>;
856 #size-cells = <1>;
Simon Glass336b2952015-05-22 15:42:17 -0600857 reg = <0x43>;
858 compatible = "sandbox-rtc";
Simon Glass17b56f62018-11-18 08:14:34 -0700859 sandbox,emul = <&emul0>;
Sean Anderson5768e8b2022-05-05 13:11:43 -0400860
861 eth4_addr: mac-address@40 {
862 reg = <0x40 6>;
863 };
Simon Glass336b2952015-05-22 15:42:17 -0600864 };
865
866 rtc_1: rtc@61 {
867 reg = <0x61>;
868 compatible = "sandbox-rtc";
Simon Glass17b56f62018-11-18 08:14:34 -0700869 sandbox,emul = <&emul1>;
870 };
871
872 i2c_emul: emul {
873 reg = <0xff>;
874 compatible = "sandbox,i2c-emul-parent";
875 emul_eeprom: emul-eeprom {
876 compatible = "sandbox,i2c-eeprom";
877 sandbox,filename = "i2c.bin";
878 sandbox,size = <256>;
879 };
880 emul0: emul0 {
Simon Glass98af3742021-02-03 06:01:17 -0700881 compatible = "sandbox,i2c-rtc-emul";
Simon Glass17b56f62018-11-18 08:14:34 -0700882 };
883 emul1: emull {
Simon Glass98af3742021-02-03 06:01:17 -0700884 compatible = "sandbox,i2c-rtc-emul";
Simon Glass336b2952015-05-22 15:42:17 -0600885 };
886 };
887
Przemyslaw Marczak77bee052015-05-13 13:38:35 +0200888 sandbox_pmic: sandbox_pmic {
889 reg = <0x40>;
Simon Glass17b56f62018-11-18 08:14:34 -0700890 sandbox,emul = <&emul_pmic0>;
Przemyslaw Marczak77bee052015-05-13 13:38:35 +0200891 };
Lukasz Majewskia4d82972018-05-15 16:26:40 +0200892
893 mc34708: pmic@41 {
894 reg = <0x41>;
Simon Glass17b56f62018-11-18 08:14:34 -0700895 sandbox,emul = <&emul_pmic1>;
Lukasz Majewskia4d82972018-05-15 16:26:40 +0200896 };
Simon Glass7df766e2014-12-10 08:55:55 -0700897 };
898
Philipp Tomsich1fc53302018-12-14 21:14:29 +0100899 bootcount@0 {
900 compatible = "u-boot,bootcount-rtc";
901 rtc = <&rtc_1>;
902 offset = <0x13>;
903 };
904
Michal Simek4f18f922020-05-28 11:48:55 +0200905 bootcount {
906 compatible = "u-boot,bootcount-i2c-eeprom";
907 i2c-eeprom = <&bootcount_i2c>;
908 };
909
Nandor Han88895812021-06-10 15:40:38 +0300910 bootcount_4@0 {
911 compatible = "u-boot,bootcount-syscon";
912 syscon = <&syscon0>;
913 reg = <0x0 0x04>, <0x0 0x04>;
914 reg-names = "syscon_reg", "offset";
915 };
916
917 bootcount_2@0 {
918 compatible = "u-boot,bootcount-syscon";
919 syscon = <&syscon0>;
920 reg = <0x0 0x04>, <0x0 0x02> ;
921 reg-names = "syscon_reg", "offset";
922 };
923
Marek Szyprowskiad398592021-02-18 11:33:18 +0100924 adc: adc@0 {
Przemyslaw Marczak1bc7f232015-10-27 13:08:06 +0100925 compatible = "sandbox,adc";
Marek Szyprowskiad398592021-02-18 11:33:18 +0100926 #io-channel-cells = <1>;
Przemyslaw Marczak1bc7f232015-10-27 13:08:06 +0100927 vdd-supply = <&buck2>;
928 vss-microvolts = <0>;
929 };
930
Mark Kettenis67748ee2021-10-23 16:58:02 +0200931 iommu: iommu@0 {
932 compatible = "sandbox,iommu";
933 #iommu-cells = <0>;
934 };
935
Simon Glass515dcff2020-02-06 09:55:00 -0700936 irq: irq {
Simon Glass54028bc2019-12-06 21:41:59 -0700937 compatible = "sandbox,irq";
Simon Glass515dcff2020-02-06 09:55:00 -0700938 interrupt-controller;
939 #interrupt-cells = <2>;
Simon Glass54028bc2019-12-06 21:41:59 -0700940 };
941
Simon Glass90b6fef2016-01-18 19:52:26 -0700942 lcd {
Simon Glassd3a98cb2023-02-13 08:56:33 -0700943 bootph-all;
Simon Glass90b6fef2016-01-18 19:52:26 -0700944 compatible = "sandbox,lcd-sdl";
Dario Binacchi20dd9e12021-04-11 09:39:50 +0200945 pinctrl-names = "default";
946 pinctrl-0 = <&pinmux_lcd_pins>;
Simon Glass90b6fef2016-01-18 19:52:26 -0700947 xres = <1366>;
948 yres = <768>;
949 };
950
Simon Glassd783eb32015-07-06 12:54:34 -0600951 leds {
952 compatible = "gpio-leds";
953
954 iracibble {
955 gpios = <&gpio_a 1 0>;
956 label = "sandbox:red";
957 };
958
959 martinet {
960 gpios = <&gpio_a 2 0>;
961 label = "sandbox:green";
962 };
Patrick Bruennb58adfe2018-04-11 11:16:29 +0200963
964 default_on {
965 gpios = <&gpio_a 5 0>;
966 label = "sandbox:default_on";
967 default-state = "on";
968 };
969
970 default_off {
971 gpios = <&gpio_a 6 0>;
Sean Andersonfbf8d652020-09-14 11:02:03 -0400972 /* label intentionally omitted */
Patrick Bruennb58adfe2018-04-11 11:16:29 +0200973 default-state = "off";
974 };
Simon Glassd783eb32015-07-06 12:54:34 -0600975 };
976
Paul Doelle709f0372022-07-04 09:00:25 +0000977 wdt-gpio-toggle {
Rasmus Villemoes2b673872021-08-19 11:57:05 +0200978 gpios = <&gpio_a 7 0>;
979 compatible = "linux,wdt-gpio";
Rasmus Villemoesf91ff5a2021-08-19 11:57:06 +0200980 hw_margin_ms = <100>;
Paul Doelle709f0372022-07-04 09:00:25 +0000981 hw_algo = "toggle";
982 always-running;
983 };
984
985 wdt-gpio-level {
986 gpios = <&gpio_a 7 0>;
987 compatible = "linux,wdt-gpio";
988 hw_margin_ms = <100>;
989 hw_algo = "level";
Rasmus Villemoes2b673872021-08-19 11:57:05 +0200990 always-running;
991 };
992
Stephen Warren62f2c902016-05-16 17:41:37 -0600993 mbox: mbox {
994 compatible = "sandbox,mbox";
995 #mbox-cells = <1>;
996 };
997
998 mbox-test {
999 compatible = "sandbox,mbox-test";
1000 mboxes = <&mbox 100>, <&mbox 1>;
1001 mbox-names = "other", "test";
1002 };
1003
AKASHI Takahiro8fb963a2019-08-27 17:17:03 +09001004 cpus {
Heinrich Schuchardt20f9d3d2021-08-28 11:42:08 +02001005 #address-cells = <1>;
1006 #size-cells = <0>;
Sean Anderson79d3bba2020-09-28 10:52:23 -04001007 timebase-frequency = <2000000>;
Heinrich Schuchardt20f9d3d2021-08-28 11:42:08 +02001008 cpu1: cpu@1 {
1009 device_type = "cpu";
1010 reg = <0x1>;
Sean Anderson79d3bba2020-09-28 10:52:23 -04001011 timebase-frequency = <3000000>;
AKASHI Takahiro8fb963a2019-08-27 17:17:03 +09001012 compatible = "sandbox,cpu_sandbox";
Simon Glassd3a98cb2023-02-13 08:56:33 -07001013 bootph-all;
AKASHI Takahiro8fb963a2019-08-27 17:17:03 +09001014 };
Mario Sixdea5df72018-08-06 10:23:44 +02001015
Heinrich Schuchardt20f9d3d2021-08-28 11:42:08 +02001016 cpu2: cpu@2 {
1017 device_type = "cpu";
1018 reg = <0x2>;
AKASHI Takahiro8fb963a2019-08-27 17:17:03 +09001019 compatible = "sandbox,cpu_sandbox";
Simon Glassd3a98cb2023-02-13 08:56:33 -07001020 bootph-all;
AKASHI Takahiro8fb963a2019-08-27 17:17:03 +09001021 };
Mario Sixdea5df72018-08-06 10:23:44 +02001022
Heinrich Schuchardt20f9d3d2021-08-28 11:42:08 +02001023 cpu3: cpu@3 {
1024 device_type = "cpu";
1025 reg = <0x3>;
AKASHI Takahiro8fb963a2019-08-27 17:17:03 +09001026 compatible = "sandbox,cpu_sandbox";
Simon Glassd3a98cb2023-02-13 08:56:33 -07001027 bootph-all;
AKASHI Takahiro8fb963a2019-08-27 17:17:03 +09001028 };
Mario Sixdea5df72018-08-06 10:23:44 +02001029 };
1030
Dave Gerlach75dbdfc2020-07-15 23:39:58 -05001031 chipid: chipid {
1032 compatible = "sandbox,soc";
1033 };
1034
Simon Glassc953aaf2018-12-10 10:37:34 -07001035 i2s: i2s {
1036 compatible = "sandbox,i2s";
1037 #sound-dai-cells = <1>;
Simon Glass4d5814c2019-02-16 20:24:56 -07001038 sandbox,silent; /* Don't emit sounds while testing */
Simon Glassc953aaf2018-12-10 10:37:34 -07001039 };
1040
Jean-Jacques Hiblotdb97c7f2019-07-05 09:33:57 +02001041 nop-test_0 {
1042 compatible = "sandbox,nop_sandbox1";
1043 nop-test_1 {
1044 compatible = "sandbox,nop_sandbox2";
1045 bind = "True";
1046 };
1047 nop-test_2 {
1048 compatible = "sandbox,nop_sandbox2";
1049 bind = "False";
1050 };
1051 };
1052
Roger Quadrosb0679a72022-10-20 16:30:46 +03001053 memory-controller {
1054 compatible = "sandbox,memory";
1055 };
1056
Mario Sixa8ce0ee2018-07-31 14:24:14 +02001057 misc-test {
Sean Anderson13652b82022-05-05 13:11:44 -04001058 #address-cells = <1>;
1059 #size-cells = <1>;
Mario Sixa8ce0ee2018-07-31 14:24:14 +02001060 compatible = "sandbox,misc_sandbox";
Sean Anderson13652b82022-05-05 13:11:44 -04001061
1062 eth5_addr: mac-address@10 {
1063 reg = <0x10 6>;
1064 };
Mario Sixa8ce0ee2018-07-31 14:24:14 +02001065 };
1066
Simon Glasse4fef742017-04-23 20:02:07 -06001067 mmc2 {
1068 compatible = "sandbox,mmc";
Simon Glass965cd402021-07-05 16:32:58 -06001069 non-removable;
Simon Glasse4fef742017-04-23 20:02:07 -06001070 };
1071
Simon Glassb255efc2022-04-24 23:31:24 -06001072 /* This is used for the bootdev tests */
Simon Glasse4fef742017-04-23 20:02:07 -06001073 mmc1 {
1074 compatible = "sandbox,mmc";
Simon Glassb255efc2022-04-24 23:31:24 -06001075 filename = "mmc1.img";
Simon Glasse4fef742017-04-23 20:02:07 -06001076 };
1077
Simon Glassb255efc2022-04-24 23:31:24 -06001078 /* This is used for the fastboot tests */
Sughosh Ganu77079e72022-10-21 18:16:05 +05301079 mmc0: mmc0 {
Simon Glassd3e58e42015-07-06 12:54:32 -06001080 compatible = "sandbox,mmc";
1081 };
1082
Simon Glassf1eba352022-10-20 18:23:20 -06001083 /* This is used for VBE VPL tests */
1084 mmc3 {
1085 status = "disabled";
1086 compatible = "sandbox,mmc";
1087 filename = "image.bin";
1088 non-removable;
1089 };
1090
Simon Glassd2bc33ed2023-01-06 08:52:41 -06001091 /* This is used for bootstd bootmenu tests */
1092 mmc4 {
1093 status = "disabled";
1094 compatible = "sandbox,mmc";
1095 filename = "mmc4.img";
1096 };
1097
Simon Glassfff928c2023-08-24 13:55:41 -06001098 /* This is used for ChromiumOS tests */
1099 mmc5 {
1100 status = "disabled";
1101 compatible = "sandbox,mmc";
1102 filename = "mmc5.img";
1103 };
1104
Simon Glass53a68b32019-02-16 20:24:50 -07001105 pch {
1106 compatible = "sandbox,pch";
1107 };
1108
Tom Rini4a3ca482020-02-11 12:41:23 -05001109 pci0: pci@0 {
Simon Glass3a6eae62015-03-05 12:25:34 -07001110 compatible = "sandbox,pci";
1111 device_type = "pci";
Tom Rini4a3ca482020-02-11 12:41:23 -05001112 bus-range = <0x00 0xff>;
Simon Glass3a6eae62015-03-05 12:25:34 -07001113 #address-cells = <3>;
1114 #size-cells = <2>;
Simon Glass35464f72019-09-25 08:56:08 -06001115 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000000
Simon Glass3a6eae62015-03-05 12:25:34 -07001116 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
Mark Kettenis5dfd4ec2023-01-21 20:27:57 +01001117 iommu-map = <0x0010 &iommu 0 1>;
1118 iommu-map-mask = <0xfffffff8>;
Bin Mengcbf071b2018-08-03 01:14:39 -07001119 pci@0,0 {
1120 compatible = "pci-generic";
1121 reg = <0x0000 0 0 0 0>;
Simon Glassb98ba4c2019-09-25 08:56:10 -06001122 sandbox,emul = <&swap_case_emul0_0>;
Bin Mengcbf071b2018-08-03 01:14:39 -07001123 };
Alex Margineanf1274432019-06-07 11:24:24 +03001124 pci@1,0 {
1125 compatible = "pci-generic";
Simon Glass23b27592019-09-15 12:08:58 -06001126 /* reg 0 is at 0x14, using FDT_PCI_SPACE_MEM32 */
Simon Glass4289c262023-09-26 08:14:58 -06001127 reg = <0x02000814 0 0 0x80 0
1128 0x01000810 0 0 0xc0 0>;
Simon Glassb98ba4c2019-09-25 08:56:10 -06001129 sandbox,emul = <&swap_case_emul0_1>;
Alex Margineanf1274432019-06-07 11:24:24 +03001130 };
Simon Glass937bb472019-12-06 21:41:57 -07001131 p2sb-pci@2,0 {
1132 compatible = "sandbox,p2sb";
1133 reg = <0x02001010 0 0 0 0>;
1134 sandbox,emul = <&p2sb_emul>;
1135
1136 adder {
1137 intel,p2sb-port-id = <3>;
1138 compatible = "sandbox,adder";
1139 };
1140 };
Simon Glass8c501022019-12-06 21:41:54 -07001141 pci@1e,0 {
1142 compatible = "sandbox,pmc";
1143 reg = <0xf000 0 0 0 0>;
1144 sandbox,emul = <&pmc_emul1e>;
1145 acpi-base = <0x400>;
1146 gpe0-dwx-mask = <0xf>;
1147 gpe0-dwx-shift-base = <4>;
1148 gpe0-dw = <6 7 9>;
1149 gpe0-sts = <0x20>;
1150 gpe0-en = <0x30>;
1151 };
Simon Glass3a6eae62015-03-05 12:25:34 -07001152 pci@1f,0 {
1153 compatible = "pci-generic";
Simon Glass23b27592019-09-15 12:08:58 -06001154 /* reg 0 is at 0x10, using FDT_PCI_SPACE_IO */
Simon Glass4289c262023-09-26 08:14:58 -06001155 reg = <0x0100f810 0 0 0x100 0>;
Simon Glassb98ba4c2019-09-25 08:56:10 -06001156 sandbox,emul = <&swap_case_emul0_1f>;
Simon Glass3a6eae62015-03-05 12:25:34 -07001157 };
1158 };
1159
Simon Glassb98ba4c2019-09-25 08:56:10 -06001160 pci-emul0 {
1161 compatible = "sandbox,pci-emul-parent";
1162 swap_case_emul0_0: emul0@0,0 {
1163 compatible = "sandbox,swap-case";
1164 };
1165 swap_case_emul0_1: emul0@1,0 {
1166 compatible = "sandbox,swap-case";
1167 use-ea;
1168 };
1169 swap_case_emul0_1f: emul0@1f,0 {
1170 compatible = "sandbox,swap-case";
1171 };
Simon Glass937bb472019-12-06 21:41:57 -07001172 p2sb_emul: emul@2,0 {
1173 compatible = "sandbox,p2sb-emul";
1174 };
Simon Glass8c501022019-12-06 21:41:54 -07001175 pmc_emul1e: emul@1e,0 {
1176 compatible = "sandbox,pmc-emul";
1177 };
Simon Glassb98ba4c2019-09-25 08:56:10 -06001178 };
1179
Tom Rini4a3ca482020-02-11 12:41:23 -05001180 pci1: pci@1 {
Bin Meng408e5902018-08-03 01:14:41 -07001181 compatible = "sandbox,pci";
1182 device_type = "pci";
Tom Rini4a3ca482020-02-11 12:41:23 -05001183 bus-range = <0x00 0xff>;
Bin Meng408e5902018-08-03 01:14:41 -07001184 #address-cells = <3>;
1185 #size-cells = <2>;
Suneel Garapati3ac3aec2019-10-19 17:10:20 -07001186 ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000 // MEM0
Andrew Scullc7456a42022-04-21 16:11:09 +00001187 0x02000000 0 0x31000000 0x3e000000 0 0x2000 // MEM1
Suneel Garapati3ac3aec2019-10-19 17:10:20 -07001188 0x01000000 0 0x40000000 0x40000000 0 0x2000>;
Bin Meng5fed5362018-08-03 01:14:47 -07001189 sandbox,dev-info = <0x08 0x00 0x1234 0x5678
Marek Vasute5733222018-10-10 21:27:08 +02001190 0x0c 0x00 0x1234 0x5678
1191 0x10 0x00 0x1234 0x5678>;
1192 pci@10,0 {
1193 reg = <0x8000 0 0 0 0>;
1194 };
Bin Meng408e5902018-08-03 01:14:41 -07001195 };
1196
Tom Rini4a3ca482020-02-11 12:41:23 -05001197 pci2: pci@2 {
Bin Meng510dddb2018-08-03 01:14:50 -07001198 compatible = "sandbox,pci";
1199 device_type = "pci";
Tom Rini4a3ca482020-02-11 12:41:23 -05001200 bus-range = <0x00 0xff>;
Bin Meng510dddb2018-08-03 01:14:50 -07001201 #address-cells = <3>;
1202 #size-cells = <2>;
1203 ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
1204 0x01000000 0 0x60000000 0x60000000 0 0x2000>;
1205 sandbox,dev-info = <0x08 0x00 0x1234 0x5678>;
1206 pci@1f,0 {
1207 compatible = "pci-generic";
1208 reg = <0xf800 0 0 0 0>;
Simon Glassb98ba4c2019-09-25 08:56:10 -06001209 sandbox,emul = <&swap_case_emul2_1f>;
1210 };
1211 };
1212
1213 pci-emul2 {
1214 compatible = "sandbox,pci-emul-parent";
1215 swap_case_emul2_1f: emul2@1f,0 {
1216 compatible = "sandbox,swap-case";
Bin Meng510dddb2018-08-03 01:14:50 -07001217 };
1218 };
1219
Ramon Friedc64f19b2019-04-27 11:15:23 +03001220 pci_ep: pci_ep {
1221 compatible = "sandbox,pci_ep";
1222 };
1223
Simon Glass9c433fe2017-04-23 20:10:44 -06001224 probing {
1225 compatible = "simple-bus";
1226 test1 {
1227 compatible = "denx,u-boot-probe-test";
1228 };
1229
1230 test2 {
1231 compatible = "denx,u-boot-probe-test";
1232 };
1233
1234 test3 {
1235 compatible = "denx,u-boot-probe-test";
1236 };
1237
1238 test4 {
1239 compatible = "denx,u-boot-probe-test";
Jean-Jacques Hiblotdc44ea42018-11-29 10:57:37 +01001240 first-syscon = <&syscon0>;
1241 second-sys-ctrl = <&another_system_controller>;
Patrick Delaunayee010432019-03-07 09:57:13 +01001242 third-syscon = <&syscon2>;
Simon Glass9c433fe2017-04-23 20:10:44 -06001243 };
1244 };
1245
Stephen Warren92c67fa2016-07-13 13:45:31 -06001246 pwrdom: power-domain {
1247 compatible = "sandbox,power-domain";
1248 #power-domain-cells = <1>;
1249 };
1250
1251 power-domain-test {
1252 compatible = "sandbox,power-domain-test";
1253 power-domains = <&pwrdom 2>;
1254 };
1255
Simon Glass5620cf82018-10-01 12:22:40 -06001256 pwm: pwm {
Simon Glasse62f4be2017-04-16 21:01:11 -06001257 compatible = "sandbox,pwm";
Simon Glass5620cf82018-10-01 12:22:40 -06001258 #pwm-cells = <2>;
Dario Binacchi20dd9e12021-04-11 09:39:50 +02001259 pinctrl-names = "default";
1260 pinctrl-0 = <&pinmux_pwm_pins>;
Simon Glasse62f4be2017-04-16 21:01:11 -06001261 };
1262
1263 pwm2 {
1264 compatible = "sandbox,pwm";
Simon Glass5620cf82018-10-01 12:22:40 -06001265 #pwm-cells = <2>;
Simon Glasse62f4be2017-04-16 21:01:11 -06001266 };
1267
Simon Glass3d355e62015-07-06 12:54:31 -06001268 ram {
1269 compatible = "sandbox,ram";
1270 };
1271
Simon Glassd860f222015-07-06 12:54:29 -06001272 reset@0 {
1273 compatible = "sandbox,warm-reset";
Simon Glassd3a98cb2023-02-13 08:56:33 -07001274 bootph-some-ram;
Simon Glassd860f222015-07-06 12:54:29 -06001275 };
1276
1277 reset@1 {
1278 compatible = "sandbox,reset";
Simon Glassd3a98cb2023-02-13 08:56:33 -07001279 bootph-some-ram;
Simon Glassd860f222015-07-06 12:54:29 -06001280 };
1281
Stephen Warren6488e642016-06-17 09:43:59 -06001282 resetc: reset-ctl {
1283 compatible = "sandbox,reset-ctl";
1284 #reset-cells = <1>;
1285 };
1286
1287 reset-ctl-test {
1288 compatible = "sandbox,reset-ctl-test";
Neil Armstrong9b4cdef2021-04-20 10:42:25 +02001289 resets = <&resetc 100>, <&resetc 2>, <&resetc 20>, <&resetc 40>;
1290 reset-names = "other", "test", "test2", "test3";
Stephen Warren6488e642016-06-17 09:43:59 -06001291 };
1292
Sughosh Ganu23e37512019-12-28 23:58:31 +05301293 rng {
1294 compatible = "sandbox,sandbox-rng";
1295 };
1296
Nishanth Menonedf85812015-09-17 15:42:41 -05001297 rproc_1: rproc@1 {
1298 compatible = "sandbox,test-processor";
1299 remoteproc-name = "remoteproc-test-dev1";
1300 };
1301
1302 rproc_2: rproc@2 {
1303 compatible = "sandbox,test-processor";
1304 internal-memory-mapped;
1305 remoteproc-name = "remoteproc-test-dev2";
1306 };
1307
Simon Glass5620cf82018-10-01 12:22:40 -06001308 panel {
1309 compatible = "simple-panel";
1310 backlight = <&backlight 0 100>;
1311 };
1312
Simon Glass509f32e2022-09-21 16:21:47 +02001313 scsi {
1314 compatible = "sandbox,scsi";
1315 sandbox,filepath = "scsi.img";
1316 };
1317
Ramon Fried26ed32e2018-07-02 02:57:59 +03001318 smem@0 {
1319 compatible = "sandbox,smem";
1320 };
1321
Simon Glass76072ac2018-12-10 10:37:36 -07001322 sound {
1323 compatible = "sandbox,sound";
1324 cpu {
1325 sound-dai = <&i2s 0>;
1326 };
1327
1328 codec {
1329 sound-dai = <&audio 0>;
1330 };
1331 };
1332
Simon Glass25348a42014-10-13 23:42:11 -06001333 spi@0 {
1334 #address-cells = <1>;
1335 #size-cells = <0>;
Simon Glasscf61f742015-07-06 12:54:36 -06001336 reg = <0 1>;
Simon Glass25348a42014-10-13 23:42:11 -06001337 compatible = "sandbox,spi";
Ovidiu Panaitae734732020-12-14 19:06:47 +02001338 cs-gpios = <0>, <0>, <&gpio_a 0>;
Dario Binacchi20dd9e12021-04-11 09:39:50 +02001339 pinctrl-names = "default";
1340 pinctrl-0 = <&pinmux_spi0_pins>;
1341
Simon Glass25348a42014-10-13 23:42:11 -06001342 spi.bin@0 {
1343 reg = <0>;
Neil Armstronga009fa72019-02-10 10:16:20 +00001344 compatible = "spansion,m25p16", "jedec,spi-nor";
Simon Glass25348a42014-10-13 23:42:11 -06001345 spi-max-frequency = <40000000>;
1346 sandbox,filename = "spi.bin";
1347 };
Ovidiu Panaitae734732020-12-14 19:06:47 +02001348 spi.bin@1 {
1349 reg = <1>;
1350 compatible = "spansion,m25p16", "jedec,spi-nor";
1351 spi-max-frequency = <50000000>;
1352 sandbox,filename = "spi.bin";
1353 spi-cpol;
1354 spi-cpha;
1355 };
Simon Glass25348a42014-10-13 23:42:11 -06001356 };
1357
Jean-Jacques Hiblotdc44ea42018-11-29 10:57:37 +01001358 syscon0: syscon@0 {
Simon Glasscd556522015-07-06 12:54:35 -06001359 compatible = "sandbox,syscon0";
Mario Sixe3f59f42018-10-04 09:00:40 +02001360 reg = <0x10 16>;
Simon Glasscd556522015-07-06 12:54:35 -06001361 };
1362
Jean-Jacques Hiblotdc44ea42018-11-29 10:57:37 +01001363 another_system_controller: syscon@1 {
Simon Glasscd556522015-07-06 12:54:35 -06001364 compatible = "sandbox,syscon1";
Simon Glasscf61f742015-07-06 12:54:36 -06001365 reg = <0x20 5
1366 0x28 6
1367 0x30 7
1368 0x38 8>;
Simon Glasscd556522015-07-06 12:54:35 -06001369 };
1370
Patrick Delaunayee010432019-03-07 09:57:13 +01001371 syscon2: syscon@2 {
Masahiro Yamada42ab1072018-04-23 13:26:53 +09001372 compatible = "simple-mfd", "syscon";
1373 reg = <0x40 5
1374 0x48 6
1375 0x50 7
1376 0x58 8>;
1377 };
1378
Jean-Jacques Hiblota94b6972020-10-16 16:16:34 +05301379 syscon3: syscon@3 {
1380 compatible = "simple-mfd", "syscon";
1381 reg = <0x000100 0x10>;
1382
1383 muxcontroller0: a-mux-controller {
1384 compatible = "mmio-mux";
1385 #mux-control-cells = <1>;
1386
1387 mux-reg-masks = <0x0 0x30>, /* 0: reg 0x0, bits 5:4 */
1388 <0xc 0x1E>, /* 1: reg 0xc, bits 4:1 */
1389 <0x4 0xFF>; /* 2: reg 0x4, bits 7:0 */
1390 idle-states = <MUX_IDLE_AS_IS>, <0x02>, <0x73>;
1391 u-boot,mux-autoprobe;
1392 };
1393 };
1394
1395 muxcontroller1: emul-mux-controller {
1396 compatible = "mux-emul";
1397 #mux-control-cells = <0>;
1398 u-boot,mux-autoprobe;
1399 idle-state = <0xabcd>;
1400 };
1401
Simon Glass791a17f2020-12-16 21:20:27 -07001402 testfdtm0 {
1403 compatible = "denx,u-boot-fdtm-test";
1404 };
1405
1406 testfdtm1: testfdtm1 {
1407 compatible = "denx,u-boot-fdtm-test";
1408 };
1409
1410 testfdtm2 {
1411 compatible = "denx,u-boot-fdtm-test";
1412 };
1413
Sean Anderson79d3bba2020-09-28 10:52:23 -04001414 timer@0 {
Thomas Chou6f2cfbf2015-12-11 16:27:34 +08001415 compatible = "sandbox,timer";
1416 clock-frequency = <1000000>;
1417 };
1418
Sean Anderson79d3bba2020-09-28 10:52:23 -04001419 timer@1 {
1420 compatible = "sandbox,timer";
1421 sandbox,timebase-frequency-fallback;
1422 };
1423
Miquel Raynal80938c12018-05-15 11:57:27 +02001424 tpm2 {
1425 compatible = "sandbox,tpm2";
1426 };
1427
Simon Glasseef107e2023-02-21 06:24:51 -07001428 tpm {
1429 compatible = "google,sandbox-tpm";
1430 };
1431
Simon Glass5b968632015-05-22 15:42:15 -06001432 uart0: serial {
1433 compatible = "sandbox,serial";
Simon Glassd3a98cb2023-02-13 08:56:33 -07001434 bootph-all;
Dario Binacchi20dd9e12021-04-11 09:39:50 +02001435 pinctrl-names = "default";
1436 pinctrl-0 = <&pinmux_uart0_pins>;
Joe Hershberger4c197242015-03-22 17:09:15 -05001437 };
1438
Simon Glass31680482015-03-25 12:23:05 -06001439 usb_0: usb@0 {
1440 compatible = "sandbox,usb";
1441 status = "disabled";
1442 hub {
1443 compatible = "sandbox,usb-hub";
1444 #address-cells = <1>;
1445 #size-cells = <0>;
1446 flash-stick {
1447 reg = <0>;
1448 compatible = "sandbox,usb-flash";
1449 };
1450 };
1451 };
1452
1453 usb_1: usb@1 {
1454 compatible = "sandbox,usb";
Mark Kettenis67748ee2021-10-23 16:58:02 +02001455 iommus = <&iommu>;
Simon Glass31680482015-03-25 12:23:05 -06001456 hub {
1457 compatible = "usb-hub";
1458 usb,device-class = <9>;
Michael Walle7c961322020-06-02 01:47:07 +02001459 #address-cells = <1>;
1460 #size-cells = <0>;
Simon Glass31680482015-03-25 12:23:05 -06001461 hub-emul {
1462 compatible = "sandbox,usb-hub";
1463 #address-cells = <1>;
1464 #size-cells = <0>;
Simon Glass4700fe52015-11-08 23:48:01 -07001465 flash-stick@0 {
Simon Glass31680482015-03-25 12:23:05 -06001466 reg = <0>;
1467 compatible = "sandbox,usb-flash";
1468 sandbox,filepath = "testflash.bin";
1469 };
1470
Simon Glass4700fe52015-11-08 23:48:01 -07001471 flash-stick@1 {
1472 reg = <1>;
1473 compatible = "sandbox,usb-flash";
1474 sandbox,filepath = "testflash1.bin";
1475 };
1476
1477 flash-stick@2 {
1478 reg = <2>;
1479 compatible = "sandbox,usb-flash";
1480 sandbox,filepath = "testflash2.bin";
1481 };
1482
Simon Glassc0ccc722015-11-08 23:48:08 -07001483 keyb@3 {
1484 reg = <3>;
1485 compatible = "sandbox,usb-keyb";
1486 };
1487
Simon Glass31680482015-03-25 12:23:05 -06001488 };
Michael Walle7c961322020-06-02 01:47:07 +02001489
1490 usbstor@1 {
1491 reg = <1>;
1492 };
1493 usbstor@3 {
1494 reg = <3>;
1495 };
Simon Glass31680482015-03-25 12:23:05 -06001496 };
1497 };
1498
1499 usb_2: usb@2 {
1500 compatible = "sandbox,usb";
1501 status = "disabled";
1502 };
1503
Mateusz Kulikowskic7e4fbb2016-03-31 23:12:28 +02001504 spmi: spmi@0 {
1505 compatible = "sandbox,spmi";
1506 #address-cells = <0x1>;
1507 #size-cells = <0x1>;
Simon Glass95139972019-09-25 08:55:59 -06001508 ranges;
Mateusz Kulikowskic7e4fbb2016-03-31 23:12:28 +02001509 pm8916@0 {
1510 compatible = "qcom,spmi-pmic";
1511 reg = <0x0 0x1>;
1512 #address-cells = <0x1>;
1513 #size-cells = <0x1>;
Simon Glass95139972019-09-25 08:55:59 -06001514 ranges;
Mateusz Kulikowskic7e4fbb2016-03-31 23:12:28 +02001515
1516 spmi_gpios: gpios@c000 {
1517 compatible = "qcom,pm8916-gpio";
1518 reg = <0xc000 0x400>;
1519 gpio-controller;
1520 gpio-count = <4>;
1521 #gpio-cells = <2>;
1522 gpio-bank-name="spmi";
1523 };
1524 };
1525 };
maxims@google.comdaea6d42017-04-17 12:00:21 -07001526
1527 wdt0: wdt@0 {
1528 compatible = "sandbox,wdt";
Rasmus Villemoesf91ff5a2021-08-19 11:57:06 +02001529 hw_margin_ms = <200>;
maxims@google.comdaea6d42017-04-17 12:00:21 -07001530 };
Rob Clarka471b672018-01-10 11:33:30 +01001531
Mario Six95922152018-08-09 14:51:19 +02001532 axi: axi@0 {
1533 compatible = "sandbox,axi";
1534 #address-cells = <0x1>;
1535 #size-cells = <0x1>;
1536 store@0 {
1537 compatible = "sandbox,sandbox_store";
1538 reg = <0x0 0x400>;
1539 };
1540 };
1541
Rob Clarka471b672018-01-10 11:33:30 +01001542 chosen {
Simon Glass305ac9a2018-02-03 10:36:58 -07001543 #address-cells = <1>;
1544 #size-cells = <1>;
Simon Glassf3455962020-01-27 08:49:43 -07001545 setting = "sunrise ohoka";
1546 other-node = "/some-bus/c-test@5";
Simon Glasse09223c2020-01-27 08:49:46 -07001547 int-values = <0x1937 72993>;
Simon Glass3c601b12020-07-07 13:12:06 -06001548 u-boot,acpi-ssdt-order = <&acpi_test2 &acpi_test1>;
Rob Clarka471b672018-01-10 11:33:30 +01001549 chosen-test {
1550 compatible = "denx,u-boot-fdt-test";
1551 reg = <9 1>;
1552 };
1553 };
Mario Six35616ef2018-03-12 14:53:33 +01001554
1555 translation-test@8000 {
1556 compatible = "simple-bus";
1557 reg = <0x8000 0x4000>;
1558
1559 #address-cells = <0x2>;
1560 #size-cells = <0x1>;
1561
1562 ranges = <0 0x0 0x8000 0x1000
1563 1 0x100 0x9000 0x1000
1564 2 0x200 0xA000 0x1000
1565 3 0x300 0xB000 0x1000
1566 >;
1567
Fabien Dessenne22236e02019-05-31 15:11:30 +02001568 dma-ranges = <0 0x000 0x10000000 0x1000
1569 1 0x100 0x20000000 0x1000
1570 >;
1571
Mario Six35616ef2018-03-12 14:53:33 +01001572 dev@0,0 {
1573 compatible = "denx,u-boot-fdt-dummy";
1574 reg = <0 0x0 0x1000>;
Álvaro Fernåndez Rojasa3181152018-12-03 19:37:09 +01001575 reg-names = "sandbox-dummy-0";
Mario Six35616ef2018-03-12 14:53:33 +01001576 };
1577
1578 dev@1,100 {
1579 compatible = "denx,u-boot-fdt-dummy";
1580 reg = <1 0x100 0x1000>;
1581
1582 };
1583
1584 dev@2,200 {
1585 compatible = "denx,u-boot-fdt-dummy";
1586 reg = <2 0x200 0x1000>;
1587 };
1588
1589
1590 noxlatebus@3,300 {
1591 compatible = "simple-bus";
1592 reg = <3 0x300 0x1000>;
1593
1594 #address-cells = <0x1>;
1595 #size-cells = <0x0>;
1596
1597 dev@42 {
1598 compatible = "denx,u-boot-fdt-dummy";
1599 reg = <0x42>;
1600 };
1601 };
1602 };
Mario Six02ad6fb2018-09-27 09:19:31 +02001603
Dzmitry Sankouski54f4c832023-01-22 18:21:23 +03001604 ofnode-foreach {
1605 compatible = "foreach";
1606
1607 first {
1608 prop1 = <1>;
1609 prop2 = <2>;
1610 };
1611
1612 second {
1613 prop1 = <1>;
1614 prop2 = <2>;
1615 };
1616 };
1617
Mario Six02ad6fb2018-09-27 09:19:31 +02001618 osd {
1619 compatible = "sandbox,sandbox_osd";
1620 };
Tom Rinib93eea72018-09-30 18:16:51 -04001621
Jens Wiklander86afaa62018-09-25 16:40:16 +02001622 sandbox_tee {
1623 compatible = "sandbox,tee";
1624 };
Bin Meng1bb290d2018-10-15 02:21:26 -07001625
1626 sandbox_virtio1 {
1627 compatible = "sandbox,virtio1";
Simon Glass8de5a542023-01-17 10:47:51 -07001628 virtio-type = <4>; /* rng */
Bin Meng1bb290d2018-10-15 02:21:26 -07001629 };
1630
1631 sandbox_virtio2 {
1632 compatible = "sandbox,virtio2";
1633 };
Patrice Chotard0fc8afc2018-10-24 14:10:23 +02001634
Simon Glass8de5a542023-01-17 10:47:51 -07001635 sandbox-virtio-blk {
1636 compatible = "sandbox,virtio1";
1637 virtio-type = <2>; /* block */
1638 };
1639
Etienne Carriere2d94c08fa2020-09-09 18:44:05 +02001640 sandbox_scmi {
1641 compatible = "sandbox,scmi-devices";
Etienne Carrierebf1f1322022-02-21 09:22:41 +01001642 clocks = <&clk_scmi 2>, <&clk_scmi 0>;
Etienne Carriere09665cb2022-02-21 09:22:39 +01001643 resets = <&reset_scmi 3>;
1644 regul0-supply = <&regul0_scmi>;
1645 regul1-supply = <&regul1_scmi>;
Etienne Carriere2d94c08fa2020-09-09 18:44:05 +02001646 };
1647
Patrice Chotard0fc8afc2018-10-24 14:10:23 +02001648 pinctrl {
1649 compatible = "sandbox,pinctrl";
Patrick Delaunay939cbe92020-01-13 11:35:12 +01001650
Sean Anderson3438e3b2020-09-14 11:01:57 -04001651 pinctrl-names = "default", "alternate";
1652 pinctrl-0 = <&pinctrl_gpios>, <&pinctrl_i2s>;
1653 pinctrl-1 = <&pinctrl_spi>, <&pinctrl_i2c>;
Patrick Delaunay939cbe92020-01-13 11:35:12 +01001654
Sean Anderson3438e3b2020-09-14 11:01:57 -04001655 pinctrl_gpios: gpios {
Patrick Delaunay939cbe92020-01-13 11:35:12 +01001656 gpio0 {
Sean Anderson3438e3b2020-09-14 11:01:57 -04001657 pins = "P5";
1658 function = "GPIO";
Patrick Delaunay939cbe92020-01-13 11:35:12 +01001659 bias-pull-up;
1660 input-disable;
1661 };
1662 gpio1 {
Sean Anderson3438e3b2020-09-14 11:01:57 -04001663 pins = "P6";
1664 function = "GPIO";
Patrick Delaunay939cbe92020-01-13 11:35:12 +01001665 output-high;
1666 drive-open-drain;
1667 };
1668 gpio2 {
Sean Anderson3438e3b2020-09-14 11:01:57 -04001669 pinmux = <SANDBOX_PINMUX(7, SANDBOX_PINMUX_GPIO)>;
Patrick Delaunay939cbe92020-01-13 11:35:12 +01001670 bias-pull-down;
1671 input-enable;
1672 };
1673 gpio3 {
Sean Anderson3438e3b2020-09-14 11:01:57 -04001674 pinmux = <SANDBOX_PINMUX(8, SANDBOX_PINMUX_GPIO)>;
Patrick Delaunay939cbe92020-01-13 11:35:12 +01001675 bias-disable;
1676 };
1677 };
Sean Anderson3438e3b2020-09-14 11:01:57 -04001678
1679 pinctrl_i2c: i2c {
1680 groups {
1681 groups = "I2C_UART";
1682 function = "I2C";
1683 };
1684
1685 pins {
1686 pins = "P0", "P1";
1687 drive-open-drain;
1688 };
1689 };
1690
1691 pinctrl_i2s: i2s {
1692 groups = "SPI_I2S";
1693 function = "I2S";
1694 };
1695
1696 pinctrl_spi: spi {
1697 groups = "SPI_I2S";
1698 function = "SPI";
1699
1700 cs {
1701 pinmux = <SANDBOX_PINMUX(5, SANDBOX_PINMUX_CS)>,
1702 <SANDBOX_PINMUX(6, SANDBOX_PINMUX_CS)>;
1703 };
1704 };
Patrice Chotard0fc8afc2018-10-24 14:10:23 +02001705 };
Benjamin Gaignarda550b542018-11-27 13:49:50 +01001706
Dario Binacchi20dd9e12021-04-11 09:39:50 +02001707 pinctrl-single-no-width {
1708 compatible = "pinctrl-single";
1709 reg = <0x0000 0x238>;
1710 #pinctrl-cells = <1>;
1711 pinctrl-single,function-mask = <0x7f>;
1712 };
1713
1714 pinctrl-single-pins {
1715 compatible = "pinctrl-single";
1716 reg = <0x0000 0x238>;
1717 #pinctrl-cells = <1>;
1718 pinctrl-single,register-width = <32>;
1719 pinctrl-single,function-mask = <0x7f>;
1720
1721 pinmux_pwm_pins: pinmux_pwm_pins {
1722 pinctrl-single,pins = < 0x48 0x06 >;
1723 };
1724
1725 pinmux_spi0_pins: pinmux_spi0_pins {
1726 pinctrl-single,pins = <
1727 0x190 0x0c
1728 0x194 0x0c
1729 0x198 0x23
1730 0x19c 0x0c
1731 >;
1732 };
1733
1734 pinmux_uart0_pins: pinmux_uart0_pins {
1735 pinctrl-single,pins = <
1736 0x70 0x30
1737 0x74 0x00
1738 >;
1739 };
1740 };
1741
1742 pinctrl-single-bits {
1743 compatible = "pinctrl-single";
1744 reg = <0x0000 0x50>;
1745 #pinctrl-cells = <2>;
1746 pinctrl-single,bit-per-mux;
1747 pinctrl-single,register-width = <32>;
1748 pinctrl-single,function-mask = <0xf>;
1749
1750 pinmux_i2c0_pins: pinmux_i2c0_pins {
1751 pinctrl-single,bits = <
1752 0x10 0x00002200 0x0000ff00
1753 >;
1754 };
1755
1756 pinmux_lcd_pins: pinmux_lcd_pins {
1757 pinctrl-single,bits = <
1758 0x40 0x22222200 0xffffff00
1759 0x44 0x22222222 0xffffffff
1760 0x48 0x00000022 0x000000ff
1761 0x48 0x02000000 0x0f000000
1762 0x4c 0x02000022 0x0f0000ff
1763 >;
1764 };
1765 };
1766
Benjamin Gaignarda550b542018-11-27 13:49:50 +01001767 hwspinlock@0 {
1768 compatible = "sandbox,hwspinlock";
1769 };
Grygorii Strashko19ebf0b2018-11-28 19:17:51 +01001770
1771 dma: dma {
1772 compatible = "sandbox,dma";
1773 #dma-cells = <1>;
1774
1775 dmas = <&dma 0>, <&dma 1>, <&dma 2>;
1776 dma-names = "m2m", "tx0", "rx0";
1777 };
Alex Marginean0daa53a2019-06-03 19:12:28 +03001778
Alex Marginean0649be52019-07-12 10:13:53 +03001779 /*
1780 * keep mdio-mux ahead of mdio so that the mux is removed first at the
1781 * end of the test. If parent mdio is removed first, clean-up of the
1782 * mux will trigger a 2nd probe of parent-mdio, leaving parent-mdio
1783 * active at the end of the test. That it turn doesn't allow the mdio
1784 * class to be destroyed, triggering an error.
1785 */
1786 mdio-mux-test {
1787 compatible = "sandbox,mdio-mux";
1788 #address-cells = <1>;
1789 #size-cells = <0>;
1790 mdio-parent-bus = <&mdio>;
1791
1792 mdio-ch-test@0 {
1793 reg = <0>;
1794 };
1795 mdio-ch-test@1 {
1796 reg = <1>;
1797 };
1798 };
1799
1800 mdio: mdio-test {
Alex Marginean0daa53a2019-06-03 19:12:28 +03001801 compatible = "sandbox,mdio";
Marek BehĂșnf4f1ddc2022-04-07 00:32:57 +02001802 #address-cells = <1>;
1803 #size-cells = <0>;
1804
1805 ethphy1: ethernet-phy@1 {
1806 reg = <1>;
1807 };
Alex Marginean0daa53a2019-06-03 19:12:28 +03001808 };
Sean Andersonb7860542020-06-24 06:41:12 -04001809
1810 pm-bus-test {
1811 compatible = "simple-pm-bus";
1812 clocks = <&clk_sandbox 4>;
1813 power-domains = <&pwrdom 1>;
1814 };
Sean Anderson0c1f6bf2020-06-24 06:41:14 -04001815
1816 resetc2: syscon-reset {
1817 compatible = "syscon-reset";
1818 #reset-cells = <1>;
1819 regmap = <&syscon0>;
1820 offset = <1>;
1821 mask = <0x27FFFFFF>;
1822 assert-high = <0>;
1823 };
1824
1825 syscon-reset-test {
1826 compatible = "sandbox,misc_sandbox";
1827 resets = <&resetc2 15>, <&resetc2 30>, <&resetc2 60>;
1828 reset-names = "valid", "no_mask", "out_of_range";
1829 };
Jean-Jacques Hiblot0b89fc52020-09-24 10:04:18 +05301830
Simon Glass458b66a2020-11-05 06:32:05 -07001831 sysinfo {
1832 compatible = "sandbox,sysinfo-sandbox";
1833 };
1834
Sean Anderson1c830672021-04-20 10:50:58 -04001835 sysinfo-gpio {
1836 compatible = "gpio-sysinfo";
1837 gpios = <&gpio_a 15>, <&gpio_a 16>, <&gpio_a 17>;
1838 revisions = <19>, <5>;
1839 names = "rev_a", "foo";
1840 };
1841
Jean-Jacques Hiblot0b89fc52020-09-24 10:04:18 +05301842 some_regmapped-bus {
1843 #address-cells = <0x1>;
1844 #size-cells = <0x1>;
1845
1846 ranges = <0x0 0x0 0x10>;
1847 compatible = "simple-bus";
1848
1849 regmap-test_0 {
1850 reg = <0 0x10>;
1851 compatible = "sandbox,regmap_test";
1852 };
1853 };
Robert Marko9cf87122022-09-06 13:30:35 +02001854
1855 thermal {
1856 compatible = "sandbox,thermal";
1857 };
Sughosh Ganu77079e72022-10-21 18:16:05 +05301858
1859 fwu-mdata {
1860 compatible = "u-boot,fwu-mdata-gpt";
1861 fwu-mdata-store = <&mmc0>;
1862 };
Abdellatif El Khlifi6b005872023-04-17 10:11:55 +01001863
1864 nvmxip-qspi1@08000000 {
1865 compatible = "nvmxip,qspi";
1866 reg = <0x08000000 0x00200000>;
1867 lba_shift = <9>;
1868 lba = <4096>;
1869 };
1870
1871 nvmxip-qspi2@08200000 {
1872 compatible = "nvmxip,qspi";
1873 reg = <0x08200000 0x00100000>;
1874 lba_shift = <9>;
1875 lba = <2048>;
1876 };
Svyatoslav Ryhel669f5c82023-04-25 10:57:21 +03001877
1878 extcon {
1879 compatible = "sandbox,extcon";
1880 };
Abdellatif El Khlifi4970d5b2023-08-04 14:33:41 +01001881
1882 arm-ffa-emul {
1883 compatible = "sandbox,arm-ffa-emul";
1884
1885 sandbox-arm-ffa {
1886 compatible = "sandbox,arm-ffa";
1887 };
1888 };
Simon Glassb2c1cac2014-02-26 15:59:21 -07001889};
Przemyslaw Marczak77bee052015-05-13 13:38:35 +02001890
1891#include "sandbox_pmic.dtsi"
Heinrich Schuchardte24fdef2021-02-18 13:01:35 +01001892#include "cros-ec-keyboard.dtsi"
Simon Glass5e135d32022-10-20 18:23:15 -06001893
1894#ifdef CONFIG_SANDBOX_VPL
1895#include "sandbox_vpl.dtsi"
1896#endif
Simon Glass61300722023-06-01 10:23:01 -06001897
1898#include "cedit.dtsi"