Advertisement
uaa

sun4i-a10-pcduino.dtb disassembly

uaa
Feb 5th, 2019
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.20 KB | None | 0 0
  1. /dts-v1/;
  2.  
  3. / {
  4. #address-cells = <0x1>;
  5. #size-cells = <0x1>;
  6. interrupt-parent = <0x1>;
  7. model = "LinkSprite pcDuino";
  8. compatible = "linksprite,a10-pcduino", "allwinner,sun4i-a10";
  9.  
  10. aliases {
  11. ethernet0 = "/soc/ethernet@1c0b000";
  12. serial0 = "/soc/serial@1c28000";
  13. };
  14.  
  15. chosen {
  16. #address-cells = <0x1>;
  17. #size-cells = <0x1>;
  18. ranges;
  19. stdout-path = "serial0:115200n8";
  20.  
  21. framebuffer-lcd0-hdmi {
  22. compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
  23. allwinner,pipeline = "de_be0-lcd0-hdmi";
  24. clocks = <0x2 0x38 0x2 0x3c 0x2 0x3e 0x2 0x90 0x2 0x9b 0x2 0x8c>;
  25. status = "disabled";
  26. };
  27.  
  28. framebuffer-fe0-lcd0-hdmi {
  29. compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
  30. allwinner,pipeline = "de_fe0-de_be0-lcd0-hdmi";
  31. clocks = <0x2 0x38 0x2 0x3c 0x2 0x3e 0x2 0x40 0x2 0x90 0x2 0x92 0x2 0x9b 0x2 0xa4 0x2 0x8b 0x2 0x8c>;
  32. status = "disabled";
  33. };
  34.  
  35. framebuffer-fe0-lcd0 {
  36. compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
  37. allwinner,pipeline = "de_fe0-de_be0-lcd0";
  38. clocks = <0x2 0x38 0x2 0x3e 0x2 0x40 0x2 0x90 0x2 0x92 0x2 0x95 0x2 0x8b 0x2 0x8c>;
  39. status = "disabled";
  40. };
  41.  
  42. framebuffer-fe0-lcd0-tve0 {
  43. compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
  44. allwinner,pipeline = "de_fe0-de_be0-lcd0-tve0";
  45. clocks = <0x2 0x36 0x2 0x38 0x2 0x3e 0x2 0x40 0x2 0x90 0x2 0x92 0x2 0x9b 0x2 0x87 0x2 0x8b 0x2 0x8c>;
  46. status = "disabled";
  47. };
  48. };
  49.  
  50. cpus {
  51. #address-cells = <0x1>;
  52. #size-cells = <0x0>;
  53.  
  54. cpu@0 {
  55. device_type = "cpu";
  56. compatible = "arm,cortex-a8";
  57. reg = <0x0>;
  58. clocks = <0x2 0x14>;
  59. clock-latency = <0x3b9b0>;
  60. operating-points = <0xf6180 0x155cc0 0xdea80 0x149970 0xd2f00 0x13d620 0x98580 0x1312d0>;
  61. #cooling-cells = <0x2>;
  62. cpu-supply = <0x3>;
  63. linux,phandle = <0x6>;
  64. phandle = <0x6>;
  65. };
  66. };
  67.  
  68. thermal-zones {
  69.  
  70. cpu-thermal {
  71. polling-delay-passive = <0xfa>;
  72. polling-delay = <0x3e8>;
  73. thermal-sensors = <0x4>;
  74.  
  75. cooling-maps {
  76.  
  77. map0 {
  78. trip = <0x5>;
  79. cooling-device = <0x6 0xffffffff 0xffffffff>;
  80. };
  81. };
  82.  
  83. trips {
  84.  
  85. cpu-alert0 {
  86. temperature = <0xcf850>;
  87. hysteresis = <0x7d0>;
  88. type = "passive";
  89. linux,phandle = <0x5>;
  90. phandle = <0x5>;
  91. };
  92.  
  93. cpu-crit {
  94. temperature = <0x186a0>;
  95. hysteresis = <0x7d0>;
  96. type = "critical";
  97. };
  98. };
  99. };
  100. };
  101.  
  102. clocks {
  103. #address-cells = <0x1>;
  104. #size-cells = <0x1>;
  105. ranges;
  106.  
  107. clk-24M {
  108. #clock-cells = <0x0>;
  109. compatible = "fixed-clock";
  110. clock-frequency = <0x16e3600>;
  111. clock-output-names = "osc24M";
  112. linux,phandle = <0x1e>;
  113. phandle = <0x1e>;
  114. };
  115.  
  116. clk-32k {
  117. #clock-cells = <0x0>;
  118. compatible = "fixed-clock";
  119. clock-frequency = <0x8000>;
  120. clock-output-names = "osc32k";
  121. linux,phandle = <0x1f>;
  122. phandle = <0x1f>;
  123. };
  124. };
  125.  
  126. display-engine {
  127. compatible = "allwinner,sun4i-a10-display-engine";
  128. allwinner,pipelines = <0x7 0x8>;
  129. status = "disabled";
  130. };
  131.  
  132. soc {
  133. compatible = "simple-bus";
  134. #address-cells = <0x1>;
  135. #size-cells = <0x1>;
  136. ranges;
  137.  
  138. sram-controller@1c00000 {
  139. compatible = "allwinner,sun4i-a10-sram-controller";
  140. reg = <0x1c00000 0x30>;
  141. #address-cells = <0x1>;
  142. #size-cells = <0x1>;
  143. ranges;
  144.  
  145. sram@0 {
  146. compatible = "mmio-sram";
  147. reg = <0x0 0xc000>;
  148. #address-cells = <0x1>;
  149. #size-cells = <0x1>;
  150. ranges = <0x0 0x0 0xc000>;
  151.  
  152. sram-section@8000 {
  153. compatible = "allwinner,sun4i-a10-sram-a3-a4";
  154. reg = <0x8000 0x4000>;
  155. status = "okay";
  156. linux,phandle = <0xc>;
  157. phandle = <0xc>;
  158. };
  159. };
  160.  
  161. sram@10000 {
  162. compatible = "mmio-sram";
  163. reg = <0x10000 0x1000>;
  164. #address-cells = <0x1>;
  165. #size-cells = <0x1>;
  166. ranges = <0x0 0x10000 0x1000>;
  167.  
  168. sram-section@0 {
  169. compatible = "allwinner,sun4i-a10-sram-d";
  170. reg = <0x0 0x1000>;
  171. status = "okay";
  172. linux,phandle = <0x19>;
  173. phandle = <0x19>;
  174. };
  175. };
  176. };
  177.  
  178. dma-controller@1c02000 {
  179. compatible = "allwinner,sun4i-a10-dma";
  180. reg = <0x1c02000 0x1000>;
  181. interrupts = <0x1b>;
  182. clocks = <0x2 0x20>;
  183. #dma-cells = <0x2>;
  184. linux,phandle = <0x9>;
  185. phandle = <0x9>;
  186. };
  187.  
  188. nand@1c03000 {
  189. compatible = "allwinner,sun4i-a10-nand";
  190. reg = <0x1c03000 0x1000>;
  191. interrupts = <0x25>;
  192. clocks = <0x2 0x27 0x2 0x60>;
  193. clock-names = "ahb", "mod";
  194. dmas = <0x9 0x1 0x3>;
  195. dma-names = "rxtx";
  196. status = "disabled";
  197. #address-cells = <0x1>;
  198. #size-cells = <0x0>;
  199. };
  200.  
  201. spi@1c05000 {
  202. compatible = "allwinner,sun4i-a10-spi";
  203. reg = <0x1c05000 0x1000>;
  204. interrupts = <0xa>;
  205. clocks = <0x2 0x2c 0x2 0x70>;
  206. clock-names = "ahb", "mod";
  207. dmas = <0x9 0x1 0x1b 0x9 0x1 0x1a>;
  208. dma-names = "rx", "tx";
  209. status = "disabled";
  210. #address-cells = <0x1>;
  211. #size-cells = <0x0>;
  212. };
  213.  
  214. spi@1c06000 {
  215. compatible = "allwinner,sun4i-a10-spi";
  216. reg = <0x1c06000 0x1000>;
  217. interrupts = <0xb>;
  218. clocks = <0x2 0x2d 0x2 0x71>;
  219. clock-names = "ahb", "mod";
  220. dmas = <0x9 0x1 0x9 0x9 0x1 0x8>;
  221. dma-names = "rx", "tx";
  222. pinctrl-names = "default";
  223. pinctrl-0 = <0xa 0xb>;
  224. status = "disabled";
  225. #address-cells = <0x1>;
  226. #size-cells = <0x0>;
  227. };
  228.  
  229. ethernet@1c0b000 {
  230. compatible = "allwinner,sun4i-a10-emac";
  231. reg = <0x1c0b000 0x1000>;
  232. interrupts = <0x37>;
  233. clocks = <0x2 0x2a>;
  234. allwinner,sram = <0xc 0x1>;
  235. pinctrl-names = "default";
  236. pinctrl-0 = <0xd>;
  237. status = "okay";
  238. phy = <0xe>;
  239. };
  240.  
  241. mdio@1c0b080 {
  242. compatible = "allwinner,sun4i-a10-mdio";
  243. reg = <0x1c0b080 0x14>;
  244. status = "okay";
  245. #address-cells = <0x1>;
  246. #size-cells = <0x0>;
  247.  
  248. ethernet-phy@1 {
  249. reg = <0x1>;
  250. linux,phandle = <0xe>;
  251. phandle = <0xe>;
  252. };
  253. };
  254.  
  255. lcd-controller@1c0c000 {
  256. compatible = "allwinner,sun4i-a10-tcon";
  257. reg = <0x1c0c000 0x1000>;
  258. interrupts = <0x2c>;
  259. resets = <0x2 0xb>;
  260. reset-names = "lcd";
  261. clocks = <0x2 0x38 0x2 0x95 0x2 0x9b>;
  262. clock-names = "ahb", "tcon-ch0", "tcon-ch1";
  263. clock-output-names = "tcon0-pixel-clock";
  264. dmas = <0x9 0x1 0xe>;
  265.  
  266. ports {
  267. #address-cells = <0x1>;
  268. #size-cells = <0x0>;
  269.  
  270. port@0 {
  271. #address-cells = <0x1>;
  272. #size-cells = <0x0>;
  273. reg = <0x0>;
  274.  
  275. endpoint@0 {
  276. reg = <0x0>;
  277. remote-endpoint = <0xf>;
  278. linux,phandle = <0x2e>;
  279. phandle = <0x2e>;
  280. };
  281.  
  282. endpoint@1 {
  283. reg = <0x1>;
  284. remote-endpoint = <0x10>;
  285. linux,phandle = <0x2a>;
  286. phandle = <0x2a>;
  287. };
  288. };
  289.  
  290. port@1 {
  291. #address-cells = <0x1>;
  292. #size-cells = <0x0>;
  293. reg = <0x1>;
  294.  
  295. endpoint@1 {
  296. reg = <0x1>;
  297. remote-endpoint = <0x11>;
  298. allwinner,tcon-channel = <0x1>;
  299. linux,phandle = <0x1c>;
  300. phandle = <0x1c>;
  301. };
  302. };
  303. };
  304. };
  305.  
  306. lcd-controller@1c0d000 {
  307. compatible = "allwinner,sun4i-a10-tcon";
  308. reg = <0x1c0d000 0x1000>;
  309. interrupts = <0x2d>;
  310. resets = <0x2 0xd>;
  311. reset-names = "lcd";
  312. clocks = <0x2 0x39 0x2 0x96 0x2 0x9d>;
  313. clock-names = "ahb", "tcon-ch0", "tcon-ch1";
  314. clock-output-names = "tcon1-pixel-clock";
  315. dmas = <0x9 0x1 0xf>;
  316.  
  317. ports {
  318. #address-cells = <0x1>;
  319. #size-cells = <0x0>;
  320.  
  321. port@0 {
  322. #address-cells = <0x1>;
  323. #size-cells = <0x0>;
  324. reg = <0x0>;
  325.  
  326. endpoint@0 {
  327. reg = <0x0>;
  328. remote-endpoint = <0x12>;
  329. linux,phandle = <0x2f>;
  330. phandle = <0x2f>;
  331. };
  332.  
  333. endpoint@1 {
  334. reg = <0x1>;
  335. remote-endpoint = <0x13>;
  336. linux,phandle = <0x2b>;
  337. phandle = <0x2b>;
  338. };
  339. };
  340.  
  341. port@1 {
  342. #address-cells = <0x1>;
  343. #size-cells = <0x0>;
  344. reg = <0x1>;
  345.  
  346. endpoint@1 {
  347. reg = <0x1>;
  348. remote-endpoint = <0x14>;
  349. allwinner,tcon-channel = <0x1>;
  350. linux,phandle = <0x1d>;
  351. phandle = <0x1d>;
  352. };
  353. };
  354. };
  355. };
  356.  
  357. mmc@1c0f000 {
  358. compatible = "allwinner,sun4i-a10-mmc";
  359. reg = <0x1c0f000 0x1000>;
  360. clocks = <0x2 0x22 0x2 0x62>;
  361. clock-names = "ahb", "mmc";
  362. interrupts = <0x20>;
  363. pinctrl-names = "default";
  364. pinctrl-0 = <0x15>;
  365. status = "okay";
  366. #address-cells = <0x1>;
  367. #size-cells = <0x0>;
  368. vmmc-supply = <0x16>;
  369. bus-width = <0x4>;
  370. cd-gpios = <0x17 0x7 0x1 0x1>;
  371. };
  372.  
  373. mmc@1c10000 {
  374. compatible = "allwinner,sun4i-a10-mmc";
  375. reg = <0x1c10000 0x1000>;
  376. clocks = <0x2 0x23 0x2 0x65>;
  377. clock-names = "ahb", "mmc";
  378. interrupts = <0x21>;
  379. status = "disabled";
  380. #address-cells = <0x1>;
  381. #size-cells = <0x0>;
  382. };
  383.  
  384. mmc@1c11000 {
  385. compatible = "allwinner,sun4i-a10-mmc";
  386. reg = <0x1c11000 0x1000>;
  387. clocks = <0x2 0x24 0x2 0x68>;
  388. clock-names = "ahb", "mmc";
  389. interrupts = <0x22>;
  390. status = "disabled";
  391. #address-cells = <0x1>;
  392. #size-cells = <0x0>;
  393. };
  394.  
  395. mmc@1c12000 {
  396. compatible = "allwinner,sun4i-a10-mmc";
  397. reg = <0x1c12000 0x1000>;
  398. clocks = <0x2 0x25 0x2 0x6b>;
  399. clock-names = "ahb", "mmc";
  400. interrupts = <0x23>;
  401. status = "disabled";
  402. #address-cells = <0x1>;
  403. #size-cells = <0x0>;
  404. };
  405.  
  406. usb@1c13000 {
  407. compatible = "allwinner,sun4i-a10-musb";
  408. reg = <0x1c13000 0x400>;
  409. clocks = <0x2 0x1a>;
  410. interrupts = <0x26>;
  411. interrupt-names = "mc";
  412. phys = <0x18 0x0>;
  413. phy-names = "usb";
  414. extcon = <0x18 0x0>;
  415. allwinner,sram = <0x19 0x1>;
  416. status = "okay";
  417. dr_mode = "otg";
  418. };
  419.  
  420. phy@1c13400 {
  421. #phy-cells = <0x1>;
  422. compatible = "allwinner,sun4i-a10-usb-phy";
  423. reg = <0x1c13400 0x10 0x1c14800 0x4 0x1c1c800 0x4>;
  424. reg-names = "phy_ctrl", "pmu1", "pmu2";
  425. clocks = <0x2 0x7d>;
  426. clock-names = "usb_phy";
  427. resets = <0x2 0x1 0x2 0x2 0x2 0x3>;
  428. reset-names = "usb0_reset", "usb1_reset", "usb2_reset";
  429. status = "okay";
  430. pinctrl-names = "default";
  431. pinctrl-0 = <0x1a>;
  432. usb0_id_det-gpio = <0x17 0x7 0x4 0x0>;
  433. usb1_vbus-supply = <0x1b>;
  434. usb2_vbus-supply = <0x1b>;
  435. linux,phandle = <0x18>;
  436. phandle = <0x18>;
  437. };
  438.  
  439. usb@1c14000 {
  440. compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
  441. reg = <0x1c14000 0x100>;
  442. interrupts = <0x27>;
  443. clocks = <0x2 0x1b>;
  444. phys = <0x18 0x1>;
  445. phy-names = "usb";
  446. status = "okay";
  447. };
  448.  
  449. usb@1c14400 {
  450. compatible = "allwinner,sun4i-a10-ohci", "generic-ohci";
  451. reg = <0x1c14400 0x100>;
  452. interrupts = <0x40>;
  453. clocks = <0x2 0x7b 0x2 0x1c>;
  454. phys = <0x18 0x1>;
  455. phy-names = "usb";
  456. status = "okay";
  457. };
  458.  
  459. crypto-engine@1c15000 {
  460. compatible = "allwinner,sun4i-a10-crypto";
  461. reg = <0x1c15000 0x1000>;
  462. interrupts = <0x56>;
  463. clocks = <0x2 0x1f 0x2 0x6f>;
  464. clock-names = "ahb", "mod";
  465. };
  466.  
  467. hdmi@1c16000 {
  468. compatible = "allwinner,sun4i-a10-hdmi";
  469. reg = <0x1c16000 0x1000>;
  470. interrupts = <0x3a>;
  471. clocks = <0x2 0x3c 0x2 0xa4 0x2 0x9 0x2 0x12>;
  472. clock-names = "ahb", "mod", "pll-0", "pll-1";
  473. dmas = <0x9 0x0 0x10 0x9 0x0 0x10 0x9 0x1 0x18>;
  474. dma-names = "ddc-tx", "ddc-rx", "audio-tx";
  475. status = "disabled";
  476.  
  477. ports {
  478. #address-cells = <0x1>;
  479. #size-cells = <0x0>;
  480.  
  481. port@0 {
  482. #address-cells = <0x1>;
  483. #size-cells = <0x0>;
  484. reg = <0x0>;
  485.  
  486. endpoint@0 {
  487. reg = <0x0>;
  488. remote-endpoint = <0x1c>;
  489. linux,phandle = <0x11>;
  490. phandle = <0x11>;
  491. };
  492.  
  493. endpoint@1 {
  494. reg = <0x1>;
  495. remote-endpoint = <0x1d>;
  496. linux,phandle = <0x14>;
  497. phandle = <0x14>;
  498. };
  499. };
  500.  
  501. port@1 {
  502. #address-cells = <0x1>;
  503. #size-cells = <0x0>;
  504. reg = <0x1>;
  505. };
  506. };
  507. };
  508.  
  509. spi@1c17000 {
  510. compatible = "allwinner,sun4i-a10-spi";
  511. reg = <0x1c17000 0x1000>;
  512. interrupts = <0xc>;
  513. clocks = <0x2 0x2e 0x2 0x72>;
  514. clock-names = "ahb", "mod";
  515. dmas = <0x9 0x1 0x1d 0x9 0x1 0x1c>;
  516. dma-names = "rx", "tx";
  517. status = "disabled";
  518. #address-cells = <0x1>;
  519. #size-cells = <0x0>;
  520. };
  521.  
  522. sata@1c18000 {
  523. compatible = "allwinner,sun4i-a10-ahci";
  524. reg = <0x1c18000 0x1000>;
  525. interrupts = <0x38>;
  526. clocks = <0x2 0x31 0x2 0x7a>;
  527. status = "disabled";
  528. };
  529.  
  530. usb@1c1c000 {
  531. compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
  532. reg = <0x1c1c000 0x100>;
  533. interrupts = <0x28>;
  534. clocks = <0x2 0x1d>;
  535. phys = <0x18 0x2>;
  536. phy-names = "usb";
  537. status = "okay";
  538. };
  539.  
  540. usb@1c1c400 {
  541. compatible = "allwinner,sun4i-a10-ohci", "generic-ohci";
  542. reg = <0x1c1c400 0x100>;
  543. interrupts = <0x41>;
  544. clocks = <0x2 0x7c 0x2 0x1e>;
  545. phys = <0x18 0x2>;
  546. phy-names = "usb";
  547. status = "okay";
  548. };
  549.  
  550. spi@1c1f000 {
  551. compatible = "allwinner,sun4i-a10-spi";
  552. reg = <0x1c1f000 0x1000>;
  553. interrupts = <0x32>;
  554. clocks = <0x2 0x2f 0x2 0x7f>;
  555. clock-names = "ahb", "mod";
  556. dmas = <0x9 0x1 0x1f 0x9 0x1 0x1e>;
  557. dma-names = "rx", "tx";
  558. status = "disabled";
  559. #address-cells = <0x1>;
  560. #size-cells = <0x0>;
  561. };
  562.  
  563. clock@1c20000 {
  564. compatible = "allwinner,sun4i-a10-ccu";
  565. reg = <0x1c20000 0x400>;
  566. clocks = <0x1e 0x1f>;
  567. clock-names = "hosc", "losc";
  568. #clock-cells = <0x1>;
  569. #reset-cells = <0x1>;
  570. linux,phandle = <0x2>;
  571. phandle = <0x2>;
  572. };
  573.  
  574. interrupt-controller@1c20400 {
  575. compatible = "allwinner,sun4i-a10-ic";
  576. reg = <0x1c20400 0x400>;
  577. interrupt-controller;
  578. #interrupt-cells = <0x1>;
  579. linux,phandle = <0x1>;
  580. phandle = <0x1>;
  581. };
  582.  
  583. pinctrl@1c20800 {
  584. compatible = "allwinner,sun4i-a10-pinctrl";
  585. reg = <0x1c20800 0x400>;
  586. interrupts = <0x1c>;
  587. clocks = <0x2 0x4a 0x1e 0x1f>;
  588. clock-names = "apb", "hosc", "losc";
  589. gpio-controller;
  590. interrupt-controller;
  591. #interrupt-cells = <0x3>;
  592. #gpio-cells = <0x3>;
  593. linux,phandle = <0x17>;
  594. phandle = <0x17>;
  595.  
  596. can0-ph-pins {
  597. pins = "PH20", "PH21";
  598. function = "can";
  599. };
  600.  
  601. emac0-pins {
  602. pins = "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16";
  603. function = "emac";
  604. linux,phandle = <0xd>;
  605. phandle = <0xd>;
  606. };
  607.  
  608. i2c0-pins {
  609. pins = "PB0", "PB1";
  610. function = "i2c0";
  611. linux,phandle = <0x21>;
  612. phandle = <0x21>;
  613. };
  614.  
  615. i2c1-pins {
  616. pins = "PB18", "PB19";
  617. function = "i2c1";
  618. linux,phandle = <0x22>;
  619. phandle = <0x22>;
  620. };
  621.  
  622. i2c2-pins {
  623. pins = "PB20", "PB21";
  624. function = "i2c2";
  625. linux,phandle = <0x23>;
  626. phandle = <0x23>;
  627. };
  628.  
  629. ir0-rx-pin {
  630. pins = "PB4";
  631. function = "ir0";
  632. };
  633.  
  634. ir0-tx-pin {
  635. pins = "PB3";
  636. function = "ir0";
  637. };
  638.  
  639. ir1-rx-pin {
  640. pins = "PB23";
  641. function = "ir1";
  642. };
  643.  
  644. ir1-tx-pin {
  645. pins = "PB22";
  646. function = "ir1";
  647. };
  648.  
  649. mmc0-pins {
  650. pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
  651. function = "mmc0";
  652. drive-strength = <0x1e>;
  653. bias-pull-up;
  654. linux,phandle = <0x15>;
  655. phandle = <0x15>;
  656. };
  657.  
  658. ps2-ch0-pins {
  659. pins = "PI20", "PI21";
  660. function = "ps2";
  661. };
  662.  
  663. ps2-ch1-ph-pins {
  664. pins = "PH12", "PH13";
  665. function = "ps2";
  666. };
  667.  
  668. pwm0-pin {
  669. pins = "PB2";
  670. function = "pwm";
  671. };
  672.  
  673. pwm1-pin {
  674. pins = "PI3";
  675. function = "pwm";
  676. };
  677.  
  678. spdif-tx-pin {
  679. pins = "PB13";
  680. function = "spdif";
  681. bias-pull-up;
  682. };
  683.  
  684. spi0-pi-pins {
  685. pins = "PI11", "PI12", "PI13";
  686. function = "spi0";
  687. };
  688.  
  689. spi0-cs0-pi-pin {
  690. pins = "PI10";
  691. function = "spi0";
  692. };
  693.  
  694. spi1-pins {
  695. pins = "PI17", "PI18", "PI19";
  696. function = "spi1";
  697. linux,phandle = <0xa>;
  698. phandle = <0xa>;
  699. };
  700.  
  701. spi1-cs0-pin {
  702. pins = "PI16";
  703. function = "spi1";
  704. linux,phandle = <0xb>;
  705. phandle = <0xb>;
  706. };
  707.  
  708. spi2-pb-pins {
  709. pins = "PB15", "PB16", "PB17";
  710. function = "spi2";
  711. };
  712.  
  713. spi2-pc-pins {
  714. pins = "PC20", "PC21", "PC22";
  715. function = "spi2";
  716. };
  717.  
  718. spi2-cs0-pb-pin {
  719. pins = "PB14";
  720. function = "spi2";
  721. };
  722.  
  723. spi2-cs0-pc-pin {
  724. pins = "PC19";
  725. function = "spi2";
  726. };
  727.  
  728. uart0-pb-pins {
  729. pins = "PB22", "PB23";
  730. function = "uart0";
  731. linux,phandle = <0x20>;
  732. phandle = <0x20>;
  733. };
  734.  
  735. uart0-pf-pins {
  736. pins = "PF2", "PF4";
  737. function = "uart0";
  738. };
  739.  
  740. uart1-pins {
  741. pins = "PA10", "PA11";
  742. function = "uart1";
  743. };
  744.  
  745. usb0-id-detect-pin {
  746. pins = "PH4";
  747. function = "gpio_in";
  748. bias-pull-up;
  749. linux,phandle = <0x1a>;
  750. phandle = <0x1a>;
  751. };
  752. };
  753.  
  754. timer@1c20c00 {
  755. compatible = "allwinner,sun4i-a10-timer";
  756. reg = <0x1c20c00 0x90>;
  757. interrupts = <0x16>;
  758. clocks = <0x1e>;
  759. };
  760.  
  761. watchdog@1c20c90 {
  762. compatible = "allwinner,sun4i-a10-wdt";
  763. reg = <0x1c20c90 0x10>;
  764. };
  765.  
  766. rtc@1c20d00 {
  767. compatible = "allwinner,sun4i-a10-rtc";
  768. reg = <0x1c20d00 0x20>;
  769. interrupts = <0x18>;
  770. };
  771.  
  772. pwm@1c20e00 {
  773. compatible = "allwinner,sun4i-a10-pwm";
  774. reg = <0x1c20e00 0xc>;
  775. clocks = <0x1e>;
  776. #pwm-cells = <0x3>;
  777. status = "disabled";
  778. };
  779.  
  780. spdif@1c21000 {
  781. #sound-dai-cells = <0x0>;
  782. compatible = "allwinner,sun4i-a10-spdif";
  783. reg = <0x1c21000 0x400>;
  784. interrupts = <0xd>;
  785. clocks = <0x2 0x46 0x2 0x78>;
  786. clock-names = "apb", "spdif";
  787. dmas = <0x9 0x0 0x2 0x9 0x0 0x2>;
  788. dma-names = "rx", "tx";
  789. status = "disabled";
  790. };
  791.  
  792. ir@1c21800 {
  793. compatible = "allwinner,sun4i-a10-ir";
  794. clocks = <0x2 0x4b 0x2 0x74>;
  795. clock-names = "apb", "ir";
  796. interrupts = <0x5>;
  797. reg = <0x1c21800 0x40>;
  798. status = "disabled";
  799. };
  800.  
  801. ir@1c21c00 {
  802. compatible = "allwinner,sun4i-a10-ir";
  803. clocks = <0x2 0x4c 0x2 0x75>;
  804. clock-names = "apb", "ir";
  805. interrupts = <0x6>;
  806. reg = <0x1c21c00 0x40>;
  807. status = "disabled";
  808. };
  809.  
  810. i2s@1c22400 {
  811. #sound-dai-cells = <0x0>;
  812. compatible = "allwinner,sun4i-a10-i2s";
  813. reg = <0x1c22400 0x400>;
  814. interrupts = <0x10>;
  815. clocks = <0x2 0x47 0x2 0x76>;
  816. clock-names = "apb", "mod";
  817. dmas = <0x9 0x0 0x3 0x9 0x0 0x3>;
  818. dma-names = "rx", "tx";
  819. status = "disabled";
  820. };
  821.  
  822. lradc@1c22800 {
  823. compatible = "allwinner,sun4i-a10-lradc-keys";
  824. reg = <0x1c22800 0x100>;
  825. interrupts = <0x1f>;
  826. status = "disabled";
  827. };
  828.  
  829. codec@1c22c00 {
  830. #sound-dai-cells = <0x0>;
  831. compatible = "allwinner,sun4i-a10-codec";
  832. reg = <0x1c22c00 0x40>;
  833. interrupts = <0x1e>;
  834. clocks = <0x2 0x45 0x2 0xa0>;
  835. clock-names = "apb", "codec";
  836. dmas = <0x9 0x0 0x13 0x9 0x0 0x13>;
  837. dma-names = "rx", "tx";
  838. status = "disabled";
  839. };
  840.  
  841. eeprom@1c23800 {
  842. compatible = "allwinner,sun4i-a10-sid";
  843. reg = <0x1c23800 0x10>;
  844. };
  845.  
  846. rtp@1c25000 {
  847. compatible = "allwinner,sun4i-a10-ts";
  848. reg = <0x1c25000 0x100>;
  849. interrupts = <0x1d>;
  850. #thermal-sensor-cells = <0x0>;
  851. linux,phandle = <0x4>;
  852. phandle = <0x4>;
  853. };
  854.  
  855. serial@1c28000 {
  856. compatible = "snps,dw-apb-uart";
  857. reg = <0x1c28000 0x400>;
  858. interrupts = <0x1>;
  859. reg-shift = <0x2>;
  860. reg-io-width = <0x4>;
  861. clocks = <0x2 0x58>;
  862. status = "okay";
  863. pinctrl-names = "default";
  864. pinctrl-0 = <0x20>;
  865. };
  866.  
  867. serial@1c28400 {
  868. compatible = "snps,dw-apb-uart";
  869. reg = <0x1c28400 0x400>;
  870. interrupts = <0x2>;
  871. reg-shift = <0x2>;
  872. reg-io-width = <0x4>;
  873. clocks = <0x2 0x59>;
  874. status = "disabled";
  875. };
  876.  
  877. serial@1c28800 {
  878. compatible = "snps,dw-apb-uart";
  879. reg = <0x1c28800 0x400>;
  880. interrupts = <0x3>;
  881. reg-shift = <0x2>;
  882. reg-io-width = <0x4>;
  883. clocks = <0x2 0x5a>;
  884. status = "disabled";
  885. };
  886.  
  887. serial@1c28c00 {
  888. compatible = "snps,dw-apb-uart";
  889. reg = <0x1c28c00 0x400>;
  890. interrupts = <0x4>;
  891. reg-shift = <0x2>;
  892. reg-io-width = <0x4>;
  893. clocks = <0x2 0x5b>;
  894. status = "disabled";
  895. };
  896.  
  897. serial@1c29000 {
  898. compatible = "snps,dw-apb-uart";
  899. reg = <0x1c29000 0x400>;
  900. interrupts = <0x11>;
  901. reg-shift = <0x2>;
  902. reg-io-width = <0x4>;
  903. clocks = <0x2 0x5c>;
  904. status = "disabled";
  905. };
  906.  
  907. serial@1c29400 {
  908. compatible = "snps,dw-apb-uart";
  909. reg = <0x1c29400 0x400>;
  910. interrupts = <0x12>;
  911. reg-shift = <0x2>;
  912. reg-io-width = <0x4>;
  913. clocks = <0x2 0x5d>;
  914. status = "disabled";
  915. };
  916.  
  917. serial@1c29800 {
  918. compatible = "snps,dw-apb-uart";
  919. reg = <0x1c29800 0x400>;
  920. interrupts = <0x13>;
  921. reg-shift = <0x2>;
  922. reg-io-width = <0x4>;
  923. clocks = <0x2 0x5e>;
  924. status = "disabled";
  925. };
  926.  
  927. serial@1c29c00 {
  928. compatible = "snps,dw-apb-uart";
  929. reg = <0x1c29c00 0x400>;
  930. interrupts = <0x14>;
  931. reg-shift = <0x2>;
  932. reg-io-width = <0x4>;
  933. clocks = <0x2 0x5f>;
  934. status = "disabled";
  935. };
  936.  
  937. ps2@1c2a000 {
  938. compatible = "allwinner,sun4i-a10-ps2";
  939. reg = <0x1c2a000 0x400>;
  940. interrupts = <0x3e>;
  941. clocks = <0x2 0x55>;
  942. status = "disabled";
  943. };
  944.  
  945. ps2@1c2a400 {
  946. compatible = "allwinner,sun4i-a10-ps2";
  947. reg = <0x1c2a400 0x400>;
  948. interrupts = <0x3f>;
  949. clocks = <0x2 0x56>;
  950. status = "disabled";
  951. };
  952.  
  953. i2c@1c2ac00 {
  954. compatible = "allwinner,sun4i-a10-i2c";
  955. reg = <0x1c2ac00 0x400>;
  956. interrupts = <0x7>;
  957. clocks = <0x2 0x4f>;
  958. pinctrl-names = "default";
  959. pinctrl-0 = <0x21>;
  960. status = "okay";
  961. #address-cells = <0x1>;
  962. #size-cells = <0x0>;
  963.  
  964. pmic@34 {
  965. reg = <0x34>;
  966. interrupts = <0x0>;
  967. compatible = "x-powers,axp209";
  968. interrupt-controller;
  969. #interrupt-cells = <0x1>;
  970.  
  971. ac-power-supply {
  972. compatible = "x-powers,axp202-ac-power-supply";
  973. status = "disabled";
  974. };
  975.  
  976. adc {
  977. compatible = "x-powers,axp209-adc";
  978. #io-channel-cells = <0x1>;
  979. };
  980.  
  981. gpio {
  982. compatible = "x-powers,axp209-gpio";
  983. gpio-controller;
  984. #gpio-cells = <0x2>;
  985. };
  986.  
  987. battery-power-supply {
  988. compatible = "x-powers,axp209-battery-power-supply";
  989. status = "disabled";
  990. };
  991.  
  992. regulators {
  993. x-powers,dcdc-freq = <0x5dc>;
  994.  
  995. dcdc2 {
  996. regulator-name = "vdd-cpu";
  997. regulator-always-on;
  998. regulator-min-microvolt = <0xf4240>;
  999. regulator-max-microvolt = <0x155cc0>;
  1000. linux,phandle = <0x3>;
  1001. phandle = <0x3>;
  1002. };
  1003.  
  1004. dcdc3 {
  1005. regulator-name = "vdd-int-dll";
  1006. regulator-always-on;
  1007. regulator-min-microvolt = <0xf4240>;
  1008. regulator-max-microvolt = <0x155cc0>;
  1009. };
  1010.  
  1011. ldo1 {
  1012. regulator-always-on;
  1013. regulator-min-microvolt = <0x13d620>;
  1014. regulator-max-microvolt = <0x13d620>;
  1015. regulator-name = "vdd-rtc";
  1016. };
  1017.  
  1018. ldo2 {
  1019. regulator-name = "avcc";
  1020. regulator-always-on;
  1021. regulator-min-microvolt = <0x2dc6c0>;
  1022. regulator-max-microvolt = <0x2dc6c0>;
  1023. };
  1024.  
  1025. ldo3 {
  1026. regulator-name = "ldo3";
  1027. };
  1028.  
  1029. ldo4 {
  1030. regulator-name = "ldo4";
  1031. };
  1032.  
  1033. ldo5 {
  1034. regulator-name = "ldo5";
  1035. status = "disabled";
  1036. };
  1037. };
  1038.  
  1039. usb-power-supply {
  1040. compatible = "x-powers,axp202-usb-power-supply";
  1041. status = "disabled";
  1042. };
  1043. };
  1044. };
  1045.  
  1046. i2c@1c2b000 {
  1047. compatible = "allwinner,sun4i-a10-i2c";
  1048. reg = <0x1c2b000 0x400>;
  1049. interrupts = <0x8>;
  1050. clocks = <0x2 0x50>;
  1051. pinctrl-names = "default";
  1052. pinctrl-0 = <0x22>;
  1053. status = "disabled";
  1054. #address-cells = <0x1>;
  1055. #size-cells = <0x0>;
  1056. };
  1057.  
  1058. i2c@1c2b400 {
  1059. compatible = "allwinner,sun4i-a10-i2c";
  1060. reg = <0x1c2b400 0x400>;
  1061. interrupts = <0x9>;
  1062. clocks = <0x2 0x51>;
  1063. pinctrl-names = "default";
  1064. pinctrl-0 = <0x23>;
  1065. status = "disabled";
  1066. #address-cells = <0x1>;
  1067. #size-cells = <0x0>;
  1068. };
  1069.  
  1070. can@1c2bc00 {
  1071. compatible = "allwinner,sun4i-a10-can";
  1072. reg = <0x1c2bc00 0x400>;
  1073. interrupts = <0x1a>;
  1074. clocks = <0x2 0x53>;
  1075. status = "disabled";
  1076. };
  1077.  
  1078. display-frontend@1e00000 {
  1079. compatible = "allwinner,sun4i-a10-display-frontend";
  1080. reg = <0x1e00000 0x20000>;
  1081. interrupts = <0x2f>;
  1082. clocks = <0x2 0x40 0x2 0x92 0x2 0x8b>;
  1083. clock-names = "ahb", "mod", "ram";
  1084. resets = <0x2 0x7>;
  1085. linux,phandle = <0x7>;
  1086. phandle = <0x7>;
  1087.  
  1088. ports {
  1089. #address-cells = <0x1>;
  1090. #size-cells = <0x0>;
  1091.  
  1092. port@1 {
  1093. #address-cells = <0x1>;
  1094. #size-cells = <0x0>;
  1095. reg = <0x1>;
  1096.  
  1097. endpoint@0 {
  1098. reg = <0x0>;
  1099. remote-endpoint = <0x24>;
  1100. linux,phandle = <0x2c>;
  1101. phandle = <0x2c>;
  1102. };
  1103.  
  1104. endpoint@1 {
  1105. reg = <0x1>;
  1106. remote-endpoint = <0x25>;
  1107. linux,phandle = <0x28>;
  1108. phandle = <0x28>;
  1109. };
  1110. };
  1111. };
  1112. };
  1113.  
  1114. display-frontend@1e20000 {
  1115. compatible = "allwinner,sun4i-a10-display-frontend";
  1116. reg = <0x1e20000 0x20000>;
  1117. interrupts = <0x30>;
  1118. clocks = <0x2 0x41 0x2 0x93 0x2 0x8a>;
  1119. clock-names = "ahb", "mod", "ram";
  1120. resets = <0x2 0x8>;
  1121. linux,phandle = <0x8>;
  1122. phandle = <0x8>;
  1123.  
  1124. ports {
  1125. #address-cells = <0x1>;
  1126. #size-cells = <0x0>;
  1127.  
  1128. port@1 {
  1129. #address-cells = <0x1>;
  1130. #size-cells = <0x0>;
  1131. reg = <0x1>;
  1132.  
  1133. endpoint@0 {
  1134. reg = <0x0>;
  1135. remote-endpoint = <0x26>;
  1136. linux,phandle = <0x2d>;
  1137. phandle = <0x2d>;
  1138. };
  1139.  
  1140. endpoint@1 {
  1141. reg = <0x1>;
  1142. remote-endpoint = <0x27>;
  1143. linux,phandle = <0x29>;
  1144. phandle = <0x29>;
  1145. };
  1146. };
  1147. };
  1148. };
  1149.  
  1150. display-backend@1e40000 {
  1151. compatible = "allwinner,sun4i-a10-display-backend";
  1152. reg = <0x1e40000 0x10000>;
  1153. interrupts = <0x30>;
  1154. clocks = <0x2 0x3f 0x2 0x91 0x2 0x8d>;
  1155. clock-names = "ahb", "mod", "ram";
  1156. resets = <0x2 0x6>;
  1157.  
  1158. ports {
  1159. #address-cells = <0x1>;
  1160. #size-cells = <0x0>;
  1161.  
  1162. port@0 {
  1163. #address-cells = <0x1>;
  1164. #size-cells = <0x0>;
  1165. reg = <0x0>;
  1166.  
  1167. endpoint@0 {
  1168. reg = <0x0>;
  1169. remote-endpoint = <0x28>;
  1170. linux,phandle = <0x25>;
  1171. phandle = <0x25>;
  1172. };
  1173.  
  1174. endpoint@1 {
  1175. reg = <0x1>;
  1176. remote-endpoint = <0x29>;
  1177. linux,phandle = <0x27>;
  1178. phandle = <0x27>;
  1179. };
  1180. };
  1181.  
  1182. port@1 {
  1183. #address-cells = <0x1>;
  1184. #size-cells = <0x0>;
  1185. reg = <0x1>;
  1186.  
  1187. endpoint@0 {
  1188. reg = <0x0>;
  1189. remote-endpoint = <0x2a>;
  1190. linux,phandle = <0x10>;
  1191. phandle = <0x10>;
  1192. };
  1193.  
  1194. endpoint@1 {
  1195. reg = <0x1>;
  1196. remote-endpoint = <0x2b>;
  1197. linux,phandle = <0x13>;
  1198. phandle = <0x13>;
  1199. };
  1200. };
  1201. };
  1202. };
  1203.  
  1204. display-backend@1e60000 {
  1205. compatible = "allwinner,sun4i-a10-display-backend";
  1206. reg = <0x1e60000 0x10000>;
  1207. interrupts = <0x2f>;
  1208. clocks = <0x2 0x3e 0x2 0x90 0x2 0x8c>;
  1209. clock-names = "ahb", "mod", "ram";
  1210. resets = <0x2 0x5>;
  1211.  
  1212. ports {
  1213. #address-cells = <0x1>;
  1214. #size-cells = <0x0>;
  1215.  
  1216. port@0 {
  1217. #address-cells = <0x1>;
  1218. #size-cells = <0x0>;
  1219. reg = <0x0>;
  1220.  
  1221. endpoint@0 {
  1222. reg = <0x0>;
  1223. remote-endpoint = <0x2c>;
  1224. linux,phandle = <0x24>;
  1225. phandle = <0x24>;
  1226. };
  1227.  
  1228. endpoint@1 {
  1229. reg = <0x1>;
  1230. remote-endpoint = <0x2d>;
  1231. linux,phandle = <0x26>;
  1232. phandle = <0x26>;
  1233. };
  1234. };
  1235.  
  1236. port@1 {
  1237. #address-cells = <0x1>;
  1238. #size-cells = <0x0>;
  1239. reg = <0x1>;
  1240.  
  1241. endpoint@0 {
  1242. reg = <0x0>;
  1243. remote-endpoint = <0x2e>;
  1244. linux,phandle = <0xf>;
  1245. phandle = <0xf>;
  1246. };
  1247.  
  1248. endpoint@1 {
  1249. reg = <0x1>;
  1250. remote-endpoint = <0x2f>;
  1251. linux,phandle = <0x12>;
  1252. phandle = <0x12>;
  1253. };
  1254. };
  1255. };
  1256. };
  1257. };
  1258.  
  1259. ahci-5v {
  1260. compatible = "regulator-fixed";
  1261. regulator-name = "ahci-5v";
  1262. regulator-min-microvolt = <0x4c4b40>;
  1263. regulator-max-microvolt = <0x4c4b40>;
  1264. regulator-boot-on;
  1265. enable-active-high;
  1266. gpio = <0x17 0x1 0x8 0x0>;
  1267. status = "disabled";
  1268. };
  1269.  
  1270. usb0-vbus {
  1271. compatible = "regulator-fixed";
  1272. regulator-name = "usb0-vbus";
  1273. regulator-min-microvolt = <0x4c4b40>;
  1274. regulator-max-microvolt = <0x4c4b40>;
  1275. enable-active-high;
  1276. gpio = <0x17 0x1 0x9 0x0>;
  1277. status = "disabled";
  1278. };
  1279.  
  1280. usb1-vbus {
  1281. compatible = "regulator-fixed";
  1282. regulator-name = "usb1-vbus";
  1283. regulator-min-microvolt = <0x4c4b40>;
  1284. regulator-max-microvolt = <0x4c4b40>;
  1285. regulator-boot-on;
  1286. enable-active-high;
  1287. gpio = <0x17 0x7 0x6 0x0>;
  1288. status = "disabled";
  1289. };
  1290.  
  1291. usb2-vbus {
  1292. compatible = "regulator-fixed";
  1293. regulator-name = "usb2-vbus";
  1294. regulator-min-microvolt = <0x4c4b40>;
  1295. regulator-max-microvolt = <0x4c4b40>;
  1296. regulator-boot-on;
  1297. enable-active-high;
  1298. gpio = <0x17 0x7 0x3 0x0>;
  1299. status = "disabled";
  1300. };
  1301.  
  1302. vcc3v0 {
  1303. compatible = "regulator-fixed";
  1304. regulator-name = "vcc3v0";
  1305. regulator-min-microvolt = <0x2dc6c0>;
  1306. regulator-max-microvolt = <0x2dc6c0>;
  1307. };
  1308.  
  1309. vcc3v3 {
  1310. compatible = "regulator-fixed";
  1311. regulator-name = "vcc3v3";
  1312. regulator-min-microvolt = <0x325aa0>;
  1313. regulator-max-microvolt = <0x325aa0>;
  1314. linux,phandle = <0x16>;
  1315. phandle = <0x16>;
  1316. };
  1317.  
  1318. vcc5v0 {
  1319. compatible = "regulator-fixed";
  1320. regulator-name = "vcc5v0";
  1321. regulator-min-microvolt = <0x4c4b40>;
  1322. regulator-max-microvolt = <0x4c4b40>;
  1323. linux,phandle = <0x1b>;
  1324. phandle = <0x1b>;
  1325. };
  1326.  
  1327. leds {
  1328. compatible = "gpio-leds";
  1329.  
  1330. tx {
  1331. label = "pcduino:green:tx";
  1332. gpios = <0x17 0x7 0xf 0x1>;
  1333. };
  1334.  
  1335. rx {
  1336. label = "pcduino:green:rx";
  1337. gpios = <0x17 0x7 0x10 0x1>;
  1338. };
  1339. };
  1340.  
  1341. gpio-keys {
  1342. compatible = "gpio-keys";
  1343. #address-cells = <0x1>;
  1344. #size-cells = <0x0>;
  1345.  
  1346. back {
  1347. label = "Key Back";
  1348. linux,code = <0x9e>;
  1349. gpios = <0x17 0x7 0x11 0x1>;
  1350. };
  1351.  
  1352. home {
  1353. label = "Key Home";
  1354. linux,code = <0x66>;
  1355. gpios = <0x17 0x7 0x12 0x1>;
  1356. };
  1357.  
  1358. menu {
  1359. label = "Key Menu";
  1360. linux,code = <0x8b>;
  1361. gpios = <0x17 0x7 0x13 0x1>;
  1362. };
  1363. };
  1364. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement