test.dts 9.8 KB

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