tegra114.dtsi 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765
  1. #include <dt-bindings/clock/tegra114-car.h>
  2. #include <dt-bindings/gpio/tegra-gpio.h>
  3. #include <dt-bindings/pinctrl/pinctrl-tegra.h>
  4. #include <dt-bindings/interrupt-controller/arm-gic.h>
  5. #include "skeleton.dtsi"
  6. / {
  7. compatible = "nvidia,tegra114";
  8. interrupt-parent = <&gic>;
  9. host1x@50000000 {
  10. compatible = "nvidia,tegra114-host1x", "simple-bus";
  11. reg = <0x50000000 0x00028000>;
  12. interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */
  13. <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */
  14. clocks = <&tegra_car TEGRA114_CLK_HOST1X>;
  15. resets = <&tegra_car 28>;
  16. reset-names = "host1x";
  17. #address-cells = <1>;
  18. #size-cells = <1>;
  19. ranges = <0x54000000 0x54000000 0x01000000>;
  20. gr2d@54140000 {
  21. compatible = "nvidia,tegra114-gr2d", "nvidia,tegra20-gr2d";
  22. reg = <0x54140000 0x00040000>;
  23. interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
  24. clocks = <&tegra_car TEGRA114_CLK_GR2D>;
  25. resets = <&tegra_car 21>;
  26. reset-names = "2d";
  27. };
  28. gr3d@54180000 {
  29. compatible = "nvidia,tegra114-gr3d", "nvidia,tegra20-gr3d";
  30. reg = <0x54180000 0x00040000>;
  31. clocks = <&tegra_car TEGRA114_CLK_GR3D>;
  32. resets = <&tegra_car 24>;
  33. reset-names = "3d";
  34. };
  35. dc@54200000 {
  36. compatible = "nvidia,tegra114-dc", "nvidia,tegra20-dc";
  37. reg = <0x54200000 0x00040000>;
  38. interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
  39. clocks = <&tegra_car TEGRA114_CLK_DISP1>,
  40. <&tegra_car TEGRA114_CLK_PLL_P>;
  41. clock-names = "dc", "parent";
  42. resets = <&tegra_car 27>;
  43. reset-names = "dc";
  44. nvidia,head = <0>;
  45. rgb {
  46. status = "disabled";
  47. };
  48. };
  49. dc@54240000 {
  50. compatible = "nvidia,tegra114-dc", "nvidia,tegra20-dc";
  51. reg = <0x54240000 0x00040000>;
  52. interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
  53. clocks = <&tegra_car TEGRA114_CLK_DISP2>,
  54. <&tegra_car TEGRA114_CLK_PLL_P>;
  55. clock-names = "dc", "parent";
  56. resets = <&tegra_car 26>;
  57. reset-names = "dc";
  58. nvidia,head = <1>;
  59. rgb {
  60. status = "disabled";
  61. };
  62. };
  63. hdmi@54280000 {
  64. compatible = "nvidia,tegra114-hdmi";
  65. reg = <0x54280000 0x00040000>;
  66. interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
  67. clocks = <&tegra_car TEGRA114_CLK_HDMI>,
  68. <&tegra_car TEGRA114_CLK_PLL_D2_OUT0>;
  69. clock-names = "hdmi", "parent";
  70. resets = <&tegra_car 51>;
  71. reset-names = "hdmi";
  72. status = "disabled";
  73. };
  74. dsi@54300000 {
  75. compatible = "nvidia,tegra114-dsi";
  76. reg = <0x54300000 0x00040000>;
  77. clocks = <&tegra_car TEGRA114_CLK_DSIA>,
  78. <&tegra_car TEGRA114_CLK_DSIALP>,
  79. <&tegra_car TEGRA114_CLK_PLL_D_OUT0>;
  80. clock-names = "dsi", "lp", "parent";
  81. resets = <&tegra_car 48>;
  82. reset-names = "dsi";
  83. nvidia,mipi-calibrate = <&mipi 0x060>; /* DSIA & DSIB pads */
  84. status = "disabled";
  85. #address-cells = <1>;
  86. #size-cells = <0>;
  87. };
  88. dsi@54400000 {
  89. compatible = "nvidia,tegra114-dsi";
  90. reg = <0x54400000 0x00040000>;
  91. clocks = <&tegra_car TEGRA114_CLK_DSIB>,
  92. <&tegra_car TEGRA114_CLK_DSIBLP>,
  93. <&tegra_car TEGRA114_CLK_PLL_D2_OUT0>;
  94. clock-names = "dsi", "lp", "parent";
  95. resets = <&tegra_car 82>;
  96. reset-names = "dsi";
  97. nvidia,mipi-calibrate = <&mipi 0x180>; /* DSIC & DSID pads */
  98. status = "disabled";
  99. #address-cells = <1>;
  100. #size-cells = <0>;
  101. };
  102. };
  103. gic: interrupt-controller@50041000 {
  104. compatible = "arm,cortex-a15-gic";
  105. #interrupt-cells = <3>;
  106. interrupt-controller;
  107. reg = <0x50041000 0x1000>,
  108. <0x50042000 0x1000>,
  109. <0x50044000 0x2000>,
  110. <0x50046000 0x2000>;
  111. interrupts = <GIC_PPI 9
  112. (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
  113. };
  114. timer@60005000 {
  115. compatible = "nvidia,tegra114-timer", "nvidia,tegra20-timer";
  116. reg = <0x60005000 0x400>;
  117. interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
  118. <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
  119. <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
  120. <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
  121. <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
  122. <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
  123. clocks = <&tegra_car TEGRA114_CLK_TIMER>;
  124. };
  125. tegra_car: clock@60006000 {
  126. compatible = "nvidia,tegra114-car";
  127. reg = <0x60006000 0x1000>;
  128. #clock-cells = <1>;
  129. #reset-cells = <1>;
  130. };
  131. flow-controller@60007000 {
  132. compatible = "nvidia,tegra114-flowctrl";
  133. reg = <0x60007000 0x1000>;
  134. };
  135. apbdma: dma@6000a000 {
  136. compatible = "nvidia,tegra114-apbdma";
  137. reg = <0x6000a000 0x1400>;
  138. interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
  139. <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
  140. <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
  141. <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
  142. <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
  143. <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
  144. <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
  145. <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
  146. <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
  147. <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
  148. <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
  149. <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
  150. <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
  151. <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
  152. <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
  153. <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
  154. <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>,
  155. <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>,
  156. <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
  157. <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
  158. <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
  159. <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
  160. <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
  161. <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
  162. <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
  163. <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
  164. <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
  165. <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>,
  166. <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>,
  167. <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>,
  168. <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>,
  169. <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
  170. clocks = <&tegra_car TEGRA114_CLK_APBDMA>;
  171. resets = <&tegra_car 34>;
  172. reset-names = "dma";
  173. #dma-cells = <1>;
  174. };
  175. ahb: ahb@6000c004 {
  176. compatible = "nvidia,tegra114-ahb", "nvidia,tegra30-ahb";
  177. reg = <0x6000c004 0x14c>;
  178. };
  179. gpio: gpio@6000d000 {
  180. compatible = "nvidia,tegra114-gpio", "nvidia,tegra30-gpio";
  181. reg = <0x6000d000 0x1000>;
  182. interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
  183. <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
  184. <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
  185. <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
  186. <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
  187. <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
  188. <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
  189. <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
  190. #gpio-cells = <2>;
  191. gpio-controller;
  192. #interrupt-cells = <2>;
  193. interrupt-controller;
  194. };
  195. apbmisc@70000800 {
  196. compatible = "nvidia,tegra114-apbmisc", "nvidia,tegra20-apbmisc";
  197. reg = <0x70000800 0x64 /* Chip revision */
  198. 0x70000008 0x04>; /* Strapping options */
  199. };
  200. pinmux: pinmux@70000868 {
  201. compatible = "nvidia,tegra114-pinmux";
  202. reg = <0x70000868 0x148 /* Pad control registers */
  203. 0x70003000 0x40c>; /* Mux registers */
  204. };
  205. /*
  206. * There are two serial driver i.e. 8250 based simple serial
  207. * driver and APB DMA based serial driver for higher baudrate
  208. * and performace. To enable the 8250 based driver, the compatible
  209. * is "nvidia,tegra114-uart", "nvidia,tegra20-uart" and to enable
  210. * the APB DMA based serial driver, the comptible is
  211. * "nvidia,tegra114-hsuart", "nvidia,tegra30-hsuart".
  212. */
  213. uarta: serial@70006000 {
  214. compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
  215. reg = <0x70006000 0x40>;
  216. reg-shift = <2>;
  217. interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
  218. clocks = <&tegra_car TEGRA114_CLK_UARTA>;
  219. resets = <&tegra_car 6>;
  220. reset-names = "serial";
  221. dmas = <&apbdma 8>, <&apbdma 8>;
  222. dma-names = "rx", "tx";
  223. status = "disabled";
  224. };
  225. uartb: serial@70006040 {
  226. compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
  227. reg = <0x70006040 0x40>;
  228. reg-shift = <2>;
  229. interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
  230. clocks = <&tegra_car TEGRA114_CLK_UARTB>;
  231. resets = <&tegra_car 7>;
  232. reset-names = "serial";
  233. dmas = <&apbdma 9>, <&apbdma 9>;
  234. dma-names = "rx", "tx";
  235. status = "disabled";
  236. };
  237. uartc: serial@70006200 {
  238. compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
  239. reg = <0x70006200 0x100>;
  240. reg-shift = <2>;
  241. interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
  242. clocks = <&tegra_car TEGRA114_CLK_UARTC>;
  243. resets = <&tegra_car 55>;
  244. reset-names = "serial";
  245. dmas = <&apbdma 10>, <&apbdma 10>;
  246. dma-names = "rx", "tx";
  247. status = "disabled";
  248. };
  249. uartd: serial@70006300 {
  250. compatible = "nvidia,tegra114-uart", "nvidia,tegra20-uart";
  251. reg = <0x70006300 0x100>;
  252. reg-shift = <2>;
  253. interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
  254. clocks = <&tegra_car TEGRA114_CLK_UARTD>;
  255. resets = <&tegra_car 65>;
  256. reset-names = "serial";
  257. dmas = <&apbdma 19>, <&apbdma 19>;
  258. dma-names = "rx", "tx";
  259. status = "disabled";
  260. };
  261. pwm: pwm@7000a000 {
  262. compatible = "nvidia,tegra114-pwm", "nvidia,tegra20-pwm";
  263. reg = <0x7000a000 0x100>;
  264. #pwm-cells = <2>;
  265. clocks = <&tegra_car TEGRA114_CLK_PWM>;
  266. resets = <&tegra_car 17>;
  267. reset-names = "pwm";
  268. status = "disabled";
  269. };
  270. i2c@7000c000 {
  271. compatible = "nvidia,tegra114-i2c";
  272. reg = <0x7000c000 0x100>;
  273. interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
  274. #address-cells = <1>;
  275. #size-cells = <0>;
  276. clocks = <&tegra_car TEGRA114_CLK_I2C1>;
  277. clock-names = "div-clk";
  278. resets = <&tegra_car 12>;
  279. reset-names = "i2c";
  280. dmas = <&apbdma 21>, <&apbdma 21>;
  281. dma-names = "rx", "tx";
  282. status = "disabled";
  283. };
  284. i2c@7000c400 {
  285. compatible = "nvidia,tegra114-i2c";
  286. reg = <0x7000c400 0x100>;
  287. interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
  288. #address-cells = <1>;
  289. #size-cells = <0>;
  290. clocks = <&tegra_car TEGRA114_CLK_I2C2>;
  291. clock-names = "div-clk";
  292. resets = <&tegra_car 54>;
  293. reset-names = "i2c";
  294. dmas = <&apbdma 22>, <&apbdma 22>;
  295. dma-names = "rx", "tx";
  296. status = "disabled";
  297. };
  298. i2c@7000c500 {
  299. compatible = "nvidia,tegra114-i2c";
  300. reg = <0x7000c500 0x100>;
  301. interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
  302. #address-cells = <1>;
  303. #size-cells = <0>;
  304. clocks = <&tegra_car TEGRA114_CLK_I2C3>;
  305. clock-names = "div-clk";
  306. resets = <&tegra_car 67>;
  307. reset-names = "i2c";
  308. dmas = <&apbdma 23>, <&apbdma 23>;
  309. dma-names = "rx", "tx";
  310. status = "disabled";
  311. };
  312. i2c@7000c700 {
  313. compatible = "nvidia,tegra114-i2c";
  314. reg = <0x7000c700 0x100>;
  315. interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
  316. #address-cells = <1>;
  317. #size-cells = <0>;
  318. clocks = <&tegra_car TEGRA114_CLK_I2C4>;
  319. clock-names = "div-clk";
  320. resets = <&tegra_car 103>;
  321. reset-names = "i2c";
  322. dmas = <&apbdma 26>, <&apbdma 26>;
  323. dma-names = "rx", "tx";
  324. status = "disabled";
  325. };
  326. i2c@7000d000 {
  327. compatible = "nvidia,tegra114-i2c";
  328. reg = <0x7000d000 0x100>;
  329. interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
  330. #address-cells = <1>;
  331. #size-cells = <0>;
  332. clocks = <&tegra_car TEGRA114_CLK_I2C5>;
  333. clock-names = "div-clk";
  334. resets = <&tegra_car 47>;
  335. reset-names = "i2c";
  336. dmas = <&apbdma 24>, <&apbdma 24>;
  337. dma-names = "rx", "tx";
  338. status = "disabled";
  339. };
  340. spi@7000d400 {
  341. compatible = "nvidia,tegra114-spi";
  342. reg = <0x7000d400 0x200>;
  343. interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
  344. #address-cells = <1>;
  345. #size-cells = <0>;
  346. clocks = <&tegra_car TEGRA114_CLK_SBC1>;
  347. clock-names = "spi";
  348. resets = <&tegra_car 41>;
  349. reset-names = "spi";
  350. dmas = <&apbdma 15>, <&apbdma 15>;
  351. dma-names = "rx", "tx";
  352. status = "disabled";
  353. };
  354. spi@7000d600 {
  355. compatible = "nvidia,tegra114-spi";
  356. reg = <0x7000d600 0x200>;
  357. interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
  358. #address-cells = <1>;
  359. #size-cells = <0>;
  360. clocks = <&tegra_car TEGRA114_CLK_SBC2>;
  361. clock-names = "spi";
  362. resets = <&tegra_car 44>;
  363. reset-names = "spi";
  364. dmas = <&apbdma 16>, <&apbdma 16>;
  365. dma-names = "rx", "tx";
  366. status = "disabled";
  367. };
  368. spi@7000d800 {
  369. compatible = "nvidia,tegra114-spi";
  370. reg = <0x7000d800 0x200>;
  371. interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
  372. #address-cells = <1>;
  373. #size-cells = <0>;
  374. clocks = <&tegra_car TEGRA114_CLK_SBC3>;
  375. clock-names = "spi";
  376. resets = <&tegra_car 46>;
  377. reset-names = "spi";
  378. dmas = <&apbdma 17>, <&apbdma 17>;
  379. dma-names = "rx", "tx";
  380. status = "disabled";
  381. };
  382. spi@7000da00 {
  383. compatible = "nvidia,tegra114-spi";
  384. reg = <0x7000da00 0x200>;
  385. interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
  386. #address-cells = <1>;
  387. #size-cells = <0>;
  388. clocks = <&tegra_car TEGRA114_CLK_SBC4>;
  389. clock-names = "spi";
  390. resets = <&tegra_car 68>;
  391. reset-names = "spi";
  392. dmas = <&apbdma 18>, <&apbdma 18>;
  393. dma-names = "rx", "tx";
  394. status = "disabled";
  395. };
  396. spi@7000dc00 {
  397. compatible = "nvidia,tegra114-spi";
  398. reg = <0x7000dc00 0x200>;
  399. interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
  400. #address-cells = <1>;
  401. #size-cells = <0>;
  402. clocks = <&tegra_car TEGRA114_CLK_SBC5>;
  403. clock-names = "spi";
  404. resets = <&tegra_car 104>;
  405. reset-names = "spi";
  406. dmas = <&apbdma 27>, <&apbdma 27>;
  407. dma-names = "rx", "tx";
  408. status = "disabled";
  409. };
  410. spi@7000de00 {
  411. compatible = "nvidia,tegra114-spi";
  412. reg = <0x7000de00 0x200>;
  413. interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
  414. #address-cells = <1>;
  415. #size-cells = <0>;
  416. clocks = <&tegra_car TEGRA114_CLK_SBC6>;
  417. clock-names = "spi";
  418. resets = <&tegra_car 105>;
  419. reset-names = "spi";
  420. dmas = <&apbdma 28>, <&apbdma 28>;
  421. dma-names = "rx", "tx";
  422. status = "disabled";
  423. };
  424. rtc@7000e000 {
  425. compatible = "nvidia,tegra114-rtc", "nvidia,tegra20-rtc";
  426. reg = <0x7000e000 0x100>;
  427. interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
  428. clocks = <&tegra_car TEGRA114_CLK_RTC>;
  429. };
  430. kbc@7000e200 {
  431. compatible = "nvidia,tegra114-kbc";
  432. reg = <0x7000e200 0x100>;
  433. interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
  434. clocks = <&tegra_car TEGRA114_CLK_KBC>;
  435. resets = <&tegra_car 36>;
  436. reset-names = "kbc";
  437. status = "disabled";
  438. };
  439. pmc@7000e400 {
  440. compatible = "nvidia,tegra114-pmc";
  441. reg = <0x7000e400 0x400>;
  442. clocks = <&tegra_car TEGRA114_CLK_PCLK>, <&clk32k_in>;
  443. clock-names = "pclk", "clk32k_in";
  444. };
  445. fuse@7000f800 {
  446. compatible = "nvidia,tegra114-efuse";
  447. reg = <0x7000f800 0x400>;
  448. clocks = <&tegra_car TEGRA114_CLK_FUSE>;
  449. clock-names = "fuse";
  450. resets = <&tegra_car 39>;
  451. reset-names = "fuse";
  452. };
  453. iommu@70019010 {
  454. compatible = "nvidia,tegra114-smmu", "nvidia,tegra30-smmu";
  455. reg = <0x70019010 0x02c
  456. 0x700191f0 0x010
  457. 0x70019228 0x074>;
  458. nvidia,#asids = <4>;
  459. dma-window = <0 0x40000000>;
  460. nvidia,swgroups = <0x18659fe>;
  461. nvidia,ahb = <&ahb>;
  462. };
  463. ahub@70080000 {
  464. compatible = "nvidia,tegra114-ahub";
  465. reg = <0x70080000 0x200>,
  466. <0x70080200 0x100>,
  467. <0x70081000 0x200>;
  468. interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
  469. clocks = <&tegra_car TEGRA114_CLK_D_AUDIO>,
  470. <&tegra_car TEGRA114_CLK_APBIF>;
  471. clock-names = "d_audio", "apbif";
  472. resets = <&tegra_car 106>, /* d_audio */
  473. <&tegra_car 107>, /* apbif */
  474. <&tegra_car 30>, /* i2s0 */
  475. <&tegra_car 11>, /* i2s1 */
  476. <&tegra_car 18>, /* i2s2 */
  477. <&tegra_car 101>, /* i2s3 */
  478. <&tegra_car 102>, /* i2s4 */
  479. <&tegra_car 108>, /* dam0 */
  480. <&tegra_car 109>, /* dam1 */
  481. <&tegra_car 110>, /* dam2 */
  482. <&tegra_car 10>, /* spdif */
  483. <&tegra_car 153>, /* amx */
  484. <&tegra_car 154>; /* adx */
  485. reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2",
  486. "i2s3", "i2s4", "dam0", "dam1", "dam2",
  487. "spdif", "amx", "adx";
  488. dmas = <&apbdma 1>, <&apbdma 1>,
  489. <&apbdma 2>, <&apbdma 2>,
  490. <&apbdma 3>, <&apbdma 3>,
  491. <&apbdma 4>, <&apbdma 4>,
  492. <&apbdma 6>, <&apbdma 6>,
  493. <&apbdma 7>, <&apbdma 7>,
  494. <&apbdma 12>, <&apbdma 12>,
  495. <&apbdma 13>, <&apbdma 13>,
  496. <&apbdma 14>, <&apbdma 14>,
  497. <&apbdma 29>, <&apbdma 29>;
  498. dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2",
  499. "rx3", "tx3", "rx4", "tx4", "rx5", "tx5",
  500. "rx6", "tx6", "rx7", "tx7", "rx8", "tx8",
  501. "rx9", "tx9";
  502. ranges;
  503. #address-cells = <1>;
  504. #size-cells = <1>;
  505. tegra_i2s0: i2s@70080300 {
  506. compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
  507. reg = <0x70080300 0x100>;
  508. nvidia,ahub-cif-ids = <4 4>;
  509. clocks = <&tegra_car TEGRA114_CLK_I2S0>;
  510. resets = <&tegra_car 30>;
  511. reset-names = "i2s";
  512. status = "disabled";
  513. };
  514. tegra_i2s1: i2s@70080400 {
  515. compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
  516. reg = <0x70080400 0x100>;
  517. nvidia,ahub-cif-ids = <5 5>;
  518. clocks = <&tegra_car TEGRA114_CLK_I2S1>;
  519. resets = <&tegra_car 11>;
  520. reset-names = "i2s";
  521. status = "disabled";
  522. };
  523. tegra_i2s2: i2s@70080500 {
  524. compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
  525. reg = <0x70080500 0x100>;
  526. nvidia,ahub-cif-ids = <6 6>;
  527. clocks = <&tegra_car TEGRA114_CLK_I2S2>;
  528. resets = <&tegra_car 18>;
  529. reset-names = "i2s";
  530. status = "disabled";
  531. };
  532. tegra_i2s3: i2s@70080600 {
  533. compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
  534. reg = <0x70080600 0x100>;
  535. nvidia,ahub-cif-ids = <7 7>;
  536. clocks = <&tegra_car TEGRA114_CLK_I2S3>;
  537. resets = <&tegra_car 101>;
  538. reset-names = "i2s";
  539. status = "disabled";
  540. };
  541. tegra_i2s4: i2s@70080700 {
  542. compatible = "nvidia,tegra114-i2s", "nvidia,tegra30-i2s";
  543. reg = <0x70080700 0x100>;
  544. nvidia,ahub-cif-ids = <8 8>;
  545. clocks = <&tegra_car TEGRA114_CLK_I2S4>;
  546. resets = <&tegra_car 102>;
  547. reset-names = "i2s";
  548. status = "disabled";
  549. };
  550. };
  551. mipi: mipi@700e3000 {
  552. compatible = "nvidia,tegra114-mipi";
  553. reg = <0x700e3000 0x100>;
  554. clocks = <&tegra_car TEGRA114_CLK_MIPI_CAL>;
  555. #nvidia,mipi-calibrate-cells = <1>;
  556. };
  557. sdhci@78000000 {
  558. compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
  559. reg = <0x78000000 0x200>;
  560. interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
  561. clocks = <&tegra_car TEGRA114_CLK_SDMMC1>;
  562. resets = <&tegra_car 14>;
  563. reset-names = "sdhci";
  564. status = "disabled";
  565. };
  566. sdhci@78000200 {
  567. compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
  568. reg = <0x78000200 0x200>;
  569. interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
  570. clocks = <&tegra_car TEGRA114_CLK_SDMMC2>;
  571. resets = <&tegra_car 9>;
  572. reset-names = "sdhci";
  573. status = "disabled";
  574. };
  575. sdhci@78000400 {
  576. compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
  577. reg = <0x78000400 0x200>;
  578. interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
  579. clocks = <&tegra_car TEGRA114_CLK_SDMMC3>;
  580. resets = <&tegra_car 69>;
  581. reset-names = "sdhci";
  582. status = "disabled";
  583. };
  584. sdhci@78000600 {
  585. compatible = "nvidia,tegra114-sdhci", "nvidia,tegra30-sdhci";
  586. reg = <0x78000600 0x200>;
  587. interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
  588. clocks = <&tegra_car TEGRA114_CLK_SDMMC4>;
  589. resets = <&tegra_car 15>;
  590. reset-names = "sdhci";
  591. status = "disabled";
  592. };
  593. usb@7d000000 {
  594. compatible = "nvidia,tegra30-ehci", "usb-ehci";
  595. reg = <0x7d000000 0x4000>;
  596. interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
  597. phy_type = "utmi";
  598. clocks = <&tegra_car TEGRA114_CLK_USBD>;
  599. resets = <&tegra_car 22>;
  600. reset-names = "usb";
  601. nvidia,phy = <&phy1>;
  602. status = "disabled";
  603. };
  604. phy1: usb-phy@7d000000 {
  605. compatible = "nvidia,tegra30-usb-phy";
  606. reg = <0x7d000000 0x4000 0x7d000000 0x4000>;
  607. phy_type = "utmi";
  608. clocks = <&tegra_car TEGRA114_CLK_USBD>,
  609. <&tegra_car TEGRA114_CLK_PLL_U>,
  610. <&tegra_car TEGRA114_CLK_USBD>;
  611. clock-names = "reg", "pll_u", "utmi-pads";
  612. resets = <&tegra_car 22>, <&tegra_car 22>;
  613. reset-names = "usb", "utmi-pads";
  614. nvidia,hssync-start-delay = <0>;
  615. nvidia,idle-wait-delay = <17>;
  616. nvidia,elastic-limit = <16>;
  617. nvidia,term-range-adj = <6>;
  618. nvidia,xcvr-setup = <9>;
  619. nvidia,xcvr-lsfslew = <0>;
  620. nvidia,xcvr-lsrslew = <3>;
  621. nvidia,hssquelch-level = <2>;
  622. nvidia,hsdiscon-level = <5>;
  623. nvidia,xcvr-hsslew = <12>;
  624. nvidia,has-utmi-pad-registers;
  625. status = "disabled";
  626. };
  627. usb@7d008000 {
  628. compatible = "nvidia,tegra30-ehci", "usb-ehci";
  629. reg = <0x7d008000 0x4000>;
  630. interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
  631. phy_type = "utmi";
  632. clocks = <&tegra_car TEGRA114_CLK_USB3>;
  633. resets = <&tegra_car 59>;
  634. reset-names = "usb";
  635. nvidia,phy = <&phy3>;
  636. status = "disabled";
  637. };
  638. phy3: usb-phy@7d008000 {
  639. compatible = "nvidia,tegra30-usb-phy";
  640. reg = <0x7d008000 0x4000 0x7d000000 0x4000>;
  641. phy_type = "utmi";
  642. clocks = <&tegra_car TEGRA114_CLK_USB3>,
  643. <&tegra_car TEGRA114_CLK_PLL_U>,
  644. <&tegra_car TEGRA114_CLK_USBD>;
  645. clock-names = "reg", "pll_u", "utmi-pads";
  646. resets = <&tegra_car 59>, <&tegra_car 22>;
  647. reset-names = "usb", "utmi-pads";
  648. nvidia,hssync-start-delay = <0>;
  649. nvidia,idle-wait-delay = <17>;
  650. nvidia,elastic-limit = <16>;
  651. nvidia,term-range-adj = <6>;
  652. nvidia,xcvr-setup = <9>;
  653. nvidia,xcvr-lsfslew = <0>;
  654. nvidia,xcvr-lsrslew = <3>;
  655. nvidia,hssquelch-level = <2>;
  656. nvidia,hsdiscon-level = <5>;
  657. nvidia,xcvr-hsslew = <12>;
  658. status = "disabled";
  659. };
  660. cpus {
  661. #address-cells = <1>;
  662. #size-cells = <0>;
  663. cpu@0 {
  664. device_type = "cpu";
  665. compatible = "arm,cortex-a15";
  666. reg = <0>;
  667. };
  668. cpu@1 {
  669. device_type = "cpu";
  670. compatible = "arm,cortex-a15";
  671. reg = <1>;
  672. };
  673. cpu@2 {
  674. device_type = "cpu";
  675. compatible = "arm,cortex-a15";
  676. reg = <2>;
  677. };
  678. cpu@3 {
  679. device_type = "cpu";
  680. compatible = "arm,cortex-a15";
  681. reg = <3>;
  682. };
  683. };
  684. timer {
  685. compatible = "arm,armv7-timer";
  686. interrupts =
  687. <GIC_PPI 13
  688. (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
  689. <GIC_PPI 14
  690. (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
  691. <GIC_PPI 11
  692. (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
  693. <GIC_PPI 10
  694. (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
  695. };
  696. };