Advertisement
Guest User

sun7i-a20-bananapi.dts with additional 1008/1056 dvfs OPPs

a guest
Jun 16th, 2017
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 56.76 KB | None | 0 0
  1. /dts-v1/;
  2.  
  3. / {
  4. #address-cells = <0x1>;
  5. #size-cells = <0x1>;
  6. interrupt-parent = <0x1>;
  7. model = "LeMaker Banana Pi";
  8. compatible = "lemaker,bananapi", "allwinner,sun7i-a20";
  9.  
  10. chosen {
  11. #address-cells = <0x1>;
  12. #size-cells = <0x1>;
  13. ranges;
  14. stdout-path = "serial0:115200n8";
  15.  
  16. framebuffer@0 {
  17. compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
  18. allwinner,pipeline = "de_be0-lcd0-hdmi";
  19. clocks = <0x2 0x24 0x2 0x2b 0x2 0x2c 0x3 0x4 0x5 0x1a>;
  20. status = "disabled";
  21. };
  22.  
  23. framebuffer@1 {
  24. compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
  25. allwinner,pipeline = "de_be0-lcd0";
  26. clocks = <0x2 0x24 0x2 0x2c 0x3 0x6 0x5 0x1a>;
  27. status = "disabled";
  28. };
  29.  
  30. framebuffer@2 {
  31. compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
  32. allwinner,pipeline = "de_be0-lcd0-tve0";
  33. clocks = <0x2 0x22 0x2 0x24 0x2 0x2c 0x3 0x4 0x5 0x5 0x5 0x1a>;
  34. status = "disabled";
  35. };
  36. };
  37.  
  38. aliases {
  39. ethernet0 = "/soc@01c00000/ethernet@01c50000";
  40. serial0 = "/soc@01c00000/serial@01c28000";
  41. serial1 = "/soc@01c00000/serial@01c28c00";
  42. serial2 = "/soc@01c00000/serial@01c29c00";
  43. };
  44.  
  45. memory {
  46. device_type = "memory";
  47. reg = <0x40000000 0x80000000>;
  48. };
  49.  
  50. cpus {
  51. #address-cells = <0x1>;
  52. #size-cells = <0x0>;
  53.  
  54. cpu@0 {
  55. compatible = "arm,cortex-a7";
  56. device_type = "cpu";
  57. reg = <0x0>;
  58. clocks = <0x7>;
  59. clock-latency = <0x3b9b0>;
  60. operating-points = <0x101d00 0x162010 0xf6180 0x15be68 0xea600 0x155cc0 0xdea80 0x155cc0 0xd2f00 0x149970 0xafc80 0x1312d0 0x80e80 0x118c30 0x4c2c0 0x10c8e0 0x23280 0x100590>;
  61. #cooling-cells = <0x2>;
  62. cooling-min-level = <0x0>;
  63. cooling-max-level = <0x8>;
  64. cpu-supply = <0x8>;
  65. linux,phandle = <0xb>;
  66. phandle = <0xb>;
  67. };
  68.  
  69. cpu@1 {
  70. compatible = "arm,cortex-a7";
  71. device_type = "cpu";
  72. reg = <0x1>;
  73. };
  74. };
  75.  
  76. thermal-zones {
  77.  
  78. cpu_thermal {
  79. polling-delay-passive = <0xfa>;
  80. polling-delay = <0x3e8>;
  81. thermal-sensors = <0x9>;
  82.  
  83. cooling-maps {
  84.  
  85. map0 {
  86. trip = <0xa>;
  87. cooling-device = <0xb 0xffffffff 0xffffffff>;
  88. };
  89. };
  90.  
  91. trips {
  92.  
  93. cpu_alert0 {
  94. temperature = <0x124f8>;
  95. hysteresis = <0x7d0>;
  96. type = "passive";
  97. linux,phandle = <0xa>;
  98. phandle = <0xa>;
  99. };
  100.  
  101. cpu_crit {
  102. temperature = <0x186a0>;
  103. hysteresis = <0x7d0>;
  104. type = "critical";
  105. linux,phandle = <0x54>;
  106. phandle = <0x54>;
  107. };
  108. };
  109. };
  110. };
  111.  
  112. timer {
  113. compatible = "arm,armv7-timer";
  114. interrupts = <0x1 0xd 0xf08 0x1 0xe 0xf08 0x1 0xb 0xf08 0x1 0xa 0xf08>;
  115. };
  116.  
  117. pmu {
  118. compatible = "arm,cortex-a7-pmu", "arm,cortex-a15-pmu";
  119. interrupts = <0x0 0x78 0x4 0x0 0x79 0x4>;
  120. };
  121.  
  122. clocks {
  123. #address-cells = <0x1>;
  124. #size-cells = <0x1>;
  125. ranges;
  126.  
  127. clk@01c20050 {
  128. #clock-cells = <0x0>;
  129. compatible = "allwinner,sun4i-a10-osc-clk";
  130. reg = <0x1c20050 0x4>;
  131. clock-frequency = <0x16e3600>;
  132. clock-output-names = "osc24M";
  133. linux,phandle = <0xc>;
  134. phandle = <0xc>;
  135. };
  136.  
  137. osc3M_clk {
  138. #clock-cells = <0x0>;
  139. compatible = "fixed-factor-clock";
  140. clock-div = <0x8>;
  141. clock-mult = <0x1>;
  142. clocks = <0xc>;
  143. clock-output-names = "osc3M";
  144. linux,phandle = <0xd>;
  145. phandle = <0xd>;
  146. };
  147.  
  148. clk@0 {
  149. #clock-cells = <0x0>;
  150. compatible = "fixed-clock";
  151. clock-frequency = <0x8000>;
  152. clock-output-names = "osc32k";
  153. linux,phandle = <0x10>;
  154. phandle = <0x10>;
  155. };
  156.  
  157. clk@01c20000 {
  158. #clock-cells = <0x0>;
  159. compatible = "allwinner,sun4i-a10-pll1-clk";
  160. reg = <0x1c20000 0x4>;
  161. clocks = <0xc>;
  162. clock-output-names = "pll1";
  163. linux,phandle = <0x11>;
  164. phandle = <0x11>;
  165. };
  166.  
  167. clk@01c20008 {
  168. #clock-cells = <0x1>;
  169. compatible = "allwinner,sun4i-a10-pll2-clk";
  170. reg = <0x1c20008 0x8>;
  171. clocks = <0xc>;
  172. clock-output-names = "pll2-1x", "pll2-2x", "pll2-4x", "pll2-8x";
  173. linux,phandle = <0x18>;
  174. phandle = <0x18>;
  175. };
  176.  
  177. clk@01c20010 {
  178. #clock-cells = <0x0>;
  179. compatible = "allwinner,sun4i-a10-pll3-clk";
  180. reg = <0x1c20010 0x4>;
  181. clocks = <0xd>;
  182. clock-output-names = "pll3";
  183. linux,phandle = <0xe>;
  184. phandle = <0xe>;
  185. };
  186.  
  187. pll3x2_clk {
  188. #clock-cells = <0x0>;
  189. compatible = "fixed-factor-clock";
  190. clocks = <0xe>;
  191. clock-div = <0x1>;
  192. clock-mult = <0x2>;
  193. clock-output-names = "pll3-2x";
  194. linux,phandle = <0x19>;
  195. phandle = <0x19>;
  196. };
  197.  
  198. clk@01c20018 {
  199. #clock-cells = <0x0>;
  200. compatible = "allwinner,sun7i-a20-pll4-clk";
  201. reg = <0x1c20018 0x4>;
  202. clocks = <0xc>;
  203. clock-output-names = "pll4";
  204. linux,phandle = <0x1b>;
  205. phandle = <0x1b>;
  206. };
  207.  
  208. clk@01c20020 {
  209. #clock-cells = <0x1>;
  210. compatible = "allwinner,sun4i-a10-pll5-clk";
  211. reg = <0x1c20020 0x4>;
  212. clocks = <0xc>;
  213. clock-output-names = "pll5_ddr", "pll5_other";
  214. linux,phandle = <0x17>;
  215. phandle = <0x17>;
  216. };
  217.  
  218. clk@01c20028 {
  219. #clock-cells = <0x1>;
  220. compatible = "allwinner,sun4i-a10-pll6-clk";
  221. reg = <0x1c20028 0x4>;
  222. clocks = <0xc>;
  223. clock-output-names = "pll6_sata", "pll6_other", "pll6", "pll6_div_4";
  224. linux,phandle = <0x12>;
  225. phandle = <0x12>;
  226. };
  227.  
  228. clk@01c20030 {
  229. #clock-cells = <0x0>;
  230. compatible = "allwinner,sun4i-a10-pll3-clk";
  231. reg = <0x1c20030 0x4>;
  232. clocks = <0xd>;
  233. clock-output-names = "pll7";
  234. linux,phandle = <0xf>;
  235. phandle = <0xf>;
  236. };
  237.  
  238. pll7x2_clk {
  239. #clock-cells = <0x0>;
  240. compatible = "fixed-factor-clock";
  241. clocks = <0xf>;
  242. clock-div = <0x1>;
  243. clock-mult = <0x2>;
  244. clock-output-names = "pll7-2x";
  245. linux,phandle = <0x1a>;
  246. phandle = <0x1a>;
  247. };
  248.  
  249. clk@01c20040 {
  250. #clock-cells = <0x0>;
  251. compatible = "allwinner,sun7i-a20-pll4-clk";
  252. reg = <0x1c20040 0x4>;
  253. clocks = <0xc>;
  254. clock-output-names = "pll8";
  255. linux,phandle = <0x55>;
  256. phandle = <0x55>;
  257. };
  258.  
  259. cpu@01c20054 {
  260. #clock-cells = <0x0>;
  261. compatible = "allwinner,sun4i-a10-cpu-clk";
  262. reg = <0x1c20054 0x4>;
  263. clocks = <0x10 0xc 0x11 0x12 0x1>;
  264. clock-output-names = "cpu";
  265. linux,phandle = <0x7>;
  266. phandle = <0x7>;
  267. };
  268.  
  269. axi@01c20054 {
  270. #clock-cells = <0x0>;
  271. compatible = "allwinner,sun4i-a10-axi-clk";
  272. reg = <0x1c20054 0x4>;
  273. clocks = <0x7>;
  274. clock-output-names = "axi";
  275. linux,phandle = <0x13>;
  276. phandle = <0x13>;
  277. };
  278.  
  279. ahb@01c20054 {
  280. #clock-cells = <0x0>;
  281. compatible = "allwinner,sun5i-a13-ahb-clk";
  282. reg = <0x1c20054 0x4>;
  283. clocks = <0x13 0x12 0x3 0x12 0x1>;
  284. clock-output-names = "ahb";
  285. assigned-clocks = <0x14>;
  286. assigned-clock-parents = <0x12 0x3>;
  287. linux,phandle = <0x14>;
  288. phandle = <0x14>;
  289. };
  290.  
  291. clk@01c20060 {
  292. #clock-cells = <0x1>;
  293. compatible = "allwinner,sun7i-a20-ahb-gates-clk";
  294. reg = <0x1c20060 0x8>;
  295. clocks = <0x14>;
  296. clock-indices = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0x10 0x11 0x12 0x14 0x15 0x16 0x17 0x19 0x1c 0x20 0x21 0x22 0x23 0x24 0x25 0x28 0x29 0x2a 0x2b 0x2c 0x2d 0x2e 0x2f 0x31 0x32 0x34>;
  297. clock-output-names = "ahb_usb0", "ahb_ehci0", "ahb_ohci0", "ahb_ehci1", "ahb_ohci1", "ahb_ss", "ahb_dma", "ahb_bist", "ahb_mmc0", "ahb_mmc1", "ahb_mmc2", "ahb_mmc3", "ahb_ms", "ahb_nand", "ahb_sdram", "ahb_ace", "ahb_emac", "ahb_ts", "ahb_spi0", "ahb_spi1", "ahb_spi2", "ahb_spi3", "ahb_sata", "ahb_hstimer", "ahb_ve", "ahb_tvd", "ahb_tve0", "ahb_tve1", "ahb_lcd0", "ahb_lcd1", "ahb_csi0", "ahb_csi1", "ahb_hdmi1", "ahb_hdmi0", "ahb_de_be0", "ahb_de_be1", "ahb_de_fe0", "ahb_de_fe1", "ahb_gmac", "ahb_mp", "ahb_mali";
  298. linux,phandle = <0x2>;
  299. phandle = <0x2>;
  300. };
  301.  
  302. apb0@01c20054 {
  303. #clock-cells = <0x0>;
  304. compatible = "allwinner,sun4i-a10-apb0-clk";
  305. reg = <0x1c20054 0x4>;
  306. clocks = <0x14>;
  307. clock-output-names = "apb0";
  308. linux,phandle = <0x15>;
  309. phandle = <0x15>;
  310. };
  311.  
  312. clk@01c20068 {
  313. #clock-cells = <0x1>;
  314. compatible = "allwinner,sun7i-a20-apb0-gates-clk";
  315. reg = <0x1c20068 0x4>;
  316. clocks = <0x15>;
  317. clock-indices = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0xa>;
  318. clock-output-names = "apb0_codec", "apb0_spdif", "apb0_ac97", "apb0_i2s0", "apb0_i2s1", "apb0_pio", "apb0_ir0", "apb0_ir1", "apb0_i2s2", "apb0_keypad";
  319. linux,phandle = <0x3a>;
  320. phandle = <0x3a>;
  321. };
  322.  
  323. clk@01c20058 {
  324. #clock-cells = <0x0>;
  325. compatible = "allwinner,sun4i-a10-apb1-clk";
  326. reg = <0x1c20058 0x4>;
  327. clocks = <0xc 0x12 0x1 0x10>;
  328. clock-output-names = "apb1";
  329. linux,phandle = <0x16>;
  330. phandle = <0x16>;
  331. };
  332.  
  333. clk@01c2006c {
  334. #clock-cells = <0x1>;
  335. compatible = "allwinner,sun7i-a20-apb1-gates-clk";
  336. reg = <0x1c2006c 0x4>;
  337. clocks = <0x16>;
  338. clock-indices = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0xf 0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17>;
  339. clock-output-names = "apb1_i2c0", "apb1_i2c1", "apb1_i2c2", "apb1_i2c3", "apb1_can", "apb1_scr", "apb1_ps20", "apb1_ps21", "apb1_i2c4", "apb1_uart0", "apb1_uart1", "apb1_uart2", "apb1_uart3", "apb1_uart4", "apb1_uart5", "apb1_uart6", "apb1_uart7";
  340. linux,phandle = <0x43>;
  341. phandle = <0x43>;
  342. };
  343.  
  344. clk@01c20080 {
  345. #clock-cells = <0x0>;
  346. compatible = "allwinner,sun4i-a10-mod0-clk";
  347. reg = <0x1c20080 0x4>;
  348. clocks = <0xc 0x12 0x1 0x17 0x1>;
  349. clock-output-names = "nand";
  350. linux,phandle = <0x1f>;
  351. phandle = <0x1f>;
  352. };
  353.  
  354. clk@01c20084 {
  355. #clock-cells = <0x0>;
  356. compatible = "allwinner,sun4i-a10-mod0-clk";
  357. reg = <0x1c20084 0x4>;
  358. clocks = <0xc 0x12 0x1 0x17 0x1>;
  359. clock-output-names = "ms";
  360. linux,phandle = <0x56>;
  361. phandle = <0x56>;
  362. };
  363.  
  364. clk@01c20088 {
  365. #clock-cells = <0x1>;
  366. compatible = "allwinner,sun4i-a10-mmc-clk";
  367. reg = <0x1c20088 0x4>;
  368. clocks = <0xc 0x12 0x1 0x17 0x1>;
  369. clock-output-names = "mmc0", "mmc0_output", "mmc0_sample";
  370. linux,phandle = <0x27>;
  371. phandle = <0x27>;
  372. };
  373.  
  374. clk@01c2008c {
  375. #clock-cells = <0x1>;
  376. compatible = "allwinner,sun4i-a10-mmc-clk";
  377. reg = <0x1c2008c 0x4>;
  378. clocks = <0xc 0x12 0x1 0x17 0x1>;
  379. clock-output-names = "mmc1", "mmc1_output", "mmc1_sample";
  380. linux,phandle = <0x2c>;
  381. phandle = <0x2c>;
  382. };
  383.  
  384. clk@01c20090 {
  385. #clock-cells = <0x1>;
  386. compatible = "allwinner,sun4i-a10-mmc-clk";
  387. reg = <0x1c20090 0x4>;
  388. clocks = <0xc 0x12 0x1 0x17 0x1>;
  389. clock-output-names = "mmc2", "mmc2_output", "mmc2_sample";
  390. linux,phandle = <0x2d>;
  391. phandle = <0x2d>;
  392. };
  393.  
  394. clk@01c20094 {
  395. #clock-cells = <0x1>;
  396. compatible = "allwinner,sun4i-a10-mmc-clk";
  397. reg = <0x1c20094 0x4>;
  398. clocks = <0xc 0x12 0x1 0x17 0x1>;
  399. clock-output-names = "mmc3", "mmc3_output", "mmc3_sample";
  400. linux,phandle = <0x2e>;
  401. phandle = <0x2e>;
  402. };
  403.  
  404. clk@01c20098 {
  405. #clock-cells = <0x0>;
  406. compatible = "allwinner,sun4i-a10-mod0-clk";
  407. reg = <0x1c20098 0x4>;
  408. clocks = <0xc 0x12 0x1 0x17 0x1>;
  409. clock-output-names = "ts";
  410. linux,phandle = <0x57>;
  411. phandle = <0x57>;
  412. };
  413.  
  414. clk@01c2009c {
  415. #clock-cells = <0x0>;
  416. compatible = "allwinner,sun4i-a10-mod0-clk";
  417. reg = <0x1c2009c 0x4>;
  418. clocks = <0xc 0x12 0x1 0x17 0x1>;
  419. clock-output-names = "ss";
  420. linux,phandle = <0x37>;
  421. phandle = <0x37>;
  422. };
  423.  
  424. clk@01c200a0 {
  425. #clock-cells = <0x0>;
  426. compatible = "allwinner,sun4i-a10-mod0-clk";
  427. reg = <0x1c200a0 0x4>;
  428. clocks = <0xc 0x12 0x1 0x17 0x1>;
  429. clock-output-names = "spi0";
  430. linux,phandle = <0x21>;
  431. phandle = <0x21>;
  432. };
  433.  
  434. clk@01c200a4 {
  435. #clock-cells = <0x0>;
  436. compatible = "allwinner,sun4i-a10-mod0-clk";
  437. reg = <0x1c200a4 0x4>;
  438. clocks = <0xc 0x12 0x1 0x17 0x1>;
  439. clock-output-names = "spi1";
  440. linux,phandle = <0x25>;
  441. phandle = <0x25>;
  442. };
  443.  
  444. clk@01c200a8 {
  445. #clock-cells = <0x0>;
  446. compatible = "allwinner,sun4i-a10-mod0-clk";
  447. reg = <0x1c200a8 0x4>;
  448. clocks = <0xc 0x12 0x1 0x17 0x1>;
  449. clock-output-names = "spi2";
  450. linux,phandle = <0x38>;
  451. phandle = <0x38>;
  452. };
  453.  
  454. clk@01c200ac {
  455. #clock-cells = <0x0>;
  456. compatible = "allwinner,sun4i-a10-mod0-clk";
  457. reg = <0x1c200ac 0x4>;
  458. clocks = <0xc 0x12 0x1 0x17 0x1>;
  459. clock-output-names = "pata";
  460. linux,phandle = <0x58>;
  461. phandle = <0x58>;
  462. };
  463.  
  464. clk@01c200b0 {
  465. #clock-cells = <0x0>;
  466. compatible = "allwinner,sun4i-a10-mod0-clk";
  467. reg = <0x1c200b0 0x4>;
  468. clocks = <0xc 0x12 0x1 0x17 0x1>;
  469. clock-output-names = "ir0";
  470. linux,phandle = <0x3c>;
  471. phandle = <0x3c>;
  472. };
  473.  
  474. clk@01c200b4 {
  475. #clock-cells = <0x0>;
  476. compatible = "allwinner,sun4i-a10-mod0-clk";
  477. reg = <0x1c200b4 0x4>;
  478. clocks = <0xc 0x12 0x1 0x17 0x1>;
  479. clock-output-names = "ir1";
  480. linux,phandle = <0x3e>;
  481. phandle = <0x3e>;
  482. };
  483.  
  484. clk@01c200b8 {
  485. #clock-cells = <0x0>;
  486. compatible = "allwinner,sun4i-a10-mod1-clk";
  487. reg = <0x1c200b8 0x4>;
  488. clocks = <0x18 0x3 0x18 0x2 0x18 0x1 0x18 0x0>;
  489. clock-output-names = "i2s0";
  490. linux,phandle = <0x40>;
  491. phandle = <0x40>;
  492. };
  493.  
  494. clk@01c200bc {
  495. #clock-cells = <0x0>;
  496. compatible = "allwinner,sun4i-a10-mod1-clk";
  497. reg = <0x1c200bc 0x4>;
  498. clocks = <0x18 0x3 0x18 0x2 0x18 0x1 0x18 0x0>;
  499. clock-output-names = "ac97";
  500. linux,phandle = <0x59>;
  501. phandle = <0x59>;
  502. };
  503.  
  504. clk@01c200c0 {
  505. #clock-cells = <0x0>;
  506. compatible = "allwinner,sun4i-a10-mod1-clk";
  507. reg = <0x1c200c0 0x4>;
  508. clocks = <0x18 0x3 0x18 0x2 0x18 0x1 0x18 0x0>;
  509. clock-output-names = "spdif";
  510. linux,phandle = <0x3b>;
  511. phandle = <0x3b>;
  512. };
  513.  
  514. clk@01c200c4 {
  515. #clock-cells = <0x0>;
  516. compatible = "allwinner,sun4i-a10-mod0-clk";
  517. reg = <0x1c200c4 0x4>;
  518. clocks = <0xc>;
  519. clock-output-names = "keypad";
  520. linux,phandle = <0x5a>;
  521. phandle = <0x5a>;
  522. };
  523.  
  524. clk@01c200cc {
  525. #clock-cells = <0x1>;
  526. #reset-cells = <0x1>;
  527. compatible = "allwinner,sun4i-a10-usb-clk";
  528. reg = <0x1c200cc 0x4>;
  529. clocks = <0x12 0x1>;
  530. clock-output-names = "usb_ohci0", "usb_ohci1", "usb_phy";
  531. linux,phandle = <0x31>;
  532. phandle = <0x31>;
  533. };
  534.  
  535. clk@01c200d4 {
  536. #clock-cells = <0x0>;
  537. compatible = "allwinner,sun4i-a10-mod0-clk";
  538. reg = <0x1c200d4 0x4>;
  539. clocks = <0xc 0x12 0x1 0x17 0x1>;
  540. clock-output-names = "spi3";
  541. linux,phandle = <0x39>;
  542. phandle = <0x39>;
  543. };
  544.  
  545. clk@01c200d8 {
  546. #clock-cells = <0x0>;
  547. compatible = "allwinner,sun4i-a10-mod1-clk";
  548. reg = <0x1c200d8 0x4>;
  549. clocks = <0x18 0x3 0x18 0x2 0x18 0x1 0x18 0x0>;
  550. clock-output-names = "i2s1";
  551. linux,phandle = <0x3f>;
  552. phandle = <0x3f>;
  553. };
  554.  
  555. clk@01c200dc {
  556. #clock-cells = <0x0>;
  557. compatible = "allwinner,sun4i-a10-mod1-clk";
  558. reg = <0x1c200dc 0x4>;
  559. clocks = <0x18 0x3 0x18 0x2 0x18 0x1 0x18 0x0>;
  560. clock-output-names = "i2s2";
  561. linux,phandle = <0x42>;
  562. phandle = <0x42>;
  563. };
  564.  
  565. clk@01c20100 {
  566. #clock-cells = <0x1>;
  567. compatible = "allwinner,sun4i-a10-dram-gates-clk";
  568. reg = <0x1c20100 0x4>;
  569. clocks = <0x17 0x0>;
  570. clock-indices = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0xf 0x18 0x19 0x1a 0x1b 0x1c 0x1d>;
  571. clock-output-names = "dram_ve", "dram_csi0", "dram_csi1", "dram_ts", "dram_tvd", "dram_tve0", "dram_tve1", "dram_output", "dram_de_fe1", "dram_de_fe0", "dram_de_be0", "dram_de_be1", "dram_de_mp", "dram_ace";
  572. linux,phandle = <0x5>;
  573. phandle = <0x5>;
  574. };
  575.  
  576. clk@01c20104 {
  577. #clock-cells = <0x0>;
  578. #reset-cells = <0x0>;
  579. compatible = "allwinner,sun4i-a10-display-clk";
  580. reg = <0x1c20104 0x4>;
  581. clocks = <0xe 0xf 0x17 0x1>;
  582. clock-output-names = "de-be0";
  583. linux,phandle = <0x3>;
  584. phandle = <0x3>;
  585. };
  586.  
  587. clk@01c20108 {
  588. #clock-cells = <0x0>;
  589. #reset-cells = <0x0>;
  590. compatible = "allwinner,sun4i-a10-display-clk";
  591. reg = <0x1c20108 0x4>;
  592. clocks = <0xe 0xf 0x17 0x1>;
  593. clock-output-names = "de-be1";
  594. linux,phandle = <0x5b>;
  595. phandle = <0x5b>;
  596. };
  597.  
  598. clk@01c2010c {
  599. #clock-cells = <0x0>;
  600. #reset-cells = <0x0>;
  601. compatible = "allwinner,sun4i-a10-display-clk";
  602. reg = <0x1c2010c 0x4>;
  603. clocks = <0xe 0xf 0x17 0x1>;
  604. clock-output-names = "de-fe0";
  605. linux,phandle = <0x5c>;
  606. phandle = <0x5c>;
  607. };
  608.  
  609. clk@01c20110 {
  610. #clock-cells = <0x0>;
  611. #reset-cells = <0x0>;
  612. compatible = "allwinner,sun4i-a10-display-clk";
  613. reg = <0x1c20110 0x4>;
  614. clocks = <0xe 0xf 0x17 0x1>;
  615. clock-output-names = "de-fe1";
  616. linux,phandle = <0x5d>;
  617. phandle = <0x5d>;
  618. };
  619.  
  620. clk@01c20118 {
  621. #clock-cells = <0x0>;
  622. #reset-cells = <0x1>;
  623. compatible = "allwinner,sun4i-a10-tcon-ch0-clk";
  624. reg = <0x1c20118 0x4>;
  625. clocks = <0xe 0xf 0x19 0x1a>;
  626. clock-output-names = "tcon0-ch0-sclk";
  627. linux,phandle = <0x6>;
  628. phandle = <0x6>;
  629. };
  630.  
  631. clk@01c2011c {
  632. #clock-cells = <0x0>;
  633. #reset-cells = <0x1>;
  634. compatible = "allwinner,sun4i-a10-tcon-ch1-clk";
  635. reg = <0x1c2011c 0x4>;
  636. clocks = <0xe 0xf 0x19 0x1a>;
  637. clock-output-names = "tcon1-ch0-sclk";
  638. linux,phandle = <0x5e>;
  639. phandle = <0x5e>;
  640. };
  641.  
  642. clk@01c2012c {
  643. #clock-cells = <0x0>;
  644. compatible = "allwinner,sun4i-a10-tcon-ch0-clk";
  645. reg = <0x1c2012c 0x4>;
  646. clocks = <0xe 0xf 0x19 0x1a>;
  647. clock-output-names = "tcon0-ch1-sclk";
  648. linux,phandle = <0x4>;
  649. phandle = <0x4>;
  650. };
  651.  
  652. clk@01c20130 {
  653. #clock-cells = <0x0>;
  654. compatible = "allwinner,sun4i-a10-tcon-ch1-clk";
  655. reg = <0x1c20130 0x4>;
  656. clocks = <0xe 0xf 0x19 0x1a>;
  657. clock-output-names = "tcon1-ch1-sclk";
  658. linux,phandle = <0x5f>;
  659. phandle = <0x5f>;
  660. };
  661.  
  662. clk@01c2013c {
  663. #clock-cells = <0x0>;
  664. #reset-cells = <0x0>;
  665. compatible = "allwinner,sun4i-a10-ve-clk";
  666. reg = <0x1c2013c 0x4>;
  667. clocks = <0x1b>;
  668. clock-output-names = "ve";
  669. linux,phandle = <0x60>;
  670. phandle = <0x60>;
  671. };
  672.  
  673. clk@01c20140 {
  674. #clock-cells = <0x0>;
  675. compatible = "allwinner,sun4i-a10-codec-clk";
  676. reg = <0x1c20140 0x4>;
  677. clocks = <0x18 0x0>;
  678. clock-output-names = "codec";
  679. linux,phandle = <0x41>;
  680. phandle = <0x41>;
  681. };
  682.  
  683. clk@01c2015c {
  684. #clock-cells = <0x0>;
  685. compatible = "allwinner,sun5i-a13-mbus-clk";
  686. reg = <0x1c2015c 0x4>;
  687. clocks = <0xc 0x12 0x2 0x17 0x1>;
  688. clock-output-names = "mbus";
  689. linux,phandle = <0x61>;
  690. phandle = <0x61>;
  691. };
  692.  
  693. clk@2 {
  694. #clock-cells = <0x0>;
  695. compatible = "fixed-clock";
  696. clock-frequency = <0x17d7840>;
  697. clock-output-names = "mii_phy_tx";
  698. linux,phandle = <0x1c>;
  699. phandle = <0x1c>;
  700. };
  701.  
  702. clk@3 {
  703. #clock-cells = <0x0>;
  704. compatible = "fixed-clock";
  705. clock-frequency = <0x7735940>;
  706. clock-output-names = "gmac_int_tx";
  707. linux,phandle = <0x1d>;
  708. phandle = <0x1d>;
  709. };
  710.  
  711. clk@01c20164 {
  712. #clock-cells = <0x0>;
  713. compatible = "allwinner,sun7i-a20-gmac-clk";
  714. reg = <0x1c20164 0x4>;
  715. clocks = <0x1c 0x1d>;
  716. clock-output-names = "gmac_tx";
  717. linux,phandle = <0x4a>;
  718. phandle = <0x4a>;
  719. };
  720.  
  721. clk@1 {
  722. #clock-cells = <0x0>;
  723. compatible = "fixed-factor-clock";
  724. clock-div = <0x2ee>;
  725. clock-mult = <0x1>;
  726. clocks = <0xc>;
  727. clock-output-names = "osc24M_32k";
  728. linux,phandle = <0x1e>;
  729. phandle = <0x1e>;
  730. };
  731.  
  732. clk@01c201f0 {
  733. #clock-cells = <0x0>;
  734. compatible = "allwinner,sun7i-a20-out-clk";
  735. reg = <0x1c201f0 0x4>;
  736. clocks = <0x1e 0x10 0xc>;
  737. clock-output-names = "clk_out_a";
  738. linux,phandle = <0x62>;
  739. phandle = <0x62>;
  740. };
  741.  
  742. clk@01c201f4 {
  743. #clock-cells = <0x0>;
  744. compatible = "allwinner,sun7i-a20-out-clk";
  745. reg = <0x1c201f4 0x4>;
  746. clocks = <0x1e 0x10 0xc>;
  747. clock-output-names = "clk_out_b";
  748. linux,phandle = <0x63>;
  749. phandle = <0x63>;
  750. };
  751. };
  752.  
  753. soc@01c00000 {
  754. compatible = "simple-bus";
  755. #address-cells = <0x1>;
  756. #size-cells = <0x1>;
  757. ranges;
  758.  
  759. sram-controller@01c00000 {
  760. compatible = "allwinner,sun4i-a10-sram-controller";
  761. reg = <0x1c00000 0x30>;
  762. #address-cells = <0x1>;
  763. #size-cells = <0x1>;
  764. ranges;
  765.  
  766. sram@00000000 {
  767. compatible = "mmio-sram";
  768. reg = <0x0 0xc000>;
  769. #address-cells = <0x1>;
  770. #size-cells = <0x1>;
  771. ranges = <0x0 0x0 0xc000>;
  772. linux,phandle = <0x64>;
  773. phandle = <0x64>;
  774.  
  775. sram-section@8000 {
  776. compatible = "allwinner,sun4i-a10-sram-a3-a4";
  777. reg = <0x8000 0x4000>;
  778. status = "disabled";
  779. linux,phandle = <0x26>;
  780. phandle = <0x26>;
  781. };
  782. };
  783.  
  784. sram@00010000 {
  785. compatible = "mmio-sram";
  786. reg = <0x10000 0x1000>;
  787. #address-cells = <0x1>;
  788. #size-cells = <0x1>;
  789. ranges = <0x0 0x10000 0x1000>;
  790. linux,phandle = <0x65>;
  791. phandle = <0x65>;
  792.  
  793. sram-section@0000 {
  794. compatible = "allwinner,sun4i-a10-sram-d";
  795. reg = <0x0 0x1000>;
  796. status = "okay";
  797. linux,phandle = <0x30>;
  798. phandle = <0x30>;
  799. };
  800. };
  801. };
  802.  
  803. interrupt-controller@01c00030 {
  804. compatible = "allwinner,sun7i-a20-sc-nmi";
  805. interrupt-controller;
  806. #interrupt-cells = <0x2>;
  807. reg = <0x1c00030 0xc>;
  808. interrupts = <0x0 0x0 0x4>;
  809. linux,phandle = <0x48>;
  810. phandle = <0x48>;
  811. };
  812.  
  813. dma-controller@01c02000 {
  814. compatible = "allwinner,sun4i-a10-dma";
  815. reg = <0x1c02000 0x1000>;
  816. interrupts = <0x0 0x1b 0x4>;
  817. clocks = <0x2 0x6>;
  818. #dma-cells = <0x2>;
  819. linux,phandle = <0x20>;
  820. phandle = <0x20>;
  821. };
  822.  
  823. nand@01c03000 {
  824. compatible = "allwinner,sun4i-a10-nand";
  825. reg = <0x1c03000 0x1000>;
  826. interrupts = <0x0 0x25 0x4>;
  827. clocks = <0x2 0xd 0x1f>;
  828. clock-names = "ahb", "mod";
  829. dmas = <0x20 0x1 0x3>;
  830. dma-names = "rxtx";
  831. status = "disabled";
  832. #address-cells = <0x1>;
  833. #size-cells = <0x0>;
  834. linux,phandle = <0x66>;
  835. phandle = <0x66>;
  836. };
  837.  
  838. spi@01c05000 {
  839. compatible = "allwinner,sun4i-a10-spi";
  840. reg = <0x1c05000 0x1000>;
  841. interrupts = <0x0 0xa 0x4>;
  842. clocks = <0x2 0x14 0x21>;
  843. clock-names = "ahb", "mod";
  844. dmas = <0x20 0x1 0x1b 0x20 0x1 0x1a>;
  845. dma-names = "rx", "tx";
  846. status = "okay";
  847. #address-cells = <0x1>;
  848. #size-cells = <0x0>;
  849. num-cs = <0x4>;
  850. pinctrl-names = "default";
  851. pinctrl-0 = <0x22 0x23 0x24>;
  852. linux,phandle = <0x67>;
  853. phandle = <0x67>;
  854. };
  855.  
  856. spi@01c06000 {
  857. compatible = "allwinner,sun4i-a10-spi";
  858. reg = <0x1c06000 0x1000>;
  859. interrupts = <0x0 0xb 0x4>;
  860. clocks = <0x2 0x15 0x25>;
  861. clock-names = "ahb", "mod";
  862. dmas = <0x20 0x1 0x9 0x20 0x1 0x8>;
  863. dma-names = "rx", "tx";
  864. status = "disabled";
  865. #address-cells = <0x1>;
  866. #size-cells = <0x0>;
  867. num-cs = <0x1>;
  868. linux,phandle = <0x68>;
  869. phandle = <0x68>;
  870. };
  871.  
  872. ethernet@01c0b000 {
  873. compatible = "allwinner,sun4i-a10-emac";
  874. reg = <0x1c0b000 0x1000>;
  875. interrupts = <0x0 0x37 0x4>;
  876. clocks = <0x2 0x11>;
  877. allwinner,sram = <0x26 0x1>;
  878. status = "disabled";
  879. linux,phandle = <0x69>;
  880. phandle = <0x69>;
  881. };
  882.  
  883. mdio@01c0b080 {
  884. compatible = "allwinner,sun4i-a10-mdio";
  885. reg = <0x1c0b080 0x14>;
  886. status = "disabled";
  887. #address-cells = <0x1>;
  888. #size-cells = <0x0>;
  889. linux,phandle = <0x6a>;
  890. phandle = <0x6a>;
  891. };
  892.  
  893. mmc@01c0f000 {
  894. compatible = "allwinner,sun7i-a20-mmc";
  895. reg = <0x1c0f000 0x1000>;
  896. clocks = <0x2 0x8 0x27 0x0 0x27 0x1 0x27 0x2>;
  897. clock-names = "ahb", "mmc", "output", "sample";
  898. interrupts = <0x0 0x20 0x4>;
  899. status = "okay";
  900. #address-cells = <0x1>;
  901. #size-cells = <0x0>;
  902. pinctrl-names = "default";
  903. pinctrl-0 = <0x28 0x29>;
  904. vmmc-supply = <0x2a>;
  905. bus-width = <0x4>;
  906. cd-gpios = <0x2b 0x7 0xa 0x0>;
  907. cd-inverted;
  908. linux,phandle = <0x6b>;
  909. phandle = <0x6b>;
  910. };
  911.  
  912. mmc@01c10000 {
  913. compatible = "allwinner,sun7i-a20-mmc";
  914. reg = <0x1c10000 0x1000>;
  915. clocks = <0x2 0x9 0x2c 0x0 0x2c 0x1 0x2c 0x2>;
  916. clock-names = "ahb", "mmc", "output", "sample";
  917. interrupts = <0x0 0x21 0x4>;
  918. status = "disabled";
  919. #address-cells = <0x1>;
  920. #size-cells = <0x0>;
  921. linux,phandle = <0x6c>;
  922. phandle = <0x6c>;
  923. };
  924.  
  925. mmc@01c11000 {
  926. compatible = "allwinner,sun7i-a20-mmc";
  927. reg = <0x1c11000 0x1000>;
  928. clocks = <0x2 0xa 0x2d 0x0 0x2d 0x1 0x2d 0x2>;
  929. clock-names = "ahb", "mmc", "output", "sample";
  930. interrupts = <0x0 0x22 0x4>;
  931. status = "disabled";
  932. #address-cells = <0x1>;
  933. #size-cells = <0x0>;
  934. linux,phandle = <0x6d>;
  935. phandle = <0x6d>;
  936. };
  937.  
  938. mmc@01c12000 {
  939. compatible = "allwinner,sun7i-a20-mmc";
  940. reg = <0x1c12000 0x1000>;
  941. clocks = <0x2 0xb 0x2e 0x0 0x2e 0x1 0x2e 0x2>;
  942. clock-names = "ahb", "mmc", "output", "sample";
  943. interrupts = <0x0 0x23 0x4>;
  944. status = "disabled";
  945. #address-cells = <0x1>;
  946. #size-cells = <0x0>;
  947. linux,phandle = <0x6e>;
  948. phandle = <0x6e>;
  949. };
  950.  
  951. usb@01c13000 {
  952. compatible = "allwinner,sun4i-a10-musb";
  953. reg = <0x1c13000 0x400>;
  954. clocks = <0x2 0x0>;
  955. interrupts = <0x0 0x26 0x4>;
  956. interrupt-names = "mc";
  957. phys = <0x2f 0x0>;
  958. phy-names = "usb";
  959. extcon = <0x2f 0x0>;
  960. allwinner,sram = <0x30 0x1>;
  961. status = "okay";
  962. dr_mode = "otg";
  963. linux,phandle = <0x6f>;
  964. phandle = <0x6f>;
  965. };
  966.  
  967. phy@01c13400 {
  968. #phy-cells = <0x1>;
  969. compatible = "allwinner,sun7i-a20-usb-phy";
  970. reg = <0x1c13400 0x10 0x1c14800 0x4 0x1c1c800 0x4>;
  971. reg-names = "phy_ctrl", "pmu1", "pmu2";
  972. clocks = <0x31 0x8>;
  973. clock-names = "usb_phy";
  974. resets = <0x31 0x0 0x31 0x1 0x31 0x2>;
  975. reset-names = "usb0_reset", "usb1_reset", "usb2_reset";
  976. status = "okay";
  977. pinctrl-names = "default";
  978. pinctrl-0 = <0x32>;
  979. usb0_id_det-gpio = <0x2b 0x7 0x4 0x0>;
  980. usb0_vbus_power-supply = <0x33>;
  981. usb0_vbus-supply = <0x34>;
  982. usb1_vbus-supply = <0x35>;
  983. usb2_vbus-supply = <0x36>;
  984. linux,phandle = <0x2f>;
  985. phandle = <0x2f>;
  986. };
  987.  
  988. usb@01c14000 {
  989. compatible = "allwinner,sun7i-a20-ehci", "generic-ehci";
  990. reg = <0x1c14000 0x100>;
  991. interrupts = <0x0 0x27 0x4>;
  992. clocks = <0x2 0x1>;
  993. phys = <0x2f 0x1>;
  994. phy-names = "usb";
  995. status = "okay";
  996. linux,phandle = <0x70>;
  997. phandle = <0x70>;
  998. };
  999.  
  1000. usb@01c14400 {
  1001. compatible = "allwinner,sun7i-a20-ohci", "generic-ohci";
  1002. reg = <0x1c14400 0x100>;
  1003. interrupts = <0x0 0x40 0x4>;
  1004. clocks = <0x31 0x6 0x2 0x2>;
  1005. phys = <0x2f 0x1>;
  1006. phy-names = "usb";
  1007. status = "okay";
  1008. linux,phandle = <0x71>;
  1009. phandle = <0x71>;
  1010. };
  1011.  
  1012. crypto-engine@01c15000 {
  1013. compatible = "allwinner,sun4i-a10-crypto";
  1014. reg = <0x1c15000 0x1000>;
  1015. interrupts = <0x0 0x56 0x4>;
  1016. clocks = <0x2 0x5 0x37>;
  1017. clock-names = "ahb", "mod";
  1018. linux,phandle = <0x72>;
  1019. phandle = <0x72>;
  1020. };
  1021.  
  1022. spi@01c17000 {
  1023. compatible = "allwinner,sun4i-a10-spi";
  1024. reg = <0x1c17000 0x1000>;
  1025. interrupts = <0x0 0xc 0x4>;
  1026. clocks = <0x2 0x16 0x38>;
  1027. clock-names = "ahb", "mod";
  1028. dmas = <0x20 0x1 0x1d 0x20 0x1 0x1c>;
  1029. dma-names = "rx", "tx";
  1030. status = "disabled";
  1031. #address-cells = <0x1>;
  1032. #size-cells = <0x0>;
  1033. num-cs = <0x1>;
  1034. linux,phandle = <0x73>;
  1035. phandle = <0x73>;
  1036. };
  1037.  
  1038. sata@01c18000 {
  1039. compatible = "allwinner,sun4i-a10-ahci";
  1040. reg = <0x1c18000 0x1000>;
  1041. interrupts = <0x0 0x38 0x4>;
  1042. clocks = <0x12 0x0 0x2 0x19>;
  1043. status = "okay";
  1044. linux,phandle = <0x74>;
  1045. phandle = <0x74>;
  1046. };
  1047.  
  1048. usb@01c1c000 {
  1049. compatible = "allwinner,sun7i-a20-ehci", "generic-ehci";
  1050. reg = <0x1c1c000 0x100>;
  1051. interrupts = <0x0 0x28 0x4>;
  1052. clocks = <0x2 0x3>;
  1053. phys = <0x2f 0x2>;
  1054. phy-names = "usb";
  1055. status = "okay";
  1056. linux,phandle = <0x75>;
  1057. phandle = <0x75>;
  1058. };
  1059.  
  1060. usb@01c1c400 {
  1061. compatible = "allwinner,sun7i-a20-ohci", "generic-ohci";
  1062. reg = <0x1c1c400 0x100>;
  1063. interrupts = <0x0 0x41 0x4>;
  1064. clocks = <0x31 0x7 0x2 0x4>;
  1065. phys = <0x2f 0x2>;
  1066. phy-names = "usb";
  1067. status = "okay";
  1068. linux,phandle = <0x76>;
  1069. phandle = <0x76>;
  1070. };
  1071.  
  1072. spi@01c1f000 {
  1073. compatible = "allwinner,sun4i-a10-spi";
  1074. reg = <0x1c1f000 0x1000>;
  1075. interrupts = <0x0 0x32 0x4>;
  1076. clocks = <0x2 0x17 0x39>;
  1077. clock-names = "ahb", "mod";
  1078. dmas = <0x20 0x1 0x1f 0x20 0x1 0x1e>;
  1079. dma-names = "rx", "tx";
  1080. status = "disabled";
  1081. #address-cells = <0x1>;
  1082. #size-cells = <0x0>;
  1083. num-cs = <0x1>;
  1084. linux,phandle = <0x77>;
  1085. phandle = <0x77>;
  1086. };
  1087.  
  1088. pinctrl@01c20800 {
  1089. compatible = "allwinner,sun7i-a20-pinctrl";
  1090. reg = <0x1c20800 0x400>;
  1091. interrupts = <0x0 0x1c 0x4>;
  1092. clocks = <0x3a 0x5 0xc 0x10>;
  1093. clock-names = "apb", "hosc", "losc";
  1094. gpio-controller;
  1095. interrupt-controller;
  1096. #interrupt-cells = <0x3>;
  1097. #gpio-cells = <0x3>;
  1098. linux,phandle = <0x2b>;
  1099. phandle = <0x2b>;
  1100.  
  1101. clk_out_a@0 {
  1102. pins = "PI12";
  1103. function = "clk_out_a";
  1104. linux,phandle = <0x78>;
  1105. phandle = <0x78>;
  1106. };
  1107.  
  1108. clk_out_b@0 {
  1109. pins = "PI13";
  1110. function = "clk_out_b";
  1111. linux,phandle = <0x79>;
  1112. phandle = <0x79>;
  1113. };
  1114.  
  1115. emac0@0 {
  1116. pins = "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16";
  1117. function = "emac";
  1118. linux,phandle = <0x7a>;
  1119. phandle = <0x7a>;
  1120. };
  1121.  
  1122. gmac_mii@0 {
  1123. pins = "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16";
  1124. function = "gmac";
  1125. linux,phandle = <0x7b>;
  1126. phandle = <0x7b>;
  1127. };
  1128.  
  1129. gmac_rgmii@0 {
  1130. pins = "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA10", "PA11", "PA12", "PA13", "PA15", "PA16";
  1131. function = "gmac";
  1132. drive-strength = <0x28>;
  1133. linux,phandle = <0x4b>;
  1134. phandle = <0x4b>;
  1135. };
  1136.  
  1137. i2c0@0 {
  1138. pins = "PB0", "PB1";
  1139. function = "i2c0";
  1140. linux,phandle = <0x47>;
  1141. phandle = <0x47>;
  1142. };
  1143.  
  1144. i2c1@0 {
  1145. pins = "PB18", "PB19";
  1146. function = "i2c1";
  1147. linux,phandle = <0x7c>;
  1148. phandle = <0x7c>;
  1149. };
  1150.  
  1151. i2c2@0 {
  1152. pins = "PB20", "PB21";
  1153. function = "i2c2";
  1154. linux,phandle = <0x49>;
  1155. phandle = <0x49>;
  1156. };
  1157.  
  1158. i2c3@0 {
  1159. pins = "PI0", "PI1";
  1160. function = "i2c3";
  1161. linux,phandle = <0x7d>;
  1162. phandle = <0x7d>;
  1163. };
  1164.  
  1165. ir0@0 {
  1166. pins = "PB4";
  1167. function = "ir0";
  1168. linux,phandle = <0x3d>;
  1169. phandle = <0x3d>;
  1170. };
  1171.  
  1172. ir0@1 {
  1173. pins = "PB3";
  1174. function = "ir0";
  1175. linux,phandle = <0x7e>;
  1176. phandle = <0x7e>;
  1177. };
  1178.  
  1179. ir1@0 {
  1180. pins = "PB23";
  1181. function = "ir1";
  1182. linux,phandle = <0x7f>;
  1183. phandle = <0x7f>;
  1184. };
  1185.  
  1186. ir1@1 {
  1187. pins = "PB22";
  1188. function = "ir1";
  1189. linux,phandle = <0x80>;
  1190. phandle = <0x80>;
  1191. };
  1192.  
  1193. mmc0@0 {
  1194. pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
  1195. function = "mmc0";
  1196. drive-strength = <0x1e>;
  1197. bias-pull-up;
  1198. linux,phandle = <0x28>;
  1199. phandle = <0x28>;
  1200. };
  1201.  
  1202. mmc0_cd_pin@0 {
  1203. pins = "PH10";
  1204. function = "gpio_in";
  1205. bias-pull-up;
  1206. linux,phandle = <0x29>;
  1207. phandle = <0x29>;
  1208. };
  1209.  
  1210. mmc2@0 {
  1211. pins = "PC6", "PC7", "PC8", "PC9", "PC10", "PC11";
  1212. function = "mmc2";
  1213. drive-strength = <0x1e>;
  1214. bias-pull-up;
  1215. linux,phandle = <0x81>;
  1216. phandle = <0x81>;
  1217. };
  1218.  
  1219. mmc3@0 {
  1220. pins = "PI4", "PI5", "PI6", "PI7", "PI8", "PI9";
  1221. function = "mmc3";
  1222. drive-strength = <0x1e>;
  1223. bias-pull-up;
  1224. linux,phandle = <0x82>;
  1225. phandle = <0x82>;
  1226. };
  1227.  
  1228. ps20@0 {
  1229. pins = "PI20", "PI21";
  1230. function = "ps2";
  1231. linux,phandle = <0x83>;
  1232. phandle = <0x83>;
  1233. };
  1234.  
  1235. ps21@0 {
  1236. pins = "PH12", "PH13";
  1237. function = "ps2";
  1238. linux,phandle = <0x84>;
  1239. phandle = <0x84>;
  1240. };
  1241.  
  1242. pwm0@0 {
  1243. pins = "PB2";
  1244. function = "pwm";
  1245. linux,phandle = <0x85>;
  1246. phandle = <0x85>;
  1247. };
  1248.  
  1249. pwm1@0 {
  1250. pins = "PI3";
  1251. function = "pwm";
  1252. linux,phandle = <0x86>;
  1253. phandle = <0x86>;
  1254. };
  1255.  
  1256. spdif@0 {
  1257. pins = "PB13";
  1258. function = "spdif";
  1259. bias-pull-up;
  1260. linux,phandle = <0x87>;
  1261. phandle = <0x87>;
  1262. };
  1263.  
  1264. spi0@0 {
  1265. pins = "PI11", "PI12", "PI13";
  1266. function = "spi0";
  1267. linux,phandle = <0x22>;
  1268. phandle = <0x22>;
  1269. };
  1270.  
  1271. spi0_cs0@0 {
  1272. pins = "PI10";
  1273. function = "spi0";
  1274. linux,phandle = <0x23>;
  1275. phandle = <0x23>;
  1276. };
  1277.  
  1278. spi0_cs1@0 {
  1279. pins = "PI14";
  1280. function = "spi0";
  1281. linux,phandle = <0x24>;
  1282. phandle = <0x24>;
  1283. };
  1284.  
  1285. spi1@0 {
  1286. pins = "PI17", "PI18", "PI19";
  1287. function = "spi1";
  1288. linux,phandle = <0x88>;
  1289. phandle = <0x88>;
  1290. };
  1291.  
  1292. spi1_cs0@0 {
  1293. pins = "PI16";
  1294. function = "spi1";
  1295. linux,phandle = <0x89>;
  1296. phandle = <0x89>;
  1297. };
  1298.  
  1299. spi2@0 {
  1300. pins = "PC20", "PC21", "PC22";
  1301. function = "spi2";
  1302. linux,phandle = <0x8a>;
  1303. phandle = <0x8a>;
  1304. };
  1305.  
  1306. spi2@1 {
  1307. pins = "PB15", "PB16", "PB17";
  1308. function = "spi2";
  1309. linux,phandle = <0x8b>;
  1310. phandle = <0x8b>;
  1311. };
  1312.  
  1313. spi2_cs0@0 {
  1314. pins = "PC19";
  1315. function = "spi2";
  1316. linux,phandle = <0x8c>;
  1317. phandle = <0x8c>;
  1318. };
  1319.  
  1320. spi2_cs0@1 {
  1321. pins = "PB14";
  1322. function = "spi2";
  1323. linux,phandle = <0x8d>;
  1324. phandle = <0x8d>;
  1325. };
  1326.  
  1327. uart0@0 {
  1328. pins = "PB22", "PB23";
  1329. function = "uart0";
  1330. linux,phandle = <0x44>;
  1331. phandle = <0x44>;
  1332. };
  1333.  
  1334. uart2@0 {
  1335. pins = "PI16", "PI17", "PI18", "PI19";
  1336. function = "uart2";
  1337. linux,phandle = <0x8e>;
  1338. phandle = <0x8e>;
  1339. };
  1340.  
  1341. uart3@0 {
  1342. pins = "PG6", "PG7", "PG8", "PG9";
  1343. function = "uart3";
  1344. linux,phandle = <0x8f>;
  1345. phandle = <0x8f>;
  1346. };
  1347.  
  1348. uart3@1 {
  1349. pins = "PH0", "PH1";
  1350. function = "uart3";
  1351. linux,phandle = <0x45>;
  1352. phandle = <0x45>;
  1353. };
  1354.  
  1355. uart4@0 {
  1356. pins = "PG10", "PG11";
  1357. function = "uart4";
  1358. linux,phandle = <0x90>;
  1359. phandle = <0x90>;
  1360. };
  1361.  
  1362. uart4@1 {
  1363. pins = "PH4", "PH5";
  1364. function = "uart4";
  1365. linux,phandle = <0x91>;
  1366. phandle = <0x91>;
  1367. };
  1368.  
  1369. uart5@0 {
  1370. pins = "PI10", "PI11";
  1371. function = "uart5";
  1372. linux,phandle = <0x92>;
  1373. phandle = <0x92>;
  1374. };
  1375.  
  1376. uart6@0 {
  1377. pins = "PI12", "PI13";
  1378. function = "uart6";
  1379. linux,phandle = <0x93>;
  1380. phandle = <0x93>;
  1381. };
  1382.  
  1383. uart7@0 {
  1384. pins = "PI20", "PI21";
  1385. function = "uart7";
  1386. linux,phandle = <0x46>;
  1387. phandle = <0x46>;
  1388. };
  1389.  
  1390. ahci_pwr_pin@0 {
  1391. pins = "PB8";
  1392. function = "gpio_out";
  1393. linux,phandle = <0x4e>;
  1394. phandle = <0x4e>;
  1395. };
  1396.  
  1397. usb0_vbus_pin@0 {
  1398. pins = "PB9";
  1399. function = "gpio_out";
  1400. linux,phandle = <0x4f>;
  1401. phandle = <0x4f>;
  1402. };
  1403.  
  1404. usb1_vbus_pin@0 {
  1405. pins = "PH6";
  1406. function = "gpio_out";
  1407. linux,phandle = <0x50>;
  1408. phandle = <0x50>;
  1409. };
  1410.  
  1411. usb2_vbus_pin@0 {
  1412. pins = "PH3";
  1413. function = "gpio_out";
  1414. linux,phandle = <0x51>;
  1415. phandle = <0x51>;
  1416. };
  1417.  
  1418. usb0_id_detect_pin@0 {
  1419. pins = "PH4";
  1420. function = "gpio_in";
  1421. bias-pull-up;
  1422. linux,phandle = <0x32>;
  1423. phandle = <0x32>;
  1424. };
  1425.  
  1426. gmac_power_pin@0 {
  1427. pins = "PH23";
  1428. function = "gpio_out";
  1429. linux,phandle = <0x53>;
  1430. phandle = <0x53>;
  1431. };
  1432.  
  1433. led_pins@0 {
  1434. pins = "PH24";
  1435. function = "gpio_out";
  1436. linux,phandle = <0x52>;
  1437. phandle = <0x52>;
  1438. };
  1439. };
  1440.  
  1441. timer@01c20c00 {
  1442. compatible = "allwinner,sun4i-a10-timer";
  1443. reg = <0x1c20c00 0x90>;
  1444. interrupts = <0x0 0x16 0x4 0x0 0x17 0x4 0x0 0x18 0x4 0x0 0x19 0x4 0x0 0x43 0x4 0x0 0x44 0x4>;
  1445. clocks = <0xc>;
  1446. };
  1447.  
  1448. watchdog@01c20c90 {
  1449. compatible = "allwinner,sun4i-a10-wdt";
  1450. reg = <0x1c20c90 0x10>;
  1451. linux,phandle = <0x94>;
  1452. phandle = <0x94>;
  1453. };
  1454.  
  1455. rtc@01c20d00 {
  1456. compatible = "allwinner,sun7i-a20-rtc";
  1457. reg = <0x1c20d00 0x20>;
  1458. interrupts = <0x0 0x18 0x4>;
  1459. linux,phandle = <0x95>;
  1460. phandle = <0x95>;
  1461. };
  1462.  
  1463. pwm@01c20e00 {
  1464. compatible = "allwinner,sun7i-a20-pwm";
  1465. reg = <0x1c20e00 0xc>;
  1466. clocks = <0xc>;
  1467. #pwm-cells = <0x3>;
  1468. status = "disabled";
  1469. linux,phandle = <0x96>;
  1470. phandle = <0x96>;
  1471. };
  1472.  
  1473. spdif@01c21000 {
  1474. #sound-dai-cells = <0x0>;
  1475. compatible = "allwinner,sun4i-a10-spdif";
  1476. reg = <0x1c21000 0x400>;
  1477. interrupts = <0x0 0xd 0x4>;
  1478. clocks = <0x3a 0x1 0x3b>;
  1479. clock-names = "apb", "spdif";
  1480. dmas = <0x20 0x0 0x2 0x20 0x0 0x2>;
  1481. dma-names = "rx", "tx";
  1482. status = "disabled";
  1483. linux,phandle = <0x97>;
  1484. phandle = <0x97>;
  1485. };
  1486.  
  1487. ir@01c21800 {
  1488. compatible = "allwinner,sun4i-a10-ir";
  1489. clocks = <0x3a 0x6 0x3c>;
  1490. clock-names = "apb", "ir";
  1491. interrupts = <0x0 0x5 0x4>;
  1492. reg = <0x1c21800 0x40>;
  1493. status = "okay";
  1494. pinctrl-names = "default";
  1495. pinctrl-0 = <0x3d>;
  1496. linux,phandle = <0x98>;
  1497. phandle = <0x98>;
  1498. };
  1499.  
  1500. ir@01c21c00 {
  1501. compatible = "allwinner,sun4i-a10-ir";
  1502. clocks = <0x3a 0x7 0x3e>;
  1503. clock-names = "apb", "ir";
  1504. interrupts = <0x0 0x6 0x4>;
  1505. reg = <0x1c21c00 0x40>;
  1506. status = "disabled";
  1507. linux,phandle = <0x99>;
  1508. phandle = <0x99>;
  1509. };
  1510.  
  1511. i2s@01c22000 {
  1512. #sound-dai-cells = <0x0>;
  1513. compatible = "allwinner,sun4i-a10-i2s";
  1514. reg = <0x1c22000 0x400>;
  1515. interrupts = <0x0 0x57 0x4>;
  1516. clocks = <0x3a 0x4 0x3f>;
  1517. clock-names = "apb", "mod";
  1518. dmas = <0x20 0x0 0x4 0x20 0x0 0x4>;
  1519. dma-names = "rx", "tx";
  1520. status = "disabled";
  1521. linux,phandle = <0x9a>;
  1522. phandle = <0x9a>;
  1523. };
  1524.  
  1525. i2s@01c22400 {
  1526. #sound-dai-cells = <0x0>;
  1527. compatible = "allwinner,sun4i-a10-i2s";
  1528. reg = <0x1c22400 0x400>;
  1529. interrupts = <0x0 0x10 0x4>;
  1530. clocks = <0x3a 0x3 0x40>;
  1531. clock-names = "apb", "mod";
  1532. dmas = <0x20 0x0 0x3 0x20 0x0 0x3>;
  1533. dma-names = "rx", "tx";
  1534. status = "disabled";
  1535. linux,phandle = <0x9b>;
  1536. phandle = <0x9b>;
  1537. };
  1538.  
  1539. lradc@01c22800 {
  1540. compatible = "allwinner,sun4i-a10-lradc-keys";
  1541. reg = <0x1c22800 0x100>;
  1542. interrupts = <0x0 0x1f 0x4>;
  1543. status = "disabled";
  1544. linux,phandle = <0x9c>;
  1545. phandle = <0x9c>;
  1546. };
  1547.  
  1548. codec@01c22c00 {
  1549. #sound-dai-cells = <0x0>;
  1550. compatible = "allwinner,sun7i-a20-codec";
  1551. reg = <0x1c22c00 0x40>;
  1552. interrupts = <0x0 0x1e 0x4>;
  1553. clocks = <0x3a 0x0 0x41>;
  1554. clock-names = "apb", "codec";
  1555. dmas = <0x20 0x0 0x13 0x20 0x0 0x13>;
  1556. dma-names = "rx", "tx";
  1557. status = "okay";
  1558. linux,phandle = <0x9d>;
  1559. phandle = <0x9d>;
  1560. };
  1561.  
  1562. eeprom@01c23800 {
  1563. compatible = "allwinner,sun7i-a20-sid";
  1564. reg = <0x1c23800 0x200>;
  1565. linux,phandle = <0x9e>;
  1566. phandle = <0x9e>;
  1567. };
  1568.  
  1569. i2s@01c24400 {
  1570. #sound-dai-cells = <0x0>;
  1571. compatible = "allwinner,sun4i-a10-i2s";
  1572. reg = <0x1c24400 0x400>;
  1573. interrupts = <0x0 0x5a 0x4>;
  1574. clocks = <0x3a 0x8 0x42>;
  1575. clock-names = "apb", "mod";
  1576. dmas = <0x20 0x0 0x6 0x20 0x0 0x6>;
  1577. dma-names = "rx", "tx";
  1578. status = "disabled";
  1579. linux,phandle = <0x9f>;
  1580. phandle = <0x9f>;
  1581. };
  1582.  
  1583. rtp@01c25000 {
  1584. compatible = "allwinner,sun5i-a13-ts";
  1585. reg = <0x1c25000 0x100>;
  1586. interrupts = <0x0 0x1d 0x4>;
  1587. #thermal-sensor-cells = <0x0>;
  1588. linux,phandle = <0x9>;
  1589. phandle = <0x9>;
  1590. };
  1591.  
  1592. serial@01c28000 {
  1593. compatible = "snps,dw-apb-uart";
  1594. reg = <0x1c28000 0x400>;
  1595. interrupts = <0x0 0x1 0x4>;
  1596. reg-shift = <0x2>;
  1597. reg-io-width = <0x4>;
  1598. clocks = <0x43 0x10>;
  1599. status = "okay";
  1600. pinctrl-names = "default";
  1601. pinctrl-0 = <0x44>;
  1602. linux,phandle = <0xa0>;
  1603. phandle = <0xa0>;
  1604. };
  1605.  
  1606. serial@01c28400 {
  1607. compatible = "snps,dw-apb-uart";
  1608. reg = <0x1c28400 0x400>;
  1609. interrupts = <0x0 0x2 0x4>;
  1610. reg-shift = <0x2>;
  1611. reg-io-width = <0x4>;
  1612. clocks = <0x43 0x11>;
  1613. status = "disabled";
  1614. linux,phandle = <0xa1>;
  1615. phandle = <0xa1>;
  1616. };
  1617.  
  1618. serial@01c28800 {
  1619. compatible = "snps,dw-apb-uart";
  1620. reg = <0x1c28800 0x400>;
  1621. interrupts = <0x0 0x3 0x4>;
  1622. reg-shift = <0x2>;
  1623. reg-io-width = <0x4>;
  1624. clocks = <0x43 0x12>;
  1625. status = "disabled";
  1626. linux,phandle = <0xa2>;
  1627. phandle = <0xa2>;
  1628. };
  1629.  
  1630. serial@01c28c00 {
  1631. compatible = "snps,dw-apb-uart";
  1632. reg = <0x1c28c00 0x400>;
  1633. interrupts = <0x0 0x4 0x4>;
  1634. reg-shift = <0x2>;
  1635. reg-io-width = <0x4>;
  1636. clocks = <0x43 0x13>;
  1637. status = "okay";
  1638. pinctrl-names = "default";
  1639. pinctrl-0 = <0x45>;
  1640. linux,phandle = <0xa3>;
  1641. phandle = <0xa3>;
  1642. };
  1643.  
  1644. serial@01c29000 {
  1645. compatible = "snps,dw-apb-uart";
  1646. reg = <0x1c29000 0x400>;
  1647. interrupts = <0x0 0x11 0x4>;
  1648. reg-shift = <0x2>;
  1649. reg-io-width = <0x4>;
  1650. clocks = <0x43 0x14>;
  1651. status = "disabled";
  1652. linux,phandle = <0xa4>;
  1653. phandle = <0xa4>;
  1654. };
  1655.  
  1656. serial@01c29400 {
  1657. compatible = "snps,dw-apb-uart";
  1658. reg = <0x1c29400 0x400>;
  1659. interrupts = <0x0 0x12 0x4>;
  1660. reg-shift = <0x2>;
  1661. reg-io-width = <0x4>;
  1662. clocks = <0x43 0x15>;
  1663. status = "disabled";
  1664. linux,phandle = <0xa5>;
  1665. phandle = <0xa5>;
  1666. };
  1667.  
  1668. serial@01c29800 {
  1669. compatible = "snps,dw-apb-uart";
  1670. reg = <0x1c29800 0x400>;
  1671. interrupts = <0x0 0x13 0x4>;
  1672. reg-shift = <0x2>;
  1673. reg-io-width = <0x4>;
  1674. clocks = <0x43 0x16>;
  1675. status = "disabled";
  1676. linux,phandle = <0xa6>;
  1677. phandle = <0xa6>;
  1678. };
  1679.  
  1680. serial@01c29c00 {
  1681. compatible = "snps,dw-apb-uart";
  1682. reg = <0x1c29c00 0x400>;
  1683. interrupts = <0x0 0x14 0x4>;
  1684. reg-shift = <0x2>;
  1685. reg-io-width = <0x4>;
  1686. clocks = <0x43 0x17>;
  1687. status = "okay";
  1688. pinctrl-names = "default";
  1689. pinctrl-0 = <0x46>;
  1690. linux,phandle = <0xa7>;
  1691. phandle = <0xa7>;
  1692. };
  1693.  
  1694. i2c@01c2ac00 {
  1695. compatible = "allwinner,sun7i-a20-i2c", "allwinner,sun4i-a10-i2c";
  1696. reg = <0x1c2ac00 0x400>;
  1697. interrupts = <0x0 0x7 0x4>;
  1698. clocks = <0x43 0x0>;
  1699. status = "okay";
  1700. #address-cells = <0x1>;
  1701. #size-cells = <0x0>;
  1702. pinctrl-names = "default";
  1703. pinctrl-0 = <0x47>;
  1704. linux,phandle = <0xa8>;
  1705. phandle = <0xa8>;
  1706.  
  1707. pmic@34 {
  1708. reg = <0x34>;
  1709. interrupt-parent = <0x48>;
  1710. interrupts = <0x0 0x8>;
  1711. compatible = "x-powers,axp209";
  1712. interrupt-controller;
  1713. #interrupt-cells = <0x1>;
  1714. linux,phandle = <0xa9>;
  1715. phandle = <0xa9>;
  1716.  
  1717. gpio {
  1718. compatible = "x-powers,axp209-gpio";
  1719. gpio-controller;
  1720. #gpio-cells = <0x2>;
  1721. linux,phandle = <0xaa>;
  1722. phandle = <0xaa>;
  1723. };
  1724.  
  1725. regulators {
  1726. x-powers,dcdc-freq = <0x5dc>;
  1727.  
  1728. dcdc2 {
  1729. regulator-name = "vdd-cpu";
  1730. regulator-always-on;
  1731. regulator-min-microvolt = <0xf4240>;
  1732. regulator-max-microvolt = <0x162010>;
  1733. linux,phandle = <0x8>;
  1734. phandle = <0x8>;
  1735. };
  1736.  
  1737. dcdc3 {
  1738. regulator-name = "vdd-int-dll";
  1739. regulator-always-on;
  1740. regulator-min-microvolt = <0xf4240>;
  1741. regulator-max-microvolt = <0x155cc0>;
  1742. linux,phandle = <0xab>;
  1743. phandle = <0xab>;
  1744. };
  1745.  
  1746. ldo1 {
  1747. regulator-always-on;
  1748. regulator-min-microvolt = <0x13d620>;
  1749. regulator-max-microvolt = <0x13d620>;
  1750. regulator-name = "vdd-rtc";
  1751. linux,phandle = <0xac>;
  1752. phandle = <0xac>;
  1753. };
  1754.  
  1755. ldo2 {
  1756. regulator-name = "avcc";
  1757. regulator-always-on;
  1758. regulator-min-microvolt = <0x2dc6c0>;
  1759. regulator-max-microvolt = <0x2dc6c0>;
  1760. linux,phandle = <0xad>;
  1761. phandle = <0xad>;
  1762. };
  1763.  
  1764. ldo3 {
  1765. regulator-name = "ldo3";
  1766. linux,phandle = <0xae>;
  1767. phandle = <0xae>;
  1768. };
  1769.  
  1770. ldo4 {
  1771. regulator-name = "ldo4";
  1772. linux,phandle = <0xaf>;
  1773. phandle = <0xaf>;
  1774. };
  1775.  
  1776. ldo5 {
  1777. regulator-name = "ldo5";
  1778. status = "disabled";
  1779. linux,phandle = <0xb0>;
  1780. phandle = <0xb0>;
  1781. };
  1782. };
  1783.  
  1784. usb_power_supply {
  1785. compatible = "x-powers,axp202-usb-power-supply";
  1786. status = "okay";
  1787. linux,phandle = <0x33>;
  1788. phandle = <0x33>;
  1789. };
  1790. };
  1791. };
  1792.  
  1793. i2c@01c2b000 {
  1794. compatible = "allwinner,sun7i-a20-i2c", "allwinner,sun4i-a10-i2c";
  1795. reg = <0x1c2b000 0x400>;
  1796. interrupts = <0x0 0x8 0x4>;
  1797. clocks = <0x43 0x1>;
  1798. status = "disabled";
  1799. #address-cells = <0x1>;
  1800. #size-cells = <0x0>;
  1801. linux,phandle = <0xb1>;
  1802. phandle = <0xb1>;
  1803. };
  1804.  
  1805. i2c@01c2b400 {
  1806. compatible = "allwinner,sun7i-a20-i2c", "allwinner,sun4i-a10-i2c";
  1807. reg = <0x1c2b400 0x400>;
  1808. interrupts = <0x0 0x9 0x4>;
  1809. clocks = <0x43 0x2>;
  1810. status = "okay";
  1811. #address-cells = <0x1>;
  1812. #size-cells = <0x0>;
  1813. pinctrl-names = "default";
  1814. pinctrl-0 = <0x49>;
  1815. linux,phandle = <0xb2>;
  1816. phandle = <0xb2>;
  1817. };
  1818.  
  1819. i2c@01c2b800 {
  1820. compatible = "allwinner,sun7i-a20-i2c", "allwinner,sun4i-a10-i2c";
  1821. reg = <0x1c2b800 0x400>;
  1822. interrupts = <0x0 0x58 0x4>;
  1823. clocks = <0x43 0x3>;
  1824. status = "disabled";
  1825. #address-cells = <0x1>;
  1826. #size-cells = <0x0>;
  1827. linux,phandle = <0xb3>;
  1828. phandle = <0xb3>;
  1829. };
  1830.  
  1831. i2c@01c2c000 {
  1832. compatible = "allwinner,sun7i-a20-i2c", "allwinner,sun4i-a10-i2c";
  1833. reg = <0x1c2c000 0x400>;
  1834. interrupts = <0x0 0x59 0x4>;
  1835. clocks = <0x43 0xf>;
  1836. status = "disabled";
  1837. #address-cells = <0x1>;
  1838. #size-cells = <0x0>;
  1839. linux,phandle = <0xb4>;
  1840. phandle = <0xb4>;
  1841. };
  1842.  
  1843. ethernet@01c50000 {
  1844. compatible = "allwinner,sun7i-a20-gmac";
  1845. reg = <0x1c50000 0x10000>;
  1846. interrupts = <0x0 0x55 0x4>;
  1847. interrupt-names = "macirq";
  1848. clocks = <0x2 0x31 0x4a>;
  1849. clock-names = "stmmaceth", "allwinner_gmac_tx";
  1850. snps,pbl = <0x2>;
  1851. snps,fixed-burst;
  1852. snps,force_sf_dma_mode;
  1853. status = "okay";
  1854. #address-cells = <0x1>;
  1855. #size-cells = <0x0>;
  1856. pinctrl-names = "default";
  1857. pinctrl-0 = <0x4b>;
  1858. phy = <0x4c>;
  1859. phy-mode = "rgmii";
  1860. phy-supply = <0x4d>;
  1861. linux,phandle = <0xb5>;
  1862. phandle = <0xb5>;
  1863.  
  1864. ethernet-phy@1 {
  1865. reg = <0x1>;
  1866. linux,phandle = <0x4c>;
  1867. phandle = <0x4c>;
  1868. };
  1869. };
  1870.  
  1871. hstimer@01c60000 {
  1872. compatible = "allwinner,sun7i-a20-hstimer";
  1873. reg = <0x1c60000 0x1000>;
  1874. interrupts = <0x0 0x51 0x4 0x0 0x52 0x4 0x0 0x53 0x4 0x0 0x54 0x4>;
  1875. clocks = <0x2 0x1c>;
  1876. };
  1877.  
  1878. interrupt-controller@01c81000 {
  1879. compatible = "arm,gic-400", "arm,cortex-a7-gic", "arm,cortex-a15-gic";
  1880. reg = <0x1c81000 0x1000 0x1c82000 0x2000 0x1c84000 0x2000 0x1c86000 0x2000>;
  1881. interrupt-controller;
  1882. #interrupt-cells = <0x3>;
  1883. interrupts = <0x1 0x9 0xf04>;
  1884. linux,phandle = <0x1>;
  1885. phandle = <0x1>;
  1886. };
  1887.  
  1888. ps2@01c2a000 {
  1889. compatible = "allwinner,sun4i-a10-ps2";
  1890. reg = <0x1c2a000 0x400>;
  1891. interrupts = <0x0 0x3e 0x4>;
  1892. clocks = <0x43 0x6>;
  1893. status = "disabled";
  1894. linux,phandle = <0xb6>;
  1895. phandle = <0xb6>;
  1896. };
  1897.  
  1898. ps2@01c2a400 {
  1899. compatible = "allwinner,sun4i-a10-ps2";
  1900. reg = <0x1c2a400 0x400>;
  1901. interrupts = <0x0 0x3f 0x4>;
  1902. clocks = <0x43 0x7>;
  1903. status = "disabled";
  1904. linux,phandle = <0xb7>;
  1905. phandle = <0xb7>;
  1906. };
  1907. };
  1908.  
  1909. ahci-5v {
  1910. compatible = "regulator-fixed";
  1911. pinctrl-names = "default";
  1912. pinctrl-0 = <0x4e>;
  1913. regulator-name = "ahci-5v";
  1914. regulator-min-microvolt = <0x4c4b40>;
  1915. regulator-max-microvolt = <0x4c4b40>;
  1916. regulator-boot-on;
  1917. enable-active-high;
  1918. gpio = <0x2b 0x1 0x8 0x0>;
  1919. status = "disabled";
  1920. linux,phandle = <0xb8>;
  1921. phandle = <0xb8>;
  1922. };
  1923.  
  1924. usb0-vbus {
  1925. compatible = "regulator-fixed";
  1926. pinctrl-names = "default";
  1927. pinctrl-0 = <0x4f>;
  1928. regulator-name = "usb0-vbus";
  1929. regulator-min-microvolt = <0x4c4b40>;
  1930. regulator-max-microvolt = <0x4c4b40>;
  1931. enable-active-high;
  1932. gpio = <0x2b 0x1 0x9 0x0>;
  1933. status = "okay";
  1934. linux,phandle = <0x34>;
  1935. phandle = <0x34>;
  1936. };
  1937.  
  1938. usb1-vbus {
  1939. compatible = "regulator-fixed";
  1940. pinctrl-names = "default";
  1941. pinctrl-0 = <0x50>;
  1942. regulator-name = "usb1-vbus";
  1943. regulator-min-microvolt = <0x4c4b40>;
  1944. regulator-max-microvolt = <0x4c4b40>;
  1945. regulator-boot-on;
  1946. enable-active-high;
  1947. gpio = <0x2b 0x7 0x6 0x0>;
  1948. status = "okay";
  1949. linux,phandle = <0x35>;
  1950. phandle = <0x35>;
  1951. };
  1952.  
  1953. usb2-vbus {
  1954. compatible = "regulator-fixed";
  1955. pinctrl-names = "default";
  1956. pinctrl-0 = <0x51>;
  1957. regulator-name = "usb2-vbus";
  1958. regulator-min-microvolt = <0x4c4b40>;
  1959. regulator-max-microvolt = <0x4c4b40>;
  1960. regulator-boot-on;
  1961. enable-active-high;
  1962. gpio = <0x2b 0x7 0x3 0x0>;
  1963. status = "okay";
  1964. linux,phandle = <0x36>;
  1965. phandle = <0x36>;
  1966. };
  1967.  
  1968. vcc3v0 {
  1969. compatible = "regulator-fixed";
  1970. regulator-name = "vcc3v0";
  1971. regulator-min-microvolt = <0x2dc6c0>;
  1972. regulator-max-microvolt = <0x2dc6c0>;
  1973. linux,phandle = <0xb9>;
  1974. phandle = <0xb9>;
  1975. };
  1976.  
  1977. vcc3v3 {
  1978. compatible = "regulator-fixed";
  1979. regulator-name = "vcc3v3";
  1980. regulator-min-microvolt = <0x325aa0>;
  1981. regulator-max-microvolt = <0x325aa0>;
  1982. linux,phandle = <0x2a>;
  1983. phandle = <0x2a>;
  1984. };
  1985.  
  1986. vcc5v0 {
  1987. compatible = "regulator-fixed";
  1988. regulator-name = "vcc5v0";
  1989. regulator-min-microvolt = <0x4c4b40>;
  1990. regulator-max-microvolt = <0x4c4b40>;
  1991. linux,phandle = <0xba>;
  1992. phandle = <0xba>;
  1993. };
  1994.  
  1995. leds {
  1996. compatible = "gpio-leds";
  1997. pinctrl-names = "default";
  1998. pinctrl-0 = <0x52>;
  1999.  
  2000. green {
  2001. label = "bananapi:green:usr";
  2002. gpios = <0x2b 0x7 0x18 0x0>;
  2003. };
  2004. };
  2005.  
  2006. gmac-3v3 {
  2007. compatible = "regulator-fixed";
  2008. pinctrl-names = "default";
  2009. pinctrl-0 = <0x53>;
  2010. regulator-name = "gmac-3v3";
  2011. regulator-min-microvolt = <0x325aa0>;
  2012. regulator-max-microvolt = <0x325aa0>;
  2013. startup-delay-us = <0x186a0>;
  2014. enable-active-high;
  2015. gpio = <0x2b 0x7 0x17 0x0>;
  2016. linux,phandle = <0x4d>;
  2017. phandle = <0x4d>;
  2018. };
  2019.  
  2020. __symbols__ {
  2021. cpu0 = "/cpus/cpu@0";
  2022. cpu_alert0 = "/thermal-zones/cpu_thermal/trips/cpu_alert0";
  2023. cpu_crit = "/thermal-zones/cpu_thermal/trips/cpu_crit";
  2024. osc24M = "/clocks/clk@01c20050";
  2025. osc3M = "/clocks/osc3M_clk";
  2026. osc32k = "/clocks/clk@0";
  2027. pll1 = "/clocks/clk@01c20000";
  2028. pll2 = "/clocks/clk@01c20008";
  2029. pll3 = "/clocks/clk@01c20010";
  2030. pll3x2 = "/clocks/pll3x2_clk";
  2031. pll4 = "/clocks/clk@01c20018";
  2032. pll5 = "/clocks/clk@01c20020";
  2033. pll6 = "/clocks/clk@01c20028";
  2034. pll7 = "/clocks/clk@01c20030";
  2035. pll7x2 = "/clocks/pll7x2_clk";
  2036. pll8 = "/clocks/clk@01c20040";
  2037. cpu = "/clocks/cpu@01c20054";
  2038. axi = "/clocks/axi@01c20054";
  2039. ahb = "/clocks/ahb@01c20054";
  2040. ahb_gates = "/clocks/clk@01c20060";
  2041. apb0 = "/clocks/apb0@01c20054";
  2042. apb0_gates = "/clocks/clk@01c20068";
  2043. apb1 = "/clocks/clk@01c20058";
  2044. apb1_gates = "/clocks/clk@01c2006c";
  2045. nand_clk = "/clocks/clk@01c20080";
  2046. ms_clk = "/clocks/clk@01c20084";
  2047. mmc0_clk = "/clocks/clk@01c20088";
  2048. mmc1_clk = "/clocks/clk@01c2008c";
  2049. mmc2_clk = "/clocks/clk@01c20090";
  2050. mmc3_clk = "/clocks/clk@01c20094";
  2051. ts_clk = "/clocks/clk@01c20098";
  2052. ss_clk = "/clocks/clk@01c2009c";
  2053. spi0_clk = "/clocks/clk@01c200a0";
  2054. spi1_clk = "/clocks/clk@01c200a4";
  2055. spi2_clk = "/clocks/clk@01c200a8";
  2056. pata_clk = "/clocks/clk@01c200ac";
  2057. ir0_clk = "/clocks/clk@01c200b0";
  2058. ir1_clk = "/clocks/clk@01c200b4";
  2059. i2s0_clk = "/clocks/clk@01c200b8";
  2060. ac97_clk = "/clocks/clk@01c200bc";
  2061. spdif_clk = "/clocks/clk@01c200c0";
  2062. keypad_clk = "/clocks/clk@01c200c4";
  2063. usb_clk = "/clocks/clk@01c200cc";
  2064. spi3_clk = "/clocks/clk@01c200d4";
  2065. i2s1_clk = "/clocks/clk@01c200d8";
  2066. i2s2_clk = "/clocks/clk@01c200dc";
  2067. dram_gates = "/clocks/clk@01c20100";
  2068. de_be0_clk = "/clocks/clk@01c20104";
  2069. de_be1_clk = "/clocks/clk@01c20108";
  2070. de_fe0_clk = "/clocks/clk@01c2010c";
  2071. de_fe1_clk = "/clocks/clk@01c20110";
  2072. tcon0_ch0_clk = "/clocks/clk@01c20118";
  2073. tcon1_ch0_clk = "/clocks/clk@01c2011c";
  2074. tcon0_ch1_clk = "/clocks/clk@01c2012c";
  2075. tcon1_ch1_clk = "/clocks/clk@01c20130";
  2076. ve_clk = "/clocks/clk@01c2013c";
  2077. codec_clk = "/clocks/clk@01c20140";
  2078. mbus_clk = "/clocks/clk@01c2015c";
  2079. mii_phy_tx_clk = "/clocks/clk@2";
  2080. gmac_int_tx_clk = "/clocks/clk@3";
  2081. gmac_tx_clk = "/clocks/clk@01c20164";
  2082. osc24M_32k = "/clocks/clk@1";
  2083. clk_out_a = "/clocks/clk@01c201f0";
  2084. clk_out_b = "/clocks/clk@01c201f4";
  2085. sram_a = "/soc@01c00000/sram-controller@01c00000/sram@00000000";
  2086. emac_sram = "/soc@01c00000/sram-controller@01c00000/sram@00000000/sram-section@8000";
  2087. sram_d = "/soc@01c00000/sram-controller@01c00000/sram@00010000";
  2088. otg_sram = "/soc@01c00000/sram-controller@01c00000/sram@00010000/sram-section@0000";
  2089. nmi_intc = "/soc@01c00000/interrupt-controller@01c00030";
  2090. dma = "/soc@01c00000/dma-controller@01c02000";
  2091. nfc = "/soc@01c00000/nand@01c03000";
  2092. spi0 = "/soc@01c00000/spi@01c05000";
  2093. spi1 = "/soc@01c00000/spi@01c06000";
  2094. emac = "/soc@01c00000/ethernet@01c0b000";
  2095. mdio = "/soc@01c00000/mdio@01c0b080";
  2096. mmc0 = "/soc@01c00000/mmc@01c0f000";
  2097. mmc1 = "/soc@01c00000/mmc@01c10000";
  2098. mmc2 = "/soc@01c00000/mmc@01c11000";
  2099. mmc3 = "/soc@01c00000/mmc@01c12000";
  2100. usb_otg = "/soc@01c00000/usb@01c13000";
  2101. usbphy = "/soc@01c00000/phy@01c13400";
  2102. ehci0 = "/soc@01c00000/usb@01c14000";
  2103. ohci0 = "/soc@01c00000/usb@01c14400";
  2104. crypto = "/soc@01c00000/crypto-engine@01c15000";
  2105. spi2 = "/soc@01c00000/spi@01c17000";
  2106. ahci = "/soc@01c00000/sata@01c18000";
  2107. ehci1 = "/soc@01c00000/usb@01c1c000";
  2108. ohci1 = "/soc@01c00000/usb@01c1c400";
  2109. spi3 = "/soc@01c00000/spi@01c1f000";
  2110. pio = "/soc@01c00000/pinctrl@01c20800";
  2111. clk_out_a_pins_a = "/soc@01c00000/pinctrl@01c20800/clk_out_a@0";
  2112. clk_out_b_pins_a = "/soc@01c00000/pinctrl@01c20800/clk_out_b@0";
  2113. emac_pins_a = "/soc@01c00000/pinctrl@01c20800/emac0@0";
  2114. gmac_pins_mii_a = "/soc@01c00000/pinctrl@01c20800/gmac_mii@0";
  2115. gmac_pins_rgmii_a = "/soc@01c00000/pinctrl@01c20800/gmac_rgmii@0";
  2116. i2c0_pins_a = "/soc@01c00000/pinctrl@01c20800/i2c0@0";
  2117. i2c1_pins_a = "/soc@01c00000/pinctrl@01c20800/i2c1@0";
  2118. i2c2_pins_a = "/soc@01c00000/pinctrl@01c20800/i2c2@0";
  2119. i2c3_pins_a = "/soc@01c00000/pinctrl@01c20800/i2c3@0";
  2120. ir0_rx_pins_a = "/soc@01c00000/pinctrl@01c20800/ir0@0";
  2121. ir0_tx_pins_a = "/soc@01c00000/pinctrl@01c20800/ir0@1";
  2122. ir1_rx_pins_a = "/soc@01c00000/pinctrl@01c20800/ir1@0";
  2123. ir1_tx_pins_a = "/soc@01c00000/pinctrl@01c20800/ir1@1";
  2124. mmc0_pins_a = "/soc@01c00000/pinctrl@01c20800/mmc0@0";
  2125. mmc0_cd_pin_bananapi = "/soc@01c00000/pinctrl@01c20800/mmc0_cd_pin@0";
  2126. mmc0_cd_pin_reference_design = "/soc@01c00000/pinctrl@01c20800/mmc0_cd_pin@0";
  2127. mmc2_pins_a = "/soc@01c00000/pinctrl@01c20800/mmc2@0";
  2128. mmc3_pins_a = "/soc@01c00000/pinctrl@01c20800/mmc3@0";
  2129. ps20_pins_a = "/soc@01c00000/pinctrl@01c20800/ps20@0";
  2130. ps21_pins_a = "/soc@01c00000/pinctrl@01c20800/ps21@0";
  2131. pwm0_pins_a = "/soc@01c00000/pinctrl@01c20800/pwm0@0";
  2132. pwm1_pins_a = "/soc@01c00000/pinctrl@01c20800/pwm1@0";
  2133. spdif_tx_pins_a = "/soc@01c00000/pinctrl@01c20800/spdif@0";
  2134. spi0_pins_a = "/soc@01c00000/pinctrl@01c20800/spi0@0";
  2135. spi0_cs0_pins_a = "/soc@01c00000/pinctrl@01c20800/spi0_cs0@0";
  2136. spi0_cs1_pins_a = "/soc@01c00000/pinctrl@01c20800/spi0_cs1@0";
  2137. spi1_pins_a = "/soc@01c00000/pinctrl@01c20800/spi1@0";
  2138. spi1_cs0_pins_a = "/soc@01c00000/pinctrl@01c20800/spi1_cs0@0";
  2139. spi2_pins_a = "/soc@01c00000/pinctrl@01c20800/spi2@0";
  2140. spi2_pins_b = "/soc@01c00000/pinctrl@01c20800/spi2@1";
  2141. spi2_cs0_pins_a = "/soc@01c00000/pinctrl@01c20800/spi2_cs0@0";
  2142. spi2_cs0_pins_b = "/soc@01c00000/pinctrl@01c20800/spi2_cs0@1";
  2143. uart0_pins_a = "/soc@01c00000/pinctrl@01c20800/uart0@0";
  2144. uart2_pins_a = "/soc@01c00000/pinctrl@01c20800/uart2@0";
  2145. uart3_pins_a = "/soc@01c00000/pinctrl@01c20800/uart3@0";
  2146. uart3_pins_b = "/soc@01c00000/pinctrl@01c20800/uart3@1";
  2147. uart4_pins_a = "/soc@01c00000/pinctrl@01c20800/uart4@0";
  2148. uart4_pins_b = "/soc@01c00000/pinctrl@01c20800/uart4@1";
  2149. uart5_pins_a = "/soc@01c00000/pinctrl@01c20800/uart5@0";
  2150. uart6_pins_a = "/soc@01c00000/pinctrl@01c20800/uart6@0";
  2151. uart7_pins_a = "/soc@01c00000/pinctrl@01c20800/uart7@0";
  2152. ahci_pwr_pin_a = "/soc@01c00000/pinctrl@01c20800/ahci_pwr_pin@0";
  2153. usb0_vbus_pin_a = "/soc@01c00000/pinctrl@01c20800/usb0_vbus_pin@0";
  2154. usb1_vbus_pin_a = "/soc@01c00000/pinctrl@01c20800/usb1_vbus_pin@0";
  2155. usb2_vbus_pin_a = "/soc@01c00000/pinctrl@01c20800/usb2_vbus_pin@0";
  2156. usb0_id_detect_pin = "/soc@01c00000/pinctrl@01c20800/usb0_id_detect_pin@0";
  2157. gmac_power_pin_bananapi = "/soc@01c00000/pinctrl@01c20800/gmac_power_pin@0";
  2158. led_pins_bananapi = "/soc@01c00000/pinctrl@01c20800/led_pins@0";
  2159. wdt = "/soc@01c00000/watchdog@01c20c90";
  2160. rtc = "/soc@01c00000/rtc@01c20d00";
  2161. pwm = "/soc@01c00000/pwm@01c20e00";
  2162. spdif = "/soc@01c00000/spdif@01c21000";
  2163. ir0 = "/soc@01c00000/ir@01c21800";
  2164. ir1 = "/soc@01c00000/ir@01c21c00";
  2165. i2s1 = "/soc@01c00000/i2s@01c22000";
  2166. i2s0 = "/soc@01c00000/i2s@01c22400";
  2167. lradc = "/soc@01c00000/lradc@01c22800";
  2168. codec = "/soc@01c00000/codec@01c22c00";
  2169. sid = "/soc@01c00000/eeprom@01c23800";
  2170. i2s2 = "/soc@01c00000/i2s@01c24400";
  2171. rtp = "/soc@01c00000/rtp@01c25000";
  2172. uart0 = "/soc@01c00000/serial@01c28000";
  2173. uart1 = "/soc@01c00000/serial@01c28400";
  2174. uart2 = "/soc@01c00000/serial@01c28800";
  2175. uart3 = "/soc@01c00000/serial@01c28c00";
  2176. uart4 = "/soc@01c00000/serial@01c29000";
  2177. uart5 = "/soc@01c00000/serial@01c29400";
  2178. uart6 = "/soc@01c00000/serial@01c29800";
  2179. uart7 = "/soc@01c00000/serial@01c29c00";
  2180. i2c0 = "/soc@01c00000/i2c@01c2ac00";
  2181. axp209 = "/soc@01c00000/i2c@01c2ac00/pmic@34";
  2182. axp_gpio = "/soc@01c00000/i2c@01c2ac00/pmic@34/gpio";
  2183. reg_dcdc2 = "/soc@01c00000/i2c@01c2ac00/pmic@34/regulators/dcdc2";
  2184. reg_dcdc3 = "/soc@01c00000/i2c@01c2ac00/pmic@34/regulators/dcdc3";
  2185. reg_ldo1 = "/soc@01c00000/i2c@01c2ac00/pmic@34/regulators/ldo1";
  2186. reg_ldo2 = "/soc@01c00000/i2c@01c2ac00/pmic@34/regulators/ldo2";
  2187. reg_ldo3 = "/soc@01c00000/i2c@01c2ac00/pmic@34/regulators/ldo3";
  2188. reg_ldo4 = "/soc@01c00000/i2c@01c2ac00/pmic@34/regulators/ldo4";
  2189. reg_ldo5 = "/soc@01c00000/i2c@01c2ac00/pmic@34/regulators/ldo5";
  2190. usb_power_supply = "/soc@01c00000/i2c@01c2ac00/pmic@34/usb_power_supply";
  2191. i2c1 = "/soc@01c00000/i2c@01c2b000";
  2192. i2c2 = "/soc@01c00000/i2c@01c2b400";
  2193. i2c3 = "/soc@01c00000/i2c@01c2b800";
  2194. i2c4 = "/soc@01c00000/i2c@01c2c000";
  2195. gmac = "/soc@01c00000/ethernet@01c50000";
  2196. phy1 = "/soc@01c00000/ethernet@01c50000/ethernet-phy@1";
  2197. gic = "/soc@01c00000/interrupt-controller@01c81000";
  2198. ps20 = "/soc@01c00000/ps2@01c2a000";
  2199. ps21 = "/soc@01c00000/ps2@01c2a400";
  2200. reg_ahci_5v = "/ahci-5v";
  2201. reg_usb0_vbus = "/usb0-vbus";
  2202. reg_usb1_vbus = "/usb1-vbus";
  2203. reg_usb2_vbus = "/usb2-vbus";
  2204. reg_vcc3v0 = "/vcc3v0";
  2205. reg_vcc3v3 = "/vcc3v3";
  2206. reg_vcc5v0 = "/vcc5v0";
  2207. reg_gmac_3v3 = "/gmac-3v3";
  2208. };
  2209. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement