tegra124-cei-tk1-som.dts 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477
  1. /dts-v1/;
  2. #include "tegra124.dtsi"
  3. / {
  4. model = "Colorado Engineering TK1-SOM";
  5. compatible = "nvidia,cei-tk1-som", "nvidia,tegra124";
  6. chosen {
  7. stdout-path = &uartd;
  8. };
  9. aliases {
  10. i2c0 = "/i2c@7000d000";
  11. i2c1 = "/i2c@7000c000";
  12. i2c2 = "/i2c@7000c400";
  13. i2c3 = "/i2c@7000c500";
  14. i2c4 = "/i2c@7000c700";
  15. mmc0 = "/sdhci@700b0600";
  16. mmc1 = "/sdhci@700b0400";
  17. spi0 = "/spi@7000d400";
  18. spi1 = "/spi@7000da00";
  19. usb0 = "/usb@7d000000";
  20. usb1 = "/usb@7d008000";
  21. };
  22. memory {
  23. device_type = "memory";
  24. reg = <0x80000000 0x80000000>;
  25. };
  26. pcie-controller@01003000 {
  27. status = "okay";
  28. avddio-pex-supply = <&vdd_1v05_run>;
  29. dvddio-pex-supply = <&vdd_1v05_run>;
  30. avdd-pex-pll-supply = <&vdd_1v05_run>;
  31. hvdd-pex-supply = <&vdd_3v3_lp0>;
  32. hvdd-pex-pll-e-supply = <&vdd_3v3_lp0>;
  33. vddio-pex-ctl-supply = <&vdd_3v3_lp0>;
  34. avdd-pll-erefe-supply = <&avdd_1v05_run>;
  35. pci@1,0 {
  36. status = "okay";
  37. nvidia,num-lanes = <4>;
  38. };
  39. pci@2,0 {
  40. status = "okay";
  41. };
  42. };
  43. i2c@7000c000 {
  44. status = "okay";
  45. clock-frequency = <100000>;
  46. };
  47. i2c@7000c400 {
  48. status = "okay";
  49. clock-frequency = <100000>;
  50. };
  51. i2c@7000c500 {
  52. status = "okay";
  53. clock-frequency = <100000>;
  54. };
  55. i2c@7000c700 {
  56. status = "okay";
  57. clock-frequency = <100000>;
  58. };
  59. /* Expansion PWR_I2C_*, on-board components */
  60. i2c@7000d000 {
  61. status = "okay";
  62. clock-frequency = <400000>;
  63. pmic: pmic@40 {
  64. compatible = "ams,as3722";
  65. reg = <0x40>;
  66. interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
  67. ams,system-power-controller;
  68. #interrupt-cells = <2>;
  69. interrupt-controller;
  70. gpio-controller;
  71. #gpio-cells = <2>;
  72. pinctrl-names = "default";
  73. pinctrl-0 = <&as3722_default>;
  74. as3722_default: pinmux {
  75. gpio0 {
  76. pins = "gpio0";
  77. function = "gpio";
  78. bias-pull-down;
  79. };
  80. gpio1_2_4_7 {
  81. pins = "gpio1", "gpio2", "gpio4", "gpio7";
  82. function = "gpio";
  83. bias-pull-up;
  84. };
  85. gpio3_5_6 {
  86. pins = "gpio3", "gpio5", "gpio6";
  87. bias-high-impedance;
  88. };
  89. };
  90. regulators {
  91. vsup-sd2-supply = <&vdd_5v0_sys>;
  92. vsup-sd3-supply = <&vdd_5v0_sys>;
  93. vsup-sd4-supply = <&vdd_5v0_sys>;
  94. vsup-sd5-supply = <&vdd_5v0_sys>;
  95. vin-ldo0-supply = <&vdd_1v35_lp0>;
  96. vin-ldo1-6-supply = <&vdd_3v3_run>;
  97. vin-ldo2-5-7-supply = <&vddio_1v8>;
  98. vin-ldo3-4-supply = <&vdd_3v3_sys>;
  99. vin-ldo9-10-supply = <&vdd_5v0_sys>;
  100. vin-ldo11-supply = <&vdd_3v3_run>;
  101. sd0 {
  102. regulator-name = "+VDD_CPU_AP";
  103. regulator-min-microvolt = <700000>;
  104. regulator-max-microvolt = <1400000>;
  105. regulator-min-microamp = <3500000>;
  106. regulator-max-microamp = <3500000>;
  107. regulator-always-on;
  108. regulator-boot-on;
  109. ams,ext-control = <2>;
  110. };
  111. sd1 {
  112. regulator-name = "+VDD_CORE";
  113. regulator-min-microvolt = <700000>;
  114. regulator-max-microvolt = <1350000>;
  115. regulator-min-microamp = <2500000>;
  116. regulator-max-microamp = <2500000>;
  117. regulator-always-on;
  118. regulator-boot-on;
  119. ams,ext-control = <1>;
  120. };
  121. vdd_1v35_lp0: sd2 {
  122. regulator-name = "+1.35V_LP0(sd2)";
  123. regulator-min-microvolt = <1350000>;
  124. regulator-max-microvolt = <1350000>;
  125. regulator-always-on;
  126. regulator-boot-on;
  127. };
  128. sd3 {
  129. regulator-name = "+1.35V_LP0(sd3)";
  130. regulator-min-microvolt = <1350000>;
  131. regulator-max-microvolt = <1350000>;
  132. regulator-always-on;
  133. regulator-boot-on;
  134. };
  135. vdd_1v05_run: sd4 {
  136. regulator-name = "+1.05V_RUN";
  137. regulator-min-microvolt = <1050000>;
  138. regulator-max-microvolt = <1050000>;
  139. };
  140. vddio_1v8: sd5 {
  141. regulator-name = "+1.8V_VDDIO";
  142. regulator-min-microvolt = <1800000>;
  143. regulator-max-microvolt = <1800000>;
  144. regulator-boot-on;
  145. regulator-always-on;
  146. };
  147. vdd_gpu: sd6 {
  148. regulator-name = "+VDD_GPU_AP";
  149. regulator-min-microvolt = <650000>;
  150. regulator-max-microvolt = <1200000>;
  151. regulator-min-microamp = <3500000>;
  152. regulator-max-microamp = <3500000>;
  153. regulator-boot-on;
  154. regulator-always-on;
  155. };
  156. avdd_1v05_run: ldo0 {
  157. regulator-name = "+1.05V_RUN_AVDD";
  158. regulator-min-microvolt = <1050000>;
  159. regulator-max-microvolt = <1050000>;
  160. regulator-boot-on;
  161. regulator-always-on;
  162. ams,ext-control = <1>;
  163. };
  164. ldo1 {
  165. regulator-name = "+1.8V_RUN_CAM";
  166. regulator-min-microvolt = <1800000>;
  167. regulator-max-microvolt = <1800000>;
  168. };
  169. ldo2 {
  170. regulator-name = "+1.2V_GEN_AVDD";
  171. regulator-min-microvolt = <1200000>;
  172. regulator-max-microvolt = <1200000>;
  173. regulator-boot-on;
  174. regulator-always-on;
  175. };
  176. ldo3 {
  177. regulator-name = "+1.05V_LP0_VDD_RTC";
  178. regulator-min-microvolt = <1000000>;
  179. regulator-max-microvolt = <1000000>;
  180. regulator-boot-on;
  181. regulator-always-on;
  182. ams,enable-tracking;
  183. };
  184. ldo4 {
  185. regulator-name = "+2.8V_RUN_CAM";
  186. regulator-min-microvolt = <2800000>;
  187. regulator-max-microvolt = <2800000>;
  188. };
  189. ldo5 {
  190. regulator-name = "+1.2V_RUN_CAM_FRONT";
  191. regulator-min-microvolt = <1200000>;
  192. regulator-max-microvolt = <1200000>;
  193. };
  194. vddio_sdmmc3: ldo6 {
  195. regulator-name = "+VDDIO_SDMMC3";
  196. regulator-min-microvolt = <1800000>;
  197. regulator-max-microvolt = <3300000>;
  198. };
  199. ldo7 {
  200. regulator-name = "+1.05V_RUN_CAM_REAR";
  201. regulator-min-microvolt = <1050000>;
  202. regulator-max-microvolt = <1050000>;
  203. };
  204. ldo9 {
  205. regulator-name = "+3.3V_RUN_TOUCH";
  206. regulator-min-microvolt = <2800000>;
  207. regulator-max-microvolt = <2800000>;
  208. };
  209. ldo10 {
  210. regulator-name = "+2.8V_RUN_CAM_AF";
  211. regulator-min-microvolt = <2800000>;
  212. regulator-max-microvolt = <2800000>;
  213. };
  214. ldo11 {
  215. regulator-name = "+1.8V_RUN_VPP_FUSE";
  216. regulator-min-microvolt = <1800000>;
  217. regulator-max-microvolt = <1800000>;
  218. };
  219. };
  220. };
  221. };
  222. i2c@7000d100 {
  223. status = "okay";
  224. clock-frequency = <400000>;
  225. };
  226. spi@7000d400 {
  227. status = "okay";
  228. spi-max-frequency = <25000000>;
  229. };
  230. spi@7000da00 {
  231. status = "okay";
  232. spi-max-frequency = <25000000>;
  233. };
  234. padctl@7009f000 {
  235. pinctrl-0 = <&padctl_default>;
  236. pinctrl-names = "default";
  237. padctl_default: pinmux {
  238. usb3 {
  239. nvidia,lanes = "sata-0";
  240. nvidia,function = "usb3";
  241. nvidia,iddq = <0>;
  242. };
  243. pcie {
  244. nvidia,lanes = "pcie-0", "pcie-1", "pcie-2", "pcie-3",
  245. "pcie-4";
  246. nvidia,function = "pcie";
  247. nvidia,iddq = <0>;
  248. };
  249. };
  250. };
  251. sdhci@700b0400 {
  252. status = "okay";
  253. cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
  254. power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
  255. wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_HIGH>;
  256. bus-width = <4>;
  257. };
  258. sdhci@700b0600 {
  259. status = "okay";
  260. bus-width = <8>;
  261. };
  262. usb@7d000000 {
  263. status = "okay";
  264. dr_mode = "otg";
  265. nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
  266. };
  267. usb@7d008000 {
  268. status = "okay";
  269. nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
  270. };
  271. clocks {
  272. compatible = "simple-bus";
  273. #address-cells = <1>;
  274. #size-cells = <0>;
  275. clk32k_in: clock@0 {
  276. compatible = "fixed-clock";
  277. reg = <0>;
  278. #clock-cells = <0>;
  279. clock-frequency = <32768>;
  280. };
  281. };
  282. regulators {
  283. compatible = "simple-bus";
  284. #address-cells = <1>;
  285. #size-cells = <0>;
  286. vdd_mux: regulator@0 {
  287. compatible = "regulator-fixed";
  288. reg = <0>;
  289. regulator-name = "+VDD_MUX";
  290. regulator-min-microvolt = <12000000>;
  291. regulator-max-microvolt = <12000000>;
  292. regulator-always-on;
  293. regulator-boot-on;
  294. };
  295. vdd_5v0_sys: regulator@1 {
  296. compatible = "regulator-fixed";
  297. reg = <1>;
  298. regulator-name = "+5V_SYS";
  299. regulator-min-microvolt = <5000000>;
  300. regulator-max-microvolt = <5000000>;
  301. regulator-always-on;
  302. regulator-boot-on;
  303. vin-supply = <&vdd_mux>;
  304. };
  305. vdd_3v3_sys: regulator@2 {
  306. compatible = "regulator-fixed";
  307. reg = <2>;
  308. regulator-name = "+3.3V_SYS";
  309. regulator-min-microvolt = <3300000>;
  310. regulator-max-microvolt = <3300000>;
  311. regulator-always-on;
  312. regulator-boot-on;
  313. vin-supply = <&vdd_mux>;
  314. };
  315. vdd_3v3_run: regulator@3 {
  316. compatible = "regulator-fixed";
  317. reg = <3>;
  318. regulator-name = "+3.3V_RUN";
  319. regulator-min-microvolt = <3300000>;
  320. regulator-max-microvolt = <3300000>;
  321. regulator-always-on;
  322. regulator-boot-on;
  323. gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
  324. enable-active-high;
  325. vin-supply = <&vdd_3v3_sys>;
  326. };
  327. vdd_3v3_hdmi: regulator@4 {
  328. compatible = "regulator-fixed";
  329. reg = <4>;
  330. regulator-name = "+3.3V_AVDD_HDMI_AP_GATED";
  331. regulator-min-microvolt = <3300000>;
  332. regulator-max-microvolt = <3300000>;
  333. vin-supply = <&vdd_3v3_run>;
  334. };
  335. vdd_usb1_vbus: regulator@7 {
  336. compatible = "regulator-fixed";
  337. reg = <7>;
  338. regulator-name = "+USB0_VBUS_SW";
  339. regulator-min-microvolt = <5000000>;
  340. regulator-max-microvolt = <5000000>;
  341. gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
  342. enable-active-high;
  343. gpio-open-drain;
  344. vin-supply = <&vdd_5v0_sys>;
  345. };
  346. vdd_usb3_vbus: regulator@8 {
  347. compatible = "regulator-fixed";
  348. reg = <8>;
  349. regulator-name = "+5V_USB_HS";
  350. regulator-min-microvolt = <5000000>;
  351. regulator-max-microvolt = <5000000>;
  352. gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
  353. enable-active-high;
  354. gpio-open-drain;
  355. vin-supply = <&vdd_5v0_sys>;
  356. };
  357. vdd_3v3_lp0: regulator@10 {
  358. compatible = "regulator-fixed";
  359. reg = <10>;
  360. regulator-name = "+3.3V_LP0";
  361. regulator-min-microvolt = <3300000>;
  362. regulator-max-microvolt = <3300000>;
  363. regulator-always-on;
  364. regulator-boot-on;
  365. gpio = <&pmic 2 GPIO_ACTIVE_HIGH>;
  366. enable-active-high;
  367. vin-supply = <&vdd_3v3_sys>;
  368. };
  369. vdd_hdmi_pll: regulator@11 {
  370. compatible = "regulator-fixed";
  371. reg = <11>;
  372. regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL";
  373. regulator-min-microvolt = <1050000>;
  374. regulator-max-microvolt = <1050000>;
  375. gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>;
  376. vin-supply = <&vdd_1v05_run>;
  377. };
  378. vdd_5v0_hdmi: regulator@12 {
  379. compatible = "regulator-fixed";
  380. reg = <12>;
  381. regulator-name = "+5V_HDMI_CON";
  382. regulator-min-microvolt = <5000000>;
  383. regulator-max-microvolt = <5000000>;
  384. gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>;
  385. enable-active-high;
  386. vin-supply = <&vdd_5v0_sys>;
  387. };
  388. /* Molex power connector */
  389. vdd_5v0_sata: regulator@13 {
  390. compatible = "regulator-fixed";
  391. reg = <13>;
  392. regulator-name = "+5V_SATA";
  393. regulator-min-microvolt = <5000000>;
  394. regulator-max-microvolt = <5000000>;
  395. gpio = <&gpio TEGRA_GPIO(EE, 2) GPIO_ACTIVE_HIGH>;
  396. enable-active-high;
  397. vin-supply = <&vdd_5v0_sys>;
  398. };
  399. vdd_12v0_sata: regulator@14 {
  400. compatible = "regulator-fixed";
  401. reg = <14>;
  402. regulator-name = "+12V_SATA";
  403. regulator-min-microvolt = <12000000>;
  404. regulator-max-microvolt = <12000000>;
  405. gpio = <&gpio TEGRA_GPIO(EE, 2) GPIO_ACTIVE_HIGH>;
  406. enable-active-high;
  407. vin-supply = <&vdd_mux>;
  408. };
  409. };
  410. };