test.dts 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657
  1. /dts-v1/;
  2. / {
  3. model = "sandbox";
  4. compatible = "sandbox";
  5. #address-cells = <1>;
  6. #size-cells = <1>;
  7. aliases {
  8. console = &uart0;
  9. eth0 = "/eth@10002000";
  10. eth3 = &eth_3;
  11. eth5 = &eth_5;
  12. i2c0 = "/i2c@0";
  13. mmc0 = "/mmc0";
  14. mmc1 = "/mmc1";
  15. pci0 = &pci0;
  16. pci1 = &pci1;
  17. pci2 = &pci2;
  18. remoteproc1 = &rproc_1;
  19. remoteproc2 = &rproc_2;
  20. rtc0 = &rtc_0;
  21. rtc1 = &rtc_1;
  22. spi0 = "/spi@0";
  23. testfdt6 = "/e-test";
  24. testbus3 = "/some-bus";
  25. testfdt0 = "/some-bus/c-test@0";
  26. testfdt1 = "/some-bus/c-test@1";
  27. testfdt3 = "/b-test";
  28. testfdt5 = "/some-bus/c-test@5";
  29. testfdt8 = "/a-test";
  30. fdt-dummy0 = "/translation-test@8000/dev@0,0";
  31. fdt-dummy1 = "/translation-test@8000/dev@1,100";
  32. fdt-dummy2 = "/translation-test@8000/dev@2,200";
  33. fdt-dummy3 = "/translation-test@8000/noxlatebus@3,300/dev@42";
  34. usb0 = &usb_0;
  35. usb1 = &usb_1;
  36. usb2 = &usb_2;
  37. axi0 = &axi;
  38. };
  39. a-test {
  40. reg = <0 1>;
  41. compatible = "denx,u-boot-fdt-test";
  42. ping-expect = <0>;
  43. ping-add = <0>;
  44. u-boot,dm-pre-reloc;
  45. test-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 5 0 3 2 1>,
  46. <0>, <&gpio_a 12>;
  47. test2-gpios = <&gpio_a 1>, <&gpio_a 4>, <&gpio_b 6 1 3 2 1>,
  48. <&gpio_b 7 2 3 2 1>, <&gpio_b 8 4 3 2 1>,
  49. <&gpio_b 9 0xc 3 2 1>;
  50. };
  51. junk {
  52. reg = <1 1>;
  53. compatible = "not,compatible";
  54. };
  55. no-compatible {
  56. reg = <2 1>;
  57. };
  58. bind-test {
  59. bind-test-child1 {
  60. compatible = "sandbox,phy";
  61. #phy-cells = <1>;
  62. };
  63. bind-test-child2 {
  64. compatible = "simple-bus";
  65. };
  66. };
  67. b-test {
  68. reg = <3 1>;
  69. compatible = "denx,u-boot-fdt-test";
  70. ping-expect = <3>;
  71. ping-add = <3>;
  72. };
  73. phy_provider0: gen_phy@0 {
  74. compatible = "sandbox,phy";
  75. #phy-cells = <1>;
  76. };
  77. phy_provider1: gen_phy@1 {
  78. compatible = "sandbox,phy";
  79. #phy-cells = <0>;
  80. broken;
  81. };
  82. gen_phy_user: gen_phy_user {
  83. compatible = "simple-bus";
  84. phys = <&phy_provider0 0>, <&phy_provider0 1>, <&phy_provider1>;
  85. phy-names = "phy1", "phy2", "phy3";
  86. };
  87. some-bus {
  88. #address-cells = <1>;
  89. #size-cells = <0>;
  90. compatible = "denx,u-boot-test-bus";
  91. reg = <3 1>;
  92. ping-expect = <4>;
  93. ping-add = <4>;
  94. c-test@5 {
  95. compatible = "denx,u-boot-fdt-test";
  96. reg = <5>;
  97. ping-expect = <5>;
  98. ping-add = <5>;
  99. };
  100. c-test@0 {
  101. compatible = "denx,u-boot-fdt-test";
  102. reg = <0>;
  103. ping-expect = <6>;
  104. ping-add = <6>;
  105. };
  106. c-test@1 {
  107. compatible = "denx,u-boot-fdt-test";
  108. reg = <1>;
  109. ping-expect = <7>;
  110. ping-add = <7>;
  111. };
  112. };
  113. d-test {
  114. reg = <3 1>;
  115. ping-expect = <6>;
  116. ping-add = <6>;
  117. compatible = "google,another-fdt-test";
  118. };
  119. e-test {
  120. reg = <3 1>;
  121. ping-expect = <6>;
  122. ping-add = <6>;
  123. compatible = "google,another-fdt-test";
  124. };
  125. f-test {
  126. compatible = "denx,u-boot-fdt-test";
  127. };
  128. g-test {
  129. compatible = "denx,u-boot-fdt-test";
  130. };
  131. clocks {
  132. clk_fixed: clk-fixed {
  133. compatible = "fixed-clock";
  134. #clock-cells = <0>;
  135. clock-frequency = <1234>;
  136. };
  137. };
  138. clk_sandbox: clk-sbox {
  139. compatible = "sandbox,clk";
  140. #clock-cells = <1>;
  141. };
  142. clk-test {
  143. compatible = "sandbox,clk-test";
  144. clocks = <&clk_fixed>,
  145. <&clk_sandbox 1>,
  146. <&clk_sandbox 0>;
  147. clock-names = "fixed", "i2c", "spi";
  148. };
  149. eth@10002000 {
  150. compatible = "sandbox,eth";
  151. reg = <0x10002000 0x1000>;
  152. fake-host-hwaddr = [00 00 66 44 22 00];
  153. };
  154. eth_5: eth@10003000 {
  155. compatible = "sandbox,eth";
  156. reg = <0x10003000 0x1000>;
  157. fake-host-hwaddr = [00 00 66 44 22 11];
  158. };
  159. eth_3: sbe5 {
  160. compatible = "sandbox,eth";
  161. reg = <0x10005000 0x1000>;
  162. fake-host-hwaddr = [00 00 66 44 22 33];
  163. };
  164. eth@10004000 {
  165. compatible = "sandbox,eth";
  166. reg = <0x10004000 0x1000>;
  167. fake-host-hwaddr = [00 00 66 44 22 22];
  168. };
  169. firmware {
  170. sandbox_firmware: sandbox-firmware {
  171. compatible = "sandbox,firmware";
  172. };
  173. };
  174. gpio_a: base-gpios {
  175. compatible = "sandbox,gpio";
  176. gpio-controller;
  177. #gpio-cells = <1>;
  178. gpio-bank-name = "a";
  179. sandbox,gpio-count = <20>;
  180. };
  181. gpio_b: extra-gpios {
  182. compatible = "sandbox,gpio";
  183. gpio-controller;
  184. #gpio-cells = <5>;
  185. gpio-bank-name = "b";
  186. sandbox,gpio-count = <10>;
  187. };
  188. i2c@0 {
  189. #address-cells = <1>;
  190. #size-cells = <0>;
  191. reg = <0 1>;
  192. compatible = "sandbox,i2c";
  193. clock-frequency = <100000>;
  194. eeprom@2c {
  195. reg = <0x2c>;
  196. compatible = "i2c-eeprom";
  197. emul {
  198. compatible = "sandbox,i2c-eeprom";
  199. sandbox,filename = "i2c.bin";
  200. sandbox,size = <256>;
  201. };
  202. };
  203. rtc_0: rtc@43 {
  204. reg = <0x43>;
  205. compatible = "sandbox-rtc";
  206. emul {
  207. compatible = "sandbox,i2c-rtc";
  208. };
  209. };
  210. rtc_1: rtc@61 {
  211. reg = <0x61>;
  212. compatible = "sandbox-rtc";
  213. emul {
  214. compatible = "sandbox,i2c-rtc";
  215. };
  216. };
  217. sandbox_pmic: sandbox_pmic {
  218. reg = <0x40>;
  219. };
  220. mc34708: pmic@41 {
  221. reg = <0x41>;
  222. };
  223. };
  224. adc@0 {
  225. compatible = "sandbox,adc";
  226. vdd-supply = <&buck2>;
  227. vss-microvolts = <0>;
  228. };
  229. lcd {
  230. u-boot,dm-pre-reloc;
  231. compatible = "sandbox,lcd-sdl";
  232. xres = <1366>;
  233. yres = <768>;
  234. };
  235. leds {
  236. compatible = "gpio-leds";
  237. iracibble {
  238. gpios = <&gpio_a 1 0>;
  239. label = "sandbox:red";
  240. };
  241. martinet {
  242. gpios = <&gpio_a 2 0>;
  243. label = "sandbox:green";
  244. };
  245. default_on {
  246. gpios = <&gpio_a 5 0>;
  247. label = "sandbox:default_on";
  248. default-state = "on";
  249. };
  250. default_off {
  251. gpios = <&gpio_a 6 0>;
  252. label = "sandbox:default_off";
  253. default-state = "off";
  254. };
  255. };
  256. mbox: mbox {
  257. compatible = "sandbox,mbox";
  258. #mbox-cells = <1>;
  259. };
  260. mbox-test {
  261. compatible = "sandbox,mbox-test";
  262. mboxes = <&mbox 100>, <&mbox 1>;
  263. mbox-names = "other", "test";
  264. };
  265. cpu-test1 {
  266. compatible = "sandbox,cpu_sandbox";
  267. };
  268. cpu-test2 {
  269. compatible = "sandbox,cpu_sandbox";
  270. };
  271. cpu-test3 {
  272. compatible = "sandbox,cpu_sandbox";
  273. };
  274. misc-test {
  275. compatible = "sandbox,misc_sandbox";
  276. };
  277. mmc2 {
  278. compatible = "sandbox,mmc";
  279. };
  280. mmc1 {
  281. compatible = "sandbox,mmc";
  282. };
  283. mmc0 {
  284. compatible = "sandbox,mmc";
  285. };
  286. pci0: pci-controller0 {
  287. compatible = "sandbox,pci";
  288. device_type = "pci";
  289. #address-cells = <3>;
  290. #size-cells = <2>;
  291. ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000
  292. 0x01000000 0 0x20000000 0x20000000 0 0x2000>;
  293. pci@0,0 {
  294. compatible = "pci-generic";
  295. reg = <0x0000 0 0 0 0>;
  296. emul@0,0 {
  297. compatible = "sandbox,swap-case";
  298. };
  299. };
  300. pci@1f,0 {
  301. compatible = "pci-generic";
  302. reg = <0xf800 0 0 0 0>;
  303. emul@1f,0 {
  304. compatible = "sandbox,swap-case";
  305. };
  306. };
  307. };
  308. pci1: pci-controller1 {
  309. compatible = "sandbox,pci";
  310. device_type = "pci";
  311. #address-cells = <3>;
  312. #size-cells = <2>;
  313. ranges = <0x02000000 0 0x30000000 0x30000000 0 0x2000
  314. 0x01000000 0 0x40000000 0x40000000 0 0x2000>;
  315. sandbox,dev-info = <0x08 0x00 0x1234 0x5678
  316. 0x0c 0x00 0x1234 0x5678>;
  317. };
  318. pci2: pci-controller2 {
  319. compatible = "sandbox,pci";
  320. device_type = "pci";
  321. #address-cells = <3>;
  322. #size-cells = <2>;
  323. ranges = <0x02000000 0 0x50000000 0x50000000 0 0x2000
  324. 0x01000000 0 0x60000000 0x60000000 0 0x2000>;
  325. sandbox,dev-info = <0x08 0x00 0x1234 0x5678>;
  326. pci@1f,0 {
  327. compatible = "pci-generic";
  328. reg = <0xf800 0 0 0 0>;
  329. emul@1f,0 {
  330. compatible = "sandbox,swap-case";
  331. };
  332. };
  333. };
  334. probing {
  335. compatible = "simple-bus";
  336. test1 {
  337. compatible = "denx,u-boot-probe-test";
  338. };
  339. test2 {
  340. compatible = "denx,u-boot-probe-test";
  341. };
  342. test3 {
  343. compatible = "denx,u-boot-probe-test";
  344. };
  345. test4 {
  346. compatible = "denx,u-boot-probe-test";
  347. };
  348. };
  349. pwrdom: power-domain {
  350. compatible = "sandbox,power-domain";
  351. #power-domain-cells = <1>;
  352. };
  353. power-domain-test {
  354. compatible = "sandbox,power-domain-test";
  355. power-domains = <&pwrdom 2>;
  356. };
  357. pwm {
  358. compatible = "sandbox,pwm";
  359. };
  360. pwm2 {
  361. compatible = "sandbox,pwm";
  362. };
  363. ram {
  364. compatible = "sandbox,ram";
  365. };
  366. reset@0 {
  367. compatible = "sandbox,warm-reset";
  368. };
  369. reset@1 {
  370. compatible = "sandbox,reset";
  371. };
  372. resetc: reset-ctl {
  373. compatible = "sandbox,reset-ctl";
  374. #reset-cells = <1>;
  375. };
  376. reset-ctl-test {
  377. compatible = "sandbox,reset-ctl-test";
  378. resets = <&resetc 100>, <&resetc 2>;
  379. reset-names = "other", "test";
  380. };
  381. rproc_1: rproc@1 {
  382. compatible = "sandbox,test-processor";
  383. remoteproc-name = "remoteproc-test-dev1";
  384. };
  385. rproc_2: rproc@2 {
  386. compatible = "sandbox,test-processor";
  387. internal-memory-mapped;
  388. remoteproc-name = "remoteproc-test-dev2";
  389. };
  390. smem@0 {
  391. compatible = "sandbox,smem";
  392. };
  393. spi@0 {
  394. #address-cells = <1>;
  395. #size-cells = <0>;
  396. reg = <0 1>;
  397. compatible = "sandbox,spi";
  398. cs-gpios = <0>, <&gpio_a 0>;
  399. spi.bin@0 {
  400. reg = <0>;
  401. compatible = "spansion,m25p16", "spi-flash";
  402. spi-max-frequency = <40000000>;
  403. sandbox,filename = "spi.bin";
  404. };
  405. };
  406. syscon@0 {
  407. compatible = "sandbox,syscon0";
  408. reg = <0x10 4>;
  409. };
  410. syscon@1 {
  411. compatible = "sandbox,syscon1";
  412. reg = <0x20 5
  413. 0x28 6
  414. 0x30 7
  415. 0x38 8>;
  416. };
  417. syscon@2 {
  418. compatible = "simple-mfd", "syscon";
  419. reg = <0x40 5
  420. 0x48 6
  421. 0x50 7
  422. 0x58 8>;
  423. };
  424. timer {
  425. compatible = "sandbox,timer";
  426. clock-frequency = <1000000>;
  427. };
  428. tpm2 {
  429. compatible = "sandbox,tpm2";
  430. };
  431. uart0: serial {
  432. compatible = "sandbox,serial";
  433. u-boot,dm-pre-reloc;
  434. };
  435. usb_0: usb@0 {
  436. compatible = "sandbox,usb";
  437. status = "disabled";
  438. hub {
  439. compatible = "sandbox,usb-hub";
  440. #address-cells = <1>;
  441. #size-cells = <0>;
  442. flash-stick {
  443. reg = <0>;
  444. compatible = "sandbox,usb-flash";
  445. };
  446. };
  447. };
  448. usb_1: usb@1 {
  449. compatible = "sandbox,usb";
  450. hub {
  451. compatible = "usb-hub";
  452. usb,device-class = <9>;
  453. hub-emul {
  454. compatible = "sandbox,usb-hub";
  455. #address-cells = <1>;
  456. #size-cells = <0>;
  457. flash-stick@0 {
  458. reg = <0>;
  459. compatible = "sandbox,usb-flash";
  460. sandbox,filepath = "testflash.bin";
  461. };
  462. flash-stick@1 {
  463. reg = <1>;
  464. compatible = "sandbox,usb-flash";
  465. sandbox,filepath = "testflash1.bin";
  466. };
  467. flash-stick@2 {
  468. reg = <2>;
  469. compatible = "sandbox,usb-flash";
  470. sandbox,filepath = "testflash2.bin";
  471. };
  472. keyb@3 {
  473. reg = <3>;
  474. compatible = "sandbox,usb-keyb";
  475. };
  476. };
  477. };
  478. };
  479. usb_2: usb@2 {
  480. compatible = "sandbox,usb";
  481. status = "disabled";
  482. };
  483. spmi: spmi@0 {
  484. compatible = "sandbox,spmi";
  485. #address-cells = <0x1>;
  486. #size-cells = <0x1>;
  487. pm8916@0 {
  488. compatible = "qcom,spmi-pmic";
  489. reg = <0x0 0x1>;
  490. #address-cells = <0x1>;
  491. #size-cells = <0x1>;
  492. spmi_gpios: gpios@c000 {
  493. compatible = "qcom,pm8916-gpio";
  494. reg = <0xc000 0x400>;
  495. gpio-controller;
  496. gpio-count = <4>;
  497. #gpio-cells = <2>;
  498. gpio-bank-name="spmi";
  499. };
  500. };
  501. };
  502. wdt0: wdt@0 {
  503. compatible = "sandbox,wdt";
  504. };
  505. axi: axi@0 {
  506. compatible = "sandbox,axi";
  507. #address-cells = <0x1>;
  508. #size-cells = <0x1>;
  509. store@0 {
  510. compatible = "sandbox,sandbox_store";
  511. reg = <0x0 0x400>;
  512. };
  513. };
  514. chosen {
  515. #address-cells = <1>;
  516. #size-cells = <1>;
  517. chosen-test {
  518. compatible = "denx,u-boot-fdt-test";
  519. reg = <9 1>;
  520. };
  521. };
  522. translation-test@8000 {
  523. compatible = "simple-bus";
  524. reg = <0x8000 0x4000>;
  525. #address-cells = <0x2>;
  526. #size-cells = <0x1>;
  527. ranges = <0 0x0 0x8000 0x1000
  528. 1 0x100 0x9000 0x1000
  529. 2 0x200 0xA000 0x1000
  530. 3 0x300 0xB000 0x1000
  531. >;
  532. dev@0,0 {
  533. compatible = "denx,u-boot-fdt-dummy";
  534. reg = <0 0x0 0x1000>;
  535. };
  536. dev@1,100 {
  537. compatible = "denx,u-boot-fdt-dummy";
  538. reg = <1 0x100 0x1000>;
  539. };
  540. dev@2,200 {
  541. compatible = "denx,u-boot-fdt-dummy";
  542. reg = <2 0x200 0x1000>;
  543. };
  544. noxlatebus@3,300 {
  545. compatible = "simple-bus";
  546. reg = <3 0x300 0x1000>;
  547. #address-cells = <0x1>;
  548. #size-cells = <0x0>;
  549. dev@42 {
  550. compatible = "denx,u-boot-fdt-dummy";
  551. reg = <0x42>;
  552. };
  553. };
  554. };
  555. board {
  556. compatible = "sandbox,board_sandbox";
  557. };
  558. };
  559. #include "sandbox_pmic.dtsi"