blob: 02e37abcc258ea4bf99a4053e5c4ba1675edfa21 [file] [log] [blame]
Simon Glass2e7d35d2014-02-26 15:59:21 -07001/dts-v1/;
2
3/ {
4 model = "sandbox";
5 compatible = "sandbox";
6 #address-cells = <1>;
Simon Glass0503e822015-07-06 12:54:36 -06007 #size-cells = <1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -07008
Simon Glass00606d72014-07-23 06:55:03 -06009 aliases {
10 console = &uart0;
Simon Glass171e9912015-05-22 15:42:15 -060011 eth0 = "/eth@10002000";
Bin Meng71d79712015-08-27 22:25:53 -070012 eth3 = &eth_3;
Simon Glass171e9912015-05-22 15:42:15 -060013 eth5 = &eth_5;
Simon Glass5d9a88f2018-10-01 12:22:40 -060014 gpio1 = &gpio_a;
15 gpio2 = &gpio_b;
Simon Glass9cc36a22015-01-25 08:27:05 -070016 i2c0 = "/i2c@0";
Simon Glasse48eeb92017-04-23 20:02:07 -060017 mmc0 = "/mmc0";
18 mmc1 = "/mmc1";
Bin Mengdee4d752018-08-03 01:14:41 -070019 pci0 = &pci0;
20 pci1 = &pci1;
Bin Meng3ed214a2018-08-03 01:14:50 -070021 pci2 = &pci2;
Nishanth Menon52159402015-09-17 15:42:41 -050022 remoteproc1 = &rproc_1;
23 remoteproc2 = &rproc_2;
Simon Glass52d3bc52015-05-22 15:42:17 -060024 rtc0 = &rtc_0;
25 rtc1 = &rtc_1;
Simon Glass171e9912015-05-22 15:42:15 -060026 spi0 = "/spi@0";
Przemyslaw Marczakf64000c2015-05-13 13:38:34 +020027 testfdt6 = "/e-test";
Simon Glass9cc36a22015-01-25 08:27:05 -070028 testbus3 = "/some-bus";
29 testfdt0 = "/some-bus/c-test@0";
30 testfdt1 = "/some-bus/c-test@1";
31 testfdt3 = "/b-test";
32 testfdt5 = "/some-bus/c-test@5";
33 testfdt8 = "/a-test";
Eugeniu Rosca507cef32018-05-19 14:13:55 +020034 fdt-dummy0 = "/translation-test@8000/dev@0,0";
35 fdt-dummy1 = "/translation-test@8000/dev@1,100";
36 fdt-dummy2 = "/translation-test@8000/dev@2,200";
37 fdt-dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
Simon Glasse00cb222015-03-25 12:23:05 -060038 usb0 = &usb_0;
39 usb1 = &usb_1;
40 usb2 = &usb_2;
Mario Six957983e2018-08-09 14:51:19 +020041 axi0 = &axi;
Mario Six4eea5312018-09-27 09:19:31 +020042 osd0 = "/osd";
Simon Glass00606d72014-07-23 06:55:03 -060043 };
44
Simon Glassce6d99a2018-12-10 10:37:33 -070045 audio: audio-codec {
46 compatible = "sandbox,audio-codec";
47 #sound-dai-cells = <1>;
48 };
49
Simon Glasse96fa6c2018-12-10 10:37:34 -070050 cros_ec: cros-ec {
Simon Glasse6c5c942018-10-01 12:22:08 -060051 reg = <0 0>;
52 compatible = "google,cros-ec-sandbox";
53
54 /*
55 * This describes the flash memory within the EC. Note
56 * that the STM32L flash erases to 0, not 0xff.
57 */
58 flash {
59 image-pos = <0x08000000>;
60 size = <0x20000>;
61 erase-value = <0>;
62
63 /* Information for sandbox */
64 ro {
65 image-pos = <0>;
66 size = <0xf000>;
67 };
68 wp-ro {
69 image-pos = <0xf000>;
70 size = <0x1000>;
71 };
72 rw {
73 image-pos = <0x10000>;
74 size = <0x10000>;
75 };
76 };
77 };
78
Yannick Fertré23f965a2019-10-07 15:29:05 +020079 dsi_host: dsi_host {
80 compatible = "sandbox,dsi-host";
81 };
82
Simon Glass2e7d35d2014-02-26 15:59:21 -070083 a-test {
Simon Glass0503e822015-07-06 12:54:36 -060084 reg = <0 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070085 compatible = "denx,u-boot-fdt-test";
Simon Glasseb9ef5f2014-07-23 06:54:57 -060086 ping-expect = <0>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070087 ping-add = <0>;
Simon Glass00606d72014-07-23 06:55:03 -060088 u-boot,dm-pre-reloc;
Simon Glass3669e0e2015-01-05 20:05:29 -070089 test-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 5 0 3 2 1>,
90 <0>, <&gpio_a 12>;
91 test2-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 6 1 3 2 1>,
92 <&gpio_b 7 2 3 2 1>, <&gpio_b 8 4 3 2 1>,
93 <&gpio_b 9 0xc 3 2 1>;
Simon Glassa1b17e42018-12-10 10:37:37 -070094 int-value = <1234>;
95 uint-value = <(-1234)>;
Dario Binacchi70573c62020-03-29 18:04:40 +020096 int64-value = /bits/ 64 <0x1111222233334444>;
Dario Binacchi4bb70752020-03-29 18:04:41 +020097 int-array = <5678 9123 4567>;
Simon Glass02554352020-02-06 09:55:00 -070098 interrupts-extended = <&irq 3 0>;
Simon Glass2e7d35d2014-02-26 15:59:21 -070099 };
100
101 junk {
Simon Glass0503e822015-07-06 12:54:36 -0600102 reg = <1 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700103 compatible = "not,compatible";
104 };
105
106 no-compatible {
Simon Glass0503e822015-07-06 12:54:36 -0600107 reg = <2 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700108 };
109
Simon Glass5d9a88f2018-10-01 12:22:40 -0600110 backlight: backlight {
111 compatible = "pwm-backlight";
112 enable-gpios = <&gpio_a 1>;
113 power-supply = <&ldo_1>;
114 pwms = <&pwm 0 1000>;
115 default-brightness-level = <5>;
116 brightness-levels = <0 16 32 64 128 170 202 234 255>;
117 };
118
Jean-Jacques Hiblot49c752c2018-08-09 16:17:46 +0200119 bind-test {
120 bind-test-child1 {
121 compatible = "sandbox,phy";
122 #phy-cells = <1>;
123 };
124
125 bind-test-child2 {
126 compatible = "simple-bus";
127 };
128 };
129
Simon Glass2e7d35d2014-02-26 15:59:21 -0700130 b-test {
Simon Glass0503e822015-07-06 12:54:36 -0600131 reg = <3 1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700132 compatible = "denx,u-boot-fdt-test";
Simon Glasseb9ef5f2014-07-23 06:54:57 -0600133 ping-expect = <3>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700134 ping-add = <3>;
135 };
136
Jean-Jacques Hiblot86322f52017-04-24 11:51:28 +0200137 phy_provider0: gen_phy@0 {
138 compatible = "sandbox,phy";
139 #phy-cells = <1>;
140 };
141
142 phy_provider1: gen_phy@1 {
143 compatible = "sandbox,phy";
144 #phy-cells = <0>;
145 broken;
146 };
147
148 gen_phy_user: gen_phy_user {
149 compatible = "simple-bus";
150 phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
151 phy-names = "phy1", "phy2", "phy3";
152 };
153
Simon Glass2e7d35d2014-02-26 15:59:21 -0700154 some-bus {
155 #address-cells = <1>;
156 #size-cells = <0>;
Simon Glass1ca7e202014-07-23 06:55:18 -0600157 compatible = "denx,u-boot-test-bus";
Simon Glass0503e822015-07-06 12:54:36 -0600158 reg = <3 1>;
Simon Glasseb9ef5f2014-07-23 06:54:57 -0600159 ping-expect = <4>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700160 ping-add = <4>;
Simon Glass1ca7e202014-07-23 06:55:18 -0600161 c-test@5 {
Simon Glass2e7d35d2014-02-26 15:59:21 -0700162 compatible = "denx,u-boot-fdt-test";
163 reg = <5>;
Simon Glass1ca7e202014-07-23 06:55:18 -0600164 ping-expect = <5>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700165 ping-add = <5>;
166 };
Simon Glass1ca7e202014-07-23 06:55:18 -0600167 c-test@0 {
168 compatible = "denx,u-boot-fdt-test";
169 reg = <0>;
170 ping-expect = <6>;
171 ping-add = <6>;
172 };
173 c-test@1 {
174 compatible = "denx,u-boot-fdt-test";
175 reg = <1>;
176 ping-expect = <7>;
177 ping-add = <7>;
178 };
Simon Glass2e7d35d2014-02-26 15:59:21 -0700179 };
180
181 d-test {
Simon Glass0503e822015-07-06 12:54:36 -0600182 reg = <3 1>;
Simon Glass5a66a8f2014-07-23 06:55:12 -0600183 ping-expect = <6>;
184 ping-add = <6>;
185 compatible = "google,another-fdt-test";
186 };
187
188 e-test {
Simon Glass0503e822015-07-06 12:54:36 -0600189 reg = <3 1>;
Simon Glasseb9ef5f2014-07-23 06:54:57 -0600190 ping-expect = <6>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700191 ping-add = <6>;
192 compatible = "google,another-fdt-test";
193 };
194
Simon Glass9cc36a22015-01-25 08:27:05 -0700195 f-test {
196 compatible = "denx,u-boot-fdt-test";
197 };
198
199 g-test {
200 compatible = "denx,u-boot-fdt-test";
201 };
202
Bin Meng2786cd72018-10-10 22:07:01 -0700203 h-test {
204 compatible = "denx,u-boot-fdt-test1";
205 };
206
Simon Glassdc12ebb2019-12-29 21:19:25 -0700207 devres-test {
208 compatible = "denx,u-boot-devres-test";
209 };
210
Simon Glassf50cc952020-04-08 16:57:34 -0600211 acpi-test {
212 compatible = "denx,u-boot-acpi-test";
213 };
214
Patrice Chotardee87a092017-09-04 14:55:57 +0200215 clocks {
216 clk_fixed: clk-fixed {
217 compatible = "fixed-clock";
218 #clock-cells = <0>;
219 clock-frequency = <1234>;
220 };
Anup Patelb630d572019-02-25 08:14:55 +0000221
222 clk_fixed_factor: clk-fixed-factor {
223 compatible = "fixed-factor-clock";
224 #clock-cells = <0>;
225 clock-div = <3>;
226 clock-mult = <2>;
227 clocks = <&clk_fixed>;
228 };
Lukasz Majewski4ab8e782019-06-24 15:50:47 +0200229
230 osc {
231 compatible = "fixed-clock";
232 #clock-cells = <0>;
233 clock-frequency = <20000000>;
234 };
Stephen Warren135aa952016-06-17 09:44:00 -0600235 };
236
237 clk_sandbox: clk-sbox {
Simon Glass6a1c7ce2015-07-06 12:54:24 -0600238 compatible = "sandbox,clk";
Stephen Warren135aa952016-06-17 09:44:00 -0600239 #clock-cells = <1>;
Jean-Jacques Hiblot9a52be12019-10-22 14:00:07 +0200240 assigned-clocks = <&clk_sandbox 3>;
241 assigned-clock-rates = <321>;
Stephen Warren135aa952016-06-17 09:44:00 -0600242 };
243
244 clk-test {
245 compatible = "sandbox,clk-test";
246 clocks = <&clk_fixed>,
247 <&clk_sandbox 1>,
Jean-Jacques Hiblotdd2e0ce2019-10-22 14:00:05 +0200248 <&clk_sandbox 0>,
249 <&clk_sandbox 3>,
250 <&clk_sandbox 2>;
251 clock-names = "fixed", "i2c", "spi", "uart2", "uart1";
Simon Glass6a1c7ce2015-07-06 12:54:24 -0600252 };
253
Lukasz Majewski87e460c2019-06-24 15:50:50 +0200254 ccf: clk-ccf {
255 compatible = "sandbox,clk-ccf";
256 };
257
Simon Glass171e9912015-05-22 15:42:15 -0600258 eth@10002000 {
259 compatible = "sandbox,eth";
260 reg = <0x10002000 0x1000>;
Joe Hershbergerc6fa51a2018-07-02 14:47:45 -0500261 fake-host-hwaddr = [00 00 66 44 22 00];
Simon Glass171e9912015-05-22 15:42:15 -0600262 };
263
264 eth_5: eth@10003000 {
265 compatible = "sandbox,eth";
266 reg = <0x10003000 0x1000>;
Joe Hershbergerc6fa51a2018-07-02 14:47:45 -0500267 fake-host-hwaddr = [00 00 66 44 22 11];
Simon Glass171e9912015-05-22 15:42:15 -0600268 };
269
Bin Meng71d79712015-08-27 22:25:53 -0700270 eth_3: sbe5 {
271 compatible = "sandbox,eth";
272 reg = <0x10005000 0x1000>;
Joe Hershbergerc6fa51a2018-07-02 14:47:45 -0500273 fake-host-hwaddr = [00 00 66 44 22 33];
Bin Meng71d79712015-08-27 22:25:53 -0700274 };
275
Simon Glass171e9912015-05-22 15:42:15 -0600276 eth@10004000 {
277 compatible = "sandbox,eth";
278 reg = <0x10004000 0x1000>;
Joe Hershbergerc6fa51a2018-07-02 14:47:45 -0500279 fake-host-hwaddr = [00 00 66 44 22 22];
Simon Glass171e9912015-05-22 15:42:15 -0600280 };
281
Rajan Vaja31b82172018-09-19 03:43:46 -0700282 firmware {
283 sandbox_firmware: sandbox-firmware {
284 compatible = "sandbox,firmware";
285 };
286 };
287
Simon Glass0ae0cb72014-10-13 23:42:11 -0600288 gpio_a: base-gpios {
Simon Glass2e7d35d2014-02-26 15:59:21 -0700289 compatible = "sandbox,gpio";
Simon Glass3669e0e2015-01-05 20:05:29 -0700290 gpio-controller;
291 #gpio-cells = <1>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700292 gpio-bank-name = "a";
Simon Glass995b60b2018-02-03 10:36:59 -0700293 sandbox,gpio-count = <20>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700294 };
295
Simon Glass3669e0e2015-01-05 20:05:29 -0700296 gpio_b: extra-gpios {
Simon Glass2e7d35d2014-02-26 15:59:21 -0700297 compatible = "sandbox,gpio";
Simon Glass3669e0e2015-01-05 20:05:29 -0700298 gpio-controller;
299 #gpio-cells = <5>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700300 gpio-bank-name = "b";
Simon Glass995b60b2018-02-03 10:36:59 -0700301 sandbox,gpio-count = <10>;
Simon Glass2e7d35d2014-02-26 15:59:21 -0700302 };
Simon Glass0ae0cb72014-10-13 23:42:11 -0600303
Simon Glassecc2ed52014-12-10 08:55:55 -0700304 i2c@0 {
305 #address-cells = <1>;
306 #size-cells = <0>;
Simon Glass0503e822015-07-06 12:54:36 -0600307 reg = <0 1>;
Simon Glassecc2ed52014-12-10 08:55:55 -0700308 compatible = "sandbox,i2c";
309 clock-frequency = <100000>;
310 eeprom@2c {
311 reg = <0x2c>;
312 compatible = "i2c-eeprom";
Simon Glass031a6502018-11-18 08:14:34 -0700313 sandbox,emul = <&emul_eeprom>;
Simon Glassecc2ed52014-12-10 08:55:55 -0700314 };
Przemyslaw Marczak9038cd52015-05-13 13:38:35 +0200315
Simon Glass52d3bc52015-05-22 15:42:17 -0600316 rtc_0: rtc@43 {
317 reg = <0x43>;
318 compatible = "sandbox-rtc";
Simon Glass031a6502018-11-18 08:14:34 -0700319 sandbox,emul = <&emul0>;
Simon Glass52d3bc52015-05-22 15:42:17 -0600320 };
321
322 rtc_1: rtc@61 {
323 reg = <0x61>;
324 compatible = "sandbox-rtc";
Simon Glass031a6502018-11-18 08:14:34 -0700325 sandbox,emul = <&emul1>;
326 };
327
328 i2c_emul: emul {
329 reg = <0xff>;
330 compatible = "sandbox,i2c-emul-parent";
331 emul_eeprom: emul-eeprom {
332 compatible = "sandbox,i2c-eeprom";
333 sandbox,filename = "i2c.bin";
334 sandbox,size = <256>;
335 };
336 emul0: emul0 {
337 compatible = "sandbox,i2c-rtc";
338 };
339 emul1: emull {
Simon Glass52d3bc52015-05-22 15:42:17 -0600340 compatible = "sandbox,i2c-rtc";
341 };
342 };
343
Przemyslaw Marczak9038cd52015-05-13 13:38:35 +0200344 sandbox_pmic: sandbox_pmic {
345 reg = <0x40>;
Simon Glass031a6502018-11-18 08:14:34 -0700346 sandbox,emul = <&emul_pmic0>;
Przemyslaw Marczak9038cd52015-05-13 13:38:35 +0200347 };
Lukasz Majewski686df492018-05-15 16:26:40 +0200348
349 mc34708: pmic@41 {
350 reg = <0x41>;
Simon Glass031a6502018-11-18 08:14:34 -0700351 sandbox,emul = <&emul_pmic1>;
Lukasz Majewski686df492018-05-15 16:26:40 +0200352 };
Simon Glassecc2ed52014-12-10 08:55:55 -0700353 };
354
Philipp Tomsich6f2d59c2018-12-14 21:14:29 +0100355 bootcount@0 {
356 compatible = "u-boot,bootcount-rtc";
357 rtc = <&rtc_1>;
358 offset = <0x13>;
359 };
360
Przemyslaw Marczak08d63002015-10-27 13:08:06 +0100361 adc@0 {
362 compatible = "sandbox,adc";
363 vdd-supply = <&buck2>;
364 vss-microvolts = <0>;
365 };
366
Simon Glass02554352020-02-06 09:55:00 -0700367 irq: irq {
Simon Glassfbb0efd2019-12-06 21:41:59 -0700368 compatible = "sandbox,irq";
Simon Glass02554352020-02-06 09:55:00 -0700369 interrupt-controller;
370 #interrupt-cells = <2>;
Simon Glassfbb0efd2019-12-06 21:41:59 -0700371 };
372
Simon Glass3c97c4f2016-01-18 19:52:26 -0700373 lcd {
374 u-boot,dm-pre-reloc;
375 compatible = "sandbox,lcd-sdl";
376 xres = <1366>;
377 yres = <768>;
378 };
379
Simon Glass3c43fba2015-07-06 12:54:34 -0600380 leds {
381 compatible = "gpio-leds";
382
383 iracibble {
384 gpios = <&gpio_a 1 0>;
385 label = "sandbox:red";
386 };
387
388 martinet {
389 gpios = <&gpio_a 2 0>;
390 label = "sandbox:green";
391 };
Patrick Bruenn274fb462018-04-11 11:16:29 +0200392
393 default_on {
394 gpios = <&gpio_a 5 0>;
395 label = "sandbox:default_on";
396 default-state = "on";
397 };
398
399 default_off {
400 gpios = <&gpio_a 6 0>;
401 label = "sandbox:default_off";
402 default-state = "off";
403 };
Simon Glass3c43fba2015-07-06 12:54:34 -0600404 };
405
Stephen Warren8961b522016-05-16 17:41:37 -0600406 mbox: mbox {
407 compatible = "sandbox,mbox";
408 #mbox-cells = <1>;
409 };
410
411 mbox-test {
412 compatible = "sandbox,mbox-test";
413 mboxes = <&mbox 100>, <&mbox 1>;
414 mbox-names = "other", "test";
415 };
416
AKASHI Takahiro073e6d62019-08-27 17:17:03 +0900417 cpus {
418 cpu-test1 {
419 compatible = "sandbox,cpu_sandbox";
420 u-boot,dm-pre-reloc;
421 };
Mario Sixfa44b532018-08-06 10:23:44 +0200422
AKASHI Takahiro073e6d62019-08-27 17:17:03 +0900423 cpu-test2 {
424 compatible = "sandbox,cpu_sandbox";
425 u-boot,dm-pre-reloc;
426 };
Mario Sixfa44b532018-08-06 10:23:44 +0200427
AKASHI Takahiro073e6d62019-08-27 17:17:03 +0900428 cpu-test3 {
429 compatible = "sandbox,cpu_sandbox";
430 u-boot,dm-pre-reloc;
431 };
Mario Sixfa44b532018-08-06 10:23:44 +0200432 };
433
Simon Glasse96fa6c2018-12-10 10:37:34 -0700434 i2s: i2s {
435 compatible = "sandbox,i2s";
436 #sound-dai-cells = <1>;
Simon Glassecc79732019-02-16 20:24:56 -0700437 sandbox,silent; /* Don't emit sounds while testing */
Simon Glasse96fa6c2018-12-10 10:37:34 -0700438 };
439
Jean-Jacques Hiblot07e33712019-07-05 09:33:57 +0200440 nop-test_0 {
441 compatible = "sandbox,nop_sandbox1";
442 nop-test_1 {
443 compatible = "sandbox,nop_sandbox2";
444 bind = "True";
445 };
446 nop-test_2 {
447 compatible = "sandbox,nop_sandbox2";
448 bind = "False";
449 };
450 };
451
Mario Six004e67c2018-07-31 14:24:14 +0200452 misc-test {
453 compatible = "sandbox,misc_sandbox";
454 };
455
Simon Glasse48eeb92017-04-23 20:02:07 -0600456 mmc2 {
457 compatible = "sandbox,mmc";
458 };
459
460 mmc1 {
461 compatible = "sandbox,mmc";
462 };
463
464 mmc0 {
Simon Glass8e6cc462015-07-06 12:54:32 -0600465 compatible = "sandbox,mmc";
466 };
467
Simon Glassb45c8332019-02-16 20:24:50 -0700468 pch {
469 compatible = "sandbox,pch";
470 };
471
Tom Rini42c64d12020-02-11 12:41:23 -0500472 pci0: pci@0 {
Simon Glassd3b7ff12015-03-05 12:25:34 -0700473 compatible = "sandbox,pci";
474 device_type = "pci";
Tom Rini42c64d12020-02-11 12:41:23 -0500475 bus-range = <0x00 0xff>;
Simon Glassd3b7ff12015-03-05 12:25:34 -0700476 #address-cells = <3>;
477 #size-cells = <2>;
Simon Glassb0e2c232019-09-25 08:56:08 -0600478 ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000000
Simon Glassd3b7ff12015-03-05 12:25:34 -0700479 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
Bin Meng2db7f2b2018-08-03 01:14:39 -0700480 pci@0,0 {
481 compatible = "pci-generic";
482 reg = <0x0000 0 0 0 0>;
Simon Glass9b69ba42019-09-25 08:56:10 -0600483 sandbox,emul = <&swap_case_emul0_0>;
Bin Meng2db7f2b2018-08-03 01:14:39 -0700484 };
Alex Marginean21ebbaf2019-06-07 11:24:24 +0300485 pci@1,0 {
486 compatible = "pci-generic";
Simon Glass33c215a2019-09-15 12:08:58 -0600487 /* reg 0 is at 0x14, using FDT_PCI_SPACE_MEM32 */
488 reg = <0x02000814 0 0 0 0
489 0x01000810 0 0 0 0>;
Simon Glass9b69ba42019-09-25 08:56:10 -0600490 sandbox,emul = <&swap_case_emul0_1>;
Alex Marginean21ebbaf2019-06-07 11:24:24 +0300491 };
Simon Glass3e17ffb2019-12-06 21:41:57 -0700492 p2sb-pci@2,0 {
493 compatible = "sandbox,p2sb";
494 reg = <0x02001010 0 0 0 0>;
495 sandbox,emul = <&p2sb_emul>;
496
497 adder {
498 intel,p2sb-port-id = <3>;
499 compatible = "sandbox,adder";
500 };
501 };
Simon Glass3b65ee32019-12-06 21:41:54 -0700502 pci@1e,0 {
503 compatible = "sandbox,pmc";
504 reg = <0xf000 0 0 0 0>;
505 sandbox,emul = <&pmc_emul1e>;
506 acpi-base = <0x400>;
507 gpe0-dwx-mask = <0xf>;
508 gpe0-dwx-shift-base = <4>;
509 gpe0-dw = <6 7 9>;
510 gpe0-sts = <0x20>;
511 gpe0-en = <0x30>;
512 };
Simon Glassd3b7ff12015-03-05 12:25:34 -0700513 pci@1f,0 {
514 compatible = "pci-generic";
Simon Glass33c215a2019-09-15 12:08:58 -0600515 /* reg 0 is at 0x10, using FDT_PCI_SPACE_IO */
516 reg = <0x0100f810 0 0 0 0>;
Simon Glass9b69ba42019-09-25 08:56:10 -0600517 sandbox,emul = <&swap_case_emul0_1f>;
518 };
519 };
520
521 pci-emul0 {
522 compatible = "sandbox,pci-emul-parent";
523 swap_case_emul0_0: emul0@0,0 {
524 compatible = "sandbox,swap-case";
525 };
526 swap_case_emul0_1: emul0@1,0 {
527 compatible = "sandbox,swap-case";
528 use-ea;
529 };
530 swap_case_emul0_1f: emul0@1f,0 {
531 compatible = "sandbox,swap-case";
Simon Glassd3b7ff12015-03-05 12:25:34 -0700532 };
Simon Glass3e17ffb2019-12-06 21:41:57 -0700533 p2sb_emul: emul@2,0 {
534 compatible = "sandbox,p2sb-emul";
535 };
Simon Glass3b65ee32019-12-06 21:41:54 -0700536 pmc_emul1e: emul@1e,0 {
537 compatible = "sandbox,pmc-emul";
538 };
Simon Glassd3b7ff12015-03-05 12:25:34 -0700539 };
540
Tom Rini42c64d12020-02-11 12:41:23 -0500541 pci1: pci@1 {
Bin Mengdee4d752018-08-03 01:14:41 -0700542 compatible = "sandbox,pci";
543 device_type = "pci";
Tom Rini42c64d12020-02-11 12:41:23 -0500544 bus-range = <0x00 0xff>;
Bin Mengdee4d752018-08-03 01:14:41 -0700545 #address-cells = <3>;
546 #size-cells = <2>;
547 ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000
548 0x01000000 0 0x40000000 0x40000000 0 0x2000>;
Bin Meng490d13a2018-08-03 01:14:47 -0700549 sandbox,dev-info = <0x08 0x00 0x1234 0x5678
Marek Vasutb59349a2018-10-10 21:27:08 +0200550 0x0c 0x00 0x1234 0x5678
551 0x10 0x00 0x1234 0x5678>;
552 pci@10,0 {
553 reg = <0x8000 0 0 0 0>;
554 };
Bin Mengdee4d752018-08-03 01:14:41 -0700555 };
556
Tom Rini42c64d12020-02-11 12:41:23 -0500557 pci2: pci@2 {
Bin Meng3ed214a2018-08-03 01:14:50 -0700558 compatible = "sandbox,pci";
559 device_type = "pci";
Tom Rini42c64d12020-02-11 12:41:23 -0500560 bus-range = <0x00 0xff>;
Bin Meng3ed214a2018-08-03 01:14:50 -0700561 #address-cells = <3>;
562 #size-cells = <2>;
563 ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
564 0x01000000 0 0x60000000 0x60000000 0 0x2000>;
565 sandbox,dev-info = <0x08 0x00 0x1234 0x5678>;
566 pci@1f,0 {
567 compatible = "pci-generic";
568 reg = <0xf800 0 0 0 0>;
Simon Glass9b69ba42019-09-25 08:56:10 -0600569 sandbox,emul = <&swap_case_emul2_1f>;
570 };
571 };
572
573 pci-emul2 {
574 compatible = "sandbox,pci-emul-parent";
575 swap_case_emul2_1f: emul2@1f,0 {
576 compatible = "sandbox,swap-case";
Bin Meng3ed214a2018-08-03 01:14:50 -0700577 };
578 };
579
Ramon Friedbb413332019-04-27 11:15:23 +0300580 pci_ep: pci_ep {
581 compatible = "sandbox,pci_ep";
582 };
583
Simon Glass98561572017-04-23 20:10:44 -0600584 probing {
585 compatible = "simple-bus";
586 test1 {
587 compatible = "denx,u-boot-probe-test";
588 };
589
590 test2 {
591 compatible = "denx,u-boot-probe-test";
592 };
593
594 test3 {
595 compatible = "denx,u-boot-probe-test";
596 };
597
598 test4 {
599 compatible = "denx,u-boot-probe-test";
Jean-Jacques Hiblot6c3af1f2018-11-29 10:57:37 +0100600 first-syscon = <&syscon0>;
601 second-sys-ctrl = <&another_system_controller>;
Patrick Delaunaya442e612019-03-07 09:57:13 +0100602 third-syscon = <&syscon2>;
Simon Glass98561572017-04-23 20:10:44 -0600603 };
604 };
605
Stephen Warren61f5ddc2016-07-13 13:45:31 -0600606 pwrdom: power-domain {
607 compatible = "sandbox,power-domain";
608 #power-domain-cells = <1>;
609 };
610
611 power-domain-test {
612 compatible = "sandbox,power-domain-test";
613 power-domains = <&pwrdom 2>;
614 };
615
Simon Glass5d9a88f2018-10-01 12:22:40 -0600616 pwm: pwm {
Simon Glass43b41562017-04-16 21:01:11 -0600617 compatible = "sandbox,pwm";
Simon Glass5d9a88f2018-10-01 12:22:40 -0600618 #pwm-cells = <2>;
Simon Glass43b41562017-04-16 21:01:11 -0600619 };
620
621 pwm2 {
622 compatible = "sandbox,pwm";
Simon Glass5d9a88f2018-10-01 12:22:40 -0600623 #pwm-cells = <2>;
Simon Glass43b41562017-04-16 21:01:11 -0600624 };
625
Simon Glass64ce0ca2015-07-06 12:54:31 -0600626 ram {
627 compatible = "sandbox,ram";
628 };
629
Simon Glass5010d982015-07-06 12:54:29 -0600630 reset@0 {
631 compatible = "sandbox,warm-reset";
632 };
633
634 reset@1 {
635 compatible = "sandbox,reset";
636 };
637
Stephen Warren4581b712016-06-17 09:43:59 -0600638 resetc: reset-ctl {
639 compatible = "sandbox,reset-ctl";
640 #reset-cells = <1>;
641 };
642
643 reset-ctl-test {
644 compatible = "sandbox,reset-ctl-test";
645 resets = <&resetc 100>, <&resetc 2>;
646 reset-names = "other", "test";
647 };
648
Sughosh Ganuff0dada2019-12-28 23:58:31 +0530649 rng {
650 compatible = "sandbox,sandbox-rng";
651 };
652
Nishanth Menon52159402015-09-17 15:42:41 -0500653 rproc_1: rproc@1 {
654 compatible = "sandbox,test-processor";
655 remoteproc-name = "remoteproc-test-dev1";
656 };
657
658 rproc_2: rproc@2 {
659 compatible = "sandbox,test-processor";
660 internal-memory-mapped;
661 remoteproc-name = "remoteproc-test-dev2";
662 };
663
Simon Glass5d9a88f2018-10-01 12:22:40 -0600664 panel {
665 compatible = "simple-panel";
666 backlight = <&backlight 0 100>;
667 };
668
Ramon Fried7fd7e2c2018-07-02 02:57:59 +0300669 smem@0 {
670 compatible = "sandbox,smem";
671 };
672
Simon Glassd4901892018-12-10 10:37:36 -0700673 sound {
674 compatible = "sandbox,sound";
675 cpu {
676 sound-dai = <&i2s 0>;
677 };
678
679 codec {
680 sound-dai = <&audio 0>;
681 };
682 };
683
Simon Glass0ae0cb72014-10-13 23:42:11 -0600684 spi@0 {
685 #address-cells = <1>;
686 #size-cells = <0>;
Simon Glass0503e822015-07-06 12:54:36 -0600687 reg = <0 1>;
Simon Glass0ae0cb72014-10-13 23:42:11 -0600688 compatible = "sandbox,spi";
689 cs-gpios = <0>, <&gpio_a 0>;
690 spi.bin@0 {
691 reg = <0>;
Neil Armstrongffd4c7c2019-02-10 10:16:20 +0000692 compatible = "spansion,m25p16", "jedec,spi-nor";
Simon Glass0ae0cb72014-10-13 23:42:11 -0600693 spi-max-frequency = <40000000>;
694 sandbox,filename = "spi.bin";
695 };
696 };
697
Jean-Jacques Hiblot6c3af1f2018-11-29 10:57:37 +0100698 syscon0: syscon@0 {
Simon Glass04035fd2015-07-06 12:54:35 -0600699 compatible = "sandbox,syscon0";
Mario Six82744c22018-10-04 09:00:40 +0200700 reg = <0x10 16>;
Simon Glass04035fd2015-07-06 12:54:35 -0600701 };
702
Jean-Jacques Hiblot6c3af1f2018-11-29 10:57:37 +0100703 another_system_controller: syscon@1 {
Simon Glass04035fd2015-07-06 12:54:35 -0600704 compatible = "sandbox,syscon1";
Simon Glass0503e822015-07-06 12:54:36 -0600705 reg = <0x20 5
706 0x28 6
707 0x30 7
708 0x38 8>;
Simon Glass04035fd2015-07-06 12:54:35 -0600709 };
710
Patrick Delaunaya442e612019-03-07 09:57:13 +0100711 syscon2: syscon@2 {
Masahiro Yamada99552c32018-04-23 13:26:53 +0900712 compatible = "simple-mfd", "syscon";
713 reg = <0x40 5
714 0x48 6
715 0x50 7
716 0x58 8>;
717 };
718
Thomas Choue7cc8d12015-12-11 16:27:34 +0800719 timer {
720 compatible = "sandbox,timer";
721 clock-frequency = <1000000>;
722 };
723
Miquel Raynalb91ad162018-05-15 11:57:27 +0200724 tpm2 {
725 compatible = "sandbox,tpm2";
726 };
727
Simon Glass171e9912015-05-22 15:42:15 -0600728 uart0: serial {
729 compatible = "sandbox,serial";
730 u-boot,dm-pre-reloc;
Joe Hershbergerbfacad72015-03-22 17:09:15 -0500731 };
732
Simon Glasse00cb222015-03-25 12:23:05 -0600733 usb_0: usb@0 {
734 compatible = "sandbox,usb";
735 status = "disabled";
736 hub {
737 compatible = "sandbox,usb-hub";
738 #address-cells = <1>;
739 #size-cells = <0>;
740 flash-stick {
741 reg = <0>;
742 compatible = "sandbox,usb-flash";
743 };
744 };
745 };
746
747 usb_1: usb@1 {
748 compatible = "sandbox,usb";
749 hub {
750 compatible = "usb-hub";
751 usb,device-class = <9>;
752 hub-emul {
753 compatible = "sandbox,usb-hub";
754 #address-cells = <1>;
755 #size-cells = <0>;
Simon Glass431cbd62015-11-08 23:48:01 -0700756 flash-stick@0 {
Simon Glasse00cb222015-03-25 12:23:05 -0600757 reg = <0>;
758 compatible = "sandbox,usb-flash";
759 sandbox,filepath = "testflash.bin";
760 };
761
Simon Glass431cbd62015-11-08 23:48:01 -0700762 flash-stick@1 {
763 reg = <1>;
764 compatible = "sandbox,usb-flash";
765 sandbox,filepath = "testflash1.bin";
766 };
767
768 flash-stick@2 {
769 reg = <2>;
770 compatible = "sandbox,usb-flash";
771 sandbox,filepath = "testflash2.bin";
772 };
773
Simon Glassbff1a712015-11-08 23:48:08 -0700774 keyb@3 {
775 reg = <3>;
776 compatible = "sandbox,usb-keyb";
777 };
778
Simon Glasse00cb222015-03-25 12:23:05 -0600779 };
780 };
781 };
782
783 usb_2: usb@2 {
784 compatible = "sandbox,usb";
785 status = "disabled";
786 };
787
Mateusz Kulikowskid33776e2016-03-31 23:12:28 +0200788 spmi: spmi@0 {
789 compatible = "sandbox,spmi";
790 #address-cells = <0x1>;
791 #size-cells = <0x1>;
Simon Glassa605b0f2019-09-25 08:55:59 -0600792 ranges;
Mateusz Kulikowskid33776e2016-03-31 23:12:28 +0200793 pm8916@0 {
794 compatible = "qcom,spmi-pmic";
795 reg = <0x0 0x1>;
796 #address-cells = <0x1>;
797 #size-cells = <0x1>;
Simon Glassa605b0f2019-09-25 08:55:59 -0600798 ranges;
Mateusz Kulikowskid33776e2016-03-31 23:12:28 +0200799
800 spmi_gpios: gpios@c000 {
801 compatible = "qcom,pm8916-gpio";
802 reg = <0xc000 0x400>;
803 gpio-controller;
804 gpio-count = <4>;
805 #gpio-cells = <2>;
806 gpio-bank-name="spmi";
807 };
808 };
809 };
maxims@google.com0753bc22017-04-17 12:00:21 -0700810
811 wdt0: wdt@0 {
812 compatible = "sandbox,wdt";
813 };
Rob Clarkf2006802018-01-10 11:33:30 +0100814
Mario Six957983e2018-08-09 14:51:19 +0200815 axi: axi@0 {
816 compatible = "sandbox,axi";
817 #address-cells = <0x1>;
818 #size-cells = <0x1>;
819 store@0 {
820 compatible = "sandbox,sandbox_store";
821 reg = <0x0 0x400>;
822 };
823 };
824
Rob Clarkf2006802018-01-10 11:33:30 +0100825 chosen {
Simon Glass7e878162018-02-03 10:36:58 -0700826 #address-cells = <1>;
827 #size-cells = <1>;
Simon Glass14ca9f72020-01-27 08:49:43 -0700828 setting = "sunrise ohoka";
829 other-node = "/some-bus/c-test@5";
Simon Glassbd933bf2020-01-27 08:49:46 -0700830 int-values = <0x1937 72993>;
Rob Clarkf2006802018-01-10 11:33:30 +0100831 chosen-test {
832 compatible = "denx,u-boot-fdt-test";
833 reg = <9 1>;
834 };
835 };
Mario Sixe8d52912018-03-12 14:53:33 +0100836
837 translation-test@8000 {
838 compatible = "simple-bus";
839 reg = <0x8000 0x4000>;
840
841 #address-cells = <0x2>;
842 #size-cells = <0x1>;
843
844 ranges = <0 0x0 0x8000 0x1000
845 1 0x100 0x9000 0x1000
846 2 0x200 0xA000 0x1000
847 3 0x300 0xB000 0x1000
848 >;
849
Fabien Dessenne641067f2019-05-31 15:11:30 +0200850 dma-ranges = <0 0x000 0x10000000 0x1000
851 1 0x100 0x20000000 0x1000
852 >;
853
Mario Sixe8d52912018-03-12 14:53:33 +0100854 dev@0,0 {
855 compatible = "denx,u-boot-fdt-dummy";
856 reg = <0 0x0 0x1000>;
Álvaro Fernández Rojas79598822018-12-03 19:37:09 +0100857 reg-names = "sandbox-dummy-0";
Mario Sixe8d52912018-03-12 14:53:33 +0100858 };
859
860 dev@1,100 {
861 compatible = "denx,u-boot-fdt-dummy";
862 reg = <1 0x100 0x1000>;
863
864 };
865
866 dev@2,200 {
867 compatible = "denx,u-boot-fdt-dummy";
868 reg = <2 0x200 0x1000>;
869 };
870
871
872 noxlatebus@3,300 {
873 compatible = "simple-bus";
874 reg = <3 0x300 0x1000>;
875
876 #address-cells = <0x1>;
877 #size-cells = <0x0>;
878
879 dev@42 {
880 compatible = "denx,u-boot-fdt-dummy";
881 reg = <0x42>;
882 };
883 };
884 };
Mario Six4eea5312018-09-27 09:19:31 +0200885
886 osd {
887 compatible = "sandbox,sandbox_osd";
888 };
Tom Rinid24c1d02018-09-30 18:16:51 -0400889
Mario Sixe6fd0182018-07-31 11:44:13 +0200890 board {
891 compatible = "sandbox,board_sandbox";
892 };
Jens Wiklanderfa830ae2018-09-25 16:40:16 +0200893
894 sandbox_tee {
895 compatible = "sandbox,tee";
896 };
Bin Meng4f89d492018-10-15 02:21:26 -0700897
898 sandbox_virtio1 {
899 compatible = "sandbox,virtio1";
900 };
901
902 sandbox_virtio2 {
903 compatible = "sandbox,virtio2";
904 };
Patrice Chotardf41a8242018-10-24 14:10:23 +0200905
906 pinctrl {
907 compatible = "sandbox,pinctrl";
Patrick Delaunayd15c05b2020-01-13 11:35:12 +0100908
909 pinctrl-names = "default";
910 pinctrl-0 = <&gpios>;
911
912 gpios: gpios {
913 gpio0 {
914 pins = "GPIO0";
915 bias-pull-up;
916 input-disable;
917 };
918 gpio1 {
919 pins = "GPIO1";
920 output-high;
921 drive-open-drain;
922 };
923 gpio2 {
924 pins = "GPIO2";
925 bias-pull-down;
926 input-enable;
927 };
928 gpio3 {
929 pins = "GPIO3";
930 bias-disable;
931 };
932 };
Patrice Chotardf41a8242018-10-24 14:10:23 +0200933 };
Benjamin Gaignard7f84fc62018-11-27 13:49:50 +0100934
935 hwspinlock@0 {
936 compatible = "sandbox,hwspinlock";
937 };
Grygorii Strashkob3309912018-11-28 19:17:51 +0100938
939 dma: dma {
940 compatible = "sandbox,dma";
941 #dma-cells = <1>;
942
943 dmas = <&dma 0>, <&dma 1>, <&dma 2>;
944 dma-names = "m2m", "tx0", "rx0";
945 };
Alex Margineanec9594a2019-06-03 19:12:28 +0300946
Alex Margineanc3d9f3f2019-07-12 10:13:53 +0300947 /*
948 * keep mdio-mux ahead of mdio so that the mux is removed first at the
949 * end of the test. If parent mdio is removed first, clean-up of the
950 * mux will trigger a 2nd probe of parent-mdio, leaving parent-mdio
951 * active at the end of the test. That it turn doesn't allow the mdio
952 * class to be destroyed, triggering an error.
953 */
954 mdio-mux-test {
955 compatible = "sandbox,mdio-mux";
956 #address-cells = <1>;
957 #size-cells = <0>;
958 mdio-parent-bus = <&mdio>;
959
960 mdio-ch-test@0 {
961 reg = <0>;
962 };
963 mdio-ch-test@1 {
964 reg = <1>;
965 };
966 };
967
968 mdio: mdio-test {
Alex Margineanec9594a2019-06-03 19:12:28 +0300969 compatible = "sandbox,mdio";
970 };
Simon Glass2e7d35d2014-02-26 15:59:21 -0700971};
Przemyslaw Marczak9038cd52015-05-13 13:38:35 +0200972
973#include "sandbox_pmic.dtsi"