tegra20.dtsi 10.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469
  1. /include/ "skeleton.dtsi"
  2. / {
  3. compatible = "nvidia,tegra20";
  4. interrupt-parent = <&intc>;
  5. host1x {
  6. compatible = "nvidia,tegra20-host1x", "simple-bus";
  7. reg = <0x50000000 0x00024000>;
  8. interrupts = <0 65 0x04 /* mpcore syncpt */
  9. 0 67 0x04>; /* mpcore general */
  10. clocks = <&tegra_car 28>;
  11. #address-cells = <1>;
  12. #size-cells = <1>;
  13. ranges = <0x54000000 0x54000000 0x04000000>;
  14. mpe {
  15. compatible = "nvidia,tegra20-mpe";
  16. reg = <0x54040000 0x00040000>;
  17. interrupts = <0 68 0x04>;
  18. clocks = <&tegra_car 60>;
  19. };
  20. vi {
  21. compatible = "nvidia,tegra20-vi";
  22. reg = <0x54080000 0x00040000>;
  23. interrupts = <0 69 0x04>;
  24. clocks = <&tegra_car 100>;
  25. };
  26. epp {
  27. compatible = "nvidia,tegra20-epp";
  28. reg = <0x540c0000 0x00040000>;
  29. interrupts = <0 70 0x04>;
  30. clocks = <&tegra_car 19>;
  31. };
  32. isp {
  33. compatible = "nvidia,tegra20-isp";
  34. reg = <0x54100000 0x00040000>;
  35. interrupts = <0 71 0x04>;
  36. clocks = <&tegra_car 23>;
  37. };
  38. gr2d {
  39. compatible = "nvidia,tegra20-gr2d";
  40. reg = <0x54140000 0x00040000>;
  41. interrupts = <0 72 0x04>;
  42. clocks = <&tegra_car 21>;
  43. };
  44. gr3d {
  45. compatible = "nvidia,tegra20-gr3d";
  46. reg = <0x54180000 0x00040000>;
  47. clocks = <&tegra_car 24>;
  48. };
  49. dc@54200000 {
  50. compatible = "nvidia,tegra20-dc";
  51. reg = <0x54200000 0x00040000>;
  52. interrupts = <0 73 0x04>;
  53. clocks = <&tegra_car 27>, <&tegra_car 121>;
  54. clock-names = "disp1", "parent";
  55. rgb {
  56. status = "disabled";
  57. };
  58. };
  59. dc@54240000 {
  60. compatible = "nvidia,tegra20-dc";
  61. reg = <0x54240000 0x00040000>;
  62. interrupts = <0 74 0x04>;
  63. clocks = <&tegra_car 26>, <&tegra_car 121>;
  64. clock-names = "disp2", "parent";
  65. rgb {
  66. status = "disabled";
  67. };
  68. };
  69. hdmi {
  70. compatible = "nvidia,tegra20-hdmi";
  71. reg = <0x54280000 0x00040000>;
  72. interrupts = <0 75 0x04>;
  73. clocks = <&tegra_car 51>, <&tegra_car 117>;
  74. clock-names = "hdmi", "parent";
  75. status = "disabled";
  76. };
  77. tvo {
  78. compatible = "nvidia,tegra20-tvo";
  79. reg = <0x542c0000 0x00040000>;
  80. interrupts = <0 76 0x04>;
  81. clocks = <&tegra_car 102>;
  82. status = "disabled";
  83. };
  84. dsi {
  85. compatible = "nvidia,tegra20-dsi";
  86. reg = <0x54300000 0x00040000>;
  87. clocks = <&tegra_car 48>;
  88. status = "disabled";
  89. };
  90. };
  91. timer@50004600 {
  92. compatible = "arm,cortex-a9-twd-timer";
  93. reg = <0x50040600 0x20>;
  94. interrupts = <1 13 0x304>;
  95. };
  96. cache-controller@50043000 {
  97. compatible = "arm,pl310-cache";
  98. reg = <0x50043000 0x1000>;
  99. arm,data-latency = <5 5 2>;
  100. arm,tag-latency = <4 4 2>;
  101. cache-unified;
  102. cache-level = <2>;
  103. };
  104. intc: interrupt-controller {
  105. compatible = "arm,cortex-a9-gic";
  106. reg = <0x50041000 0x1000
  107. 0x50040100 0x0100>;
  108. interrupt-controller;
  109. #interrupt-cells = <3>;
  110. };
  111. timer@60005000 {
  112. compatible = "nvidia,tegra20-timer";
  113. reg = <0x60005000 0x60>;
  114. interrupts = <0 0 0x04
  115. 0 1 0x04
  116. 0 41 0x04
  117. 0 42 0x04>;
  118. };
  119. tegra_car: clock {
  120. compatible = "nvidia,tegra20-car";
  121. reg = <0x60006000 0x1000>;
  122. #clock-cells = <1>;
  123. };
  124. apbdma: dma {
  125. compatible = "nvidia,tegra20-apbdma";
  126. reg = <0x6000a000 0x1200>;
  127. interrupts = <0 104 0x04
  128. 0 105 0x04
  129. 0 106 0x04
  130. 0 107 0x04
  131. 0 108 0x04
  132. 0 109 0x04
  133. 0 110 0x04
  134. 0 111 0x04
  135. 0 112 0x04
  136. 0 113 0x04
  137. 0 114 0x04
  138. 0 115 0x04
  139. 0 116 0x04
  140. 0 117 0x04
  141. 0 118 0x04
  142. 0 119 0x04>;
  143. clocks = <&tegra_car 34>;
  144. };
  145. ahb {
  146. compatible = "nvidia,tegra20-ahb";
  147. reg = <0x6000c004 0x10c>; /* AHB Arbitration + Gizmo Controller */
  148. };
  149. gpio: gpio {
  150. compatible = "nvidia,tegra20-gpio";
  151. reg = <0x6000d000 0x1000>;
  152. interrupts = <0 32 0x04
  153. 0 33 0x04
  154. 0 34 0x04
  155. 0 35 0x04
  156. 0 55 0x04
  157. 0 87 0x04
  158. 0 89 0x04>;
  159. #gpio-cells = <2>;
  160. gpio-controller;
  161. #interrupt-cells = <2>;
  162. interrupt-controller;
  163. };
  164. pinmux: pinmux {
  165. compatible = "nvidia,tegra20-pinmux";
  166. reg = <0x70000014 0x10 /* Tri-state registers */
  167. 0x70000080 0x20 /* Mux registers */
  168. 0x700000a0 0x14 /* Pull-up/down registers */
  169. 0x70000868 0xa8>; /* Pad control registers */
  170. };
  171. das {
  172. compatible = "nvidia,tegra20-das";
  173. reg = <0x70000c00 0x80>;
  174. };
  175. tegra_i2s1: i2s@70002800 {
  176. compatible = "nvidia,tegra20-i2s";
  177. reg = <0x70002800 0x200>;
  178. interrupts = <0 13 0x04>;
  179. nvidia,dma-request-selector = <&apbdma 2>;
  180. clocks = <&tegra_car 11>;
  181. status = "disabled";
  182. };
  183. tegra_i2s2: i2s@70002a00 {
  184. compatible = "nvidia,tegra20-i2s";
  185. reg = <0x70002a00 0x200>;
  186. interrupts = <0 3 0x04>;
  187. nvidia,dma-request-selector = <&apbdma 1>;
  188. clocks = <&tegra_car 18>;
  189. status = "disabled";
  190. };
  191. serial@70006000 {
  192. compatible = "nvidia,tegra20-uart";
  193. reg = <0x70006000 0x40>;
  194. reg-shift = <2>;
  195. interrupts = <0 36 0x04>;
  196. clocks = <&tegra_car 6>;
  197. status = "disabled";
  198. };
  199. serial@70006040 {
  200. compatible = "nvidia,tegra20-uart";
  201. reg = <0x70006040 0x40>;
  202. reg-shift = <2>;
  203. interrupts = <0 37 0x04>;
  204. clocks = <&tegra_car 96>;
  205. status = "disabled";
  206. };
  207. serial@70006200 {
  208. compatible = "nvidia,tegra20-uart";
  209. reg = <0x70006200 0x100>;
  210. reg-shift = <2>;
  211. interrupts = <0 46 0x04>;
  212. clocks = <&tegra_car 55>;
  213. status = "disabled";
  214. };
  215. serial@70006300 {
  216. compatible = "nvidia,tegra20-uart";
  217. reg = <0x70006300 0x100>;
  218. reg-shift = <2>;
  219. interrupts = <0 90 0x04>;
  220. clocks = <&tegra_car 65>;
  221. status = "disabled";
  222. };
  223. serial@70006400 {
  224. compatible = "nvidia,tegra20-uart";
  225. reg = <0x70006400 0x100>;
  226. reg-shift = <2>;
  227. interrupts = <0 91 0x04>;
  228. clocks = <&tegra_car 66>;
  229. status = "disabled";
  230. };
  231. pwm: pwm {
  232. compatible = "nvidia,tegra20-pwm";
  233. reg = <0x7000a000 0x100>;
  234. #pwm-cells = <2>;
  235. clocks = <&tegra_car 17>;
  236. };
  237. rtc {
  238. compatible = "nvidia,tegra20-rtc";
  239. reg = <0x7000e000 0x100>;
  240. interrupts = <0 2 0x04>;
  241. };
  242. i2c@7000c000 {
  243. compatible = "nvidia,tegra20-i2c";
  244. reg = <0x7000c000 0x100>;
  245. interrupts = <0 38 0x04>;
  246. #address-cells = <1>;
  247. #size-cells = <0>;
  248. clocks = <&tegra_car 12>, <&tegra_car 124>;
  249. clock-names = "div-clk", "fast-clk";
  250. status = "disabled";
  251. };
  252. spi@7000c380 {
  253. compatible = "nvidia,tegra20-sflash";
  254. reg = <0x7000c380 0x80>;
  255. interrupts = <0 39 0x04>;
  256. nvidia,dma-request-selector = <&apbdma 11>;
  257. #address-cells = <1>;
  258. #size-cells = <0>;
  259. clocks = <&tegra_car 43>;
  260. status = "disabled";
  261. };
  262. i2c@7000c400 {
  263. compatible = "nvidia,tegra20-i2c";
  264. reg = <0x7000c400 0x100>;
  265. interrupts = <0 84 0x04>;
  266. #address-cells = <1>;
  267. #size-cells = <0>;
  268. clocks = <&tegra_car 54>, <&tegra_car 124>;
  269. clock-names = "div-clk", "fast-clk";
  270. status = "disabled";
  271. };
  272. i2c@7000c500 {
  273. compatible = "nvidia,tegra20-i2c";
  274. reg = <0x7000c500 0x100>;
  275. interrupts = <0 92 0x04>;
  276. #address-cells = <1>;
  277. #size-cells = <0>;
  278. clocks = <&tegra_car 67>, <&tegra_car 124>;
  279. clock-names = "div-clk", "fast-clk";
  280. status = "disabled";
  281. };
  282. i2c@7000d000 {
  283. compatible = "nvidia,tegra20-i2c-dvc";
  284. reg = <0x7000d000 0x200>;
  285. interrupts = <0 53 0x04>;
  286. #address-cells = <1>;
  287. #size-cells = <0>;
  288. clocks = <&tegra_car 47>, <&tegra_car 124>;
  289. clock-names = "div-clk", "fast-clk";
  290. status = "disabled";
  291. };
  292. spi@7000d400 {
  293. compatible = "nvidia,tegra20-slink";
  294. reg = <0x7000d400 0x200>;
  295. interrupts = <0 59 0x04>;
  296. nvidia,dma-request-selector = <&apbdma 15>;
  297. #address-cells = <1>;
  298. #size-cells = <0>;
  299. clocks = <&tegra_car 41>;
  300. status = "disabled";
  301. };
  302. spi@7000d600 {
  303. compatible = "nvidia,tegra20-slink";
  304. reg = <0x7000d600 0x200>;
  305. interrupts = <0 82 0x04>;
  306. nvidia,dma-request-selector = <&apbdma 16>;
  307. #address-cells = <1>;
  308. #size-cells = <0>;
  309. clocks = <&tegra_car 44>;
  310. status = "disabled";
  311. };
  312. spi@7000d800 {
  313. compatible = "nvidia,tegra20-slink";
  314. reg = <0x7000d480 0x200>;
  315. interrupts = <0 83 0x04>;
  316. nvidia,dma-request-selector = <&apbdma 17>;
  317. #address-cells = <1>;
  318. #size-cells = <0>;
  319. clocks = <&tegra_car 46>;
  320. status = "disabled";
  321. };
  322. spi@7000da00 {
  323. compatible = "nvidia,tegra20-slink";
  324. reg = <0x7000da00 0x200>;
  325. interrupts = <0 93 0x04>;
  326. nvidia,dma-request-selector = <&apbdma 18>;
  327. #address-cells = <1>;
  328. #size-cells = <0>;
  329. clocks = <&tegra_car 68>;
  330. status = "disabled";
  331. };
  332. pmc {
  333. compatible = "nvidia,tegra20-pmc";
  334. reg = <0x7000e400 0x400>;
  335. };
  336. memory-controller@7000f000 {
  337. compatible = "nvidia,tegra20-mc";
  338. reg = <0x7000f000 0x024
  339. 0x7000f03c 0x3c4>;
  340. interrupts = <0 77 0x04>;
  341. };
  342. gart {
  343. compatible = "nvidia,tegra20-gart";
  344. reg = <0x7000f024 0x00000018 /* controller registers */
  345. 0x58000000 0x02000000>; /* GART aperture */
  346. };
  347. memory-controller@7000f400 {
  348. compatible = "nvidia,tegra20-emc";
  349. reg = <0x7000f400 0x200>;
  350. #address-cells = <1>;
  351. #size-cells = <0>;
  352. };
  353. usb@c5000000 {
  354. compatible = "nvidia,tegra20-ehci", "usb-ehci";
  355. reg = <0xc5000000 0x4000>;
  356. interrupts = <0 20 0x04>;
  357. phy_type = "utmi";
  358. nvidia,has-legacy-mode;
  359. clocks = <&tegra_car 22>;
  360. nvidia,needs-double-reset;
  361. status = "disabled";
  362. };
  363. usb@c5004000 {
  364. compatible = "nvidia,tegra20-ehci", "usb-ehci";
  365. reg = <0xc5004000 0x4000>;
  366. interrupts = <0 21 0x04>;
  367. phy_type = "ulpi";
  368. clocks = <&tegra_car 58>;
  369. status = "disabled";
  370. };
  371. usb@c5008000 {
  372. compatible = "nvidia,tegra20-ehci", "usb-ehci";
  373. reg = <0xc5008000 0x4000>;
  374. interrupts = <0 97 0x04>;
  375. phy_type = "utmi";
  376. clocks = <&tegra_car 59>;
  377. status = "disabled";
  378. };
  379. sdhci@c8000000 {
  380. compatible = "nvidia,tegra20-sdhci";
  381. reg = <0xc8000000 0x200>;
  382. interrupts = <0 14 0x04>;
  383. clocks = <&tegra_car 14>;
  384. status = "disabled";
  385. };
  386. sdhci@c8000200 {
  387. compatible = "nvidia,tegra20-sdhci";
  388. reg = <0xc8000200 0x200>;
  389. interrupts = <0 15 0x04>;
  390. clocks = <&tegra_car 9>;
  391. status = "disabled";
  392. };
  393. sdhci@c8000400 {
  394. compatible = "nvidia,tegra20-sdhci";
  395. reg = <0xc8000400 0x200>;
  396. interrupts = <0 19 0x04>;
  397. clocks = <&tegra_car 69>;
  398. status = "disabled";
  399. };
  400. sdhci@c8000600 {
  401. compatible = "nvidia,tegra20-sdhci";
  402. reg = <0xc8000600 0x200>;
  403. interrupts = <0 31 0x04>;
  404. clocks = <&tegra_car 15>;
  405. status = "disabled";
  406. };
  407. pmu {
  408. compatible = "arm,cortex-a9-pmu";
  409. interrupts = <0 56 0x04
  410. 0 57 0x04>;
  411. };
  412. };