k3-j721e-sk.dts 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
  4. *
  5. * J721E SK URL: https://www.ti.com/tool/SK-TDA4VM
  6. */
  7. /dts-v1/;
  8. #include "k3-j721e.dtsi"
  9. #include <dt-bindings/gpio/gpio.h>
  10. #include <dt-bindings/input/input.h>
  11. #include <dt-bindings/net/ti-dp83867.h>
  12. / {
  13. compatible = "ti,j721e-sk", "ti,j721e";
  14. model = "Texas Instruments J721E SK";
  15. chosen {
  16. stdout-path = "serial2:115200n8";
  17. bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
  18. };
  19. memory@80000000 {
  20. device_type = "memory";
  21. /* 4G RAM */
  22. reg = <0x00000000 0x80000000 0x00000000 0x80000000>,
  23. <0x00000008 0x80000000 0x00000000 0x80000000>;
  24. };
  25. reserved_memory: reserved-memory {
  26. #address-cells = <2>;
  27. #size-cells = <2>;
  28. ranges;
  29. secure_ddr: optee@9e800000 {
  30. reg = <0x00 0x9e800000 0x00 0x01800000>;
  31. alignment = <0x1000>;
  32. no-map;
  33. };
  34. mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@a0000000 {
  35. compatible = "shared-dma-pool";
  36. reg = <0x00 0xa0000000 0x00 0x100000>;
  37. no-map;
  38. };
  39. mcu_r5fss0_core0_memory_region: r5f-memory@a0100000 {
  40. compatible = "shared-dma-pool";
  41. reg = <0x00 0xa0100000 0x00 0xf00000>;
  42. no-map;
  43. };
  44. mcu_r5fss0_core1_dma_memory_region: r5f-dma-memory@a1000000 {
  45. compatible = "shared-dma-pool";
  46. reg = <0x00 0xa1000000 0x00 0x100000>;
  47. no-map;
  48. };
  49. mcu_r5fss0_core1_memory_region: r5f-memory@a1100000 {
  50. compatible = "shared-dma-pool";
  51. reg = <0x00 0xa1100000 0x00 0xf00000>;
  52. no-map;
  53. };
  54. main_r5fss0_core0_dma_memory_region: r5f-dma-memory@a2000000 {
  55. compatible = "shared-dma-pool";
  56. reg = <0x00 0xa2000000 0x00 0x100000>;
  57. no-map;
  58. };
  59. main_r5fss0_core0_memory_region: r5f-memory@a2100000 {
  60. compatible = "shared-dma-pool";
  61. reg = <0x00 0xa2100000 0x00 0xf00000>;
  62. no-map;
  63. };
  64. main_r5fss0_core1_dma_memory_region: r5f-dma-memory@a3000000 {
  65. compatible = "shared-dma-pool";
  66. reg = <0x00 0xa3000000 0x00 0x100000>;
  67. no-map;
  68. };
  69. main_r5fss0_core1_memory_region: r5f-memory@a3100000 {
  70. compatible = "shared-dma-pool";
  71. reg = <0x00 0xa3100000 0x00 0xf00000>;
  72. no-map;
  73. };
  74. main_r5fss1_core0_dma_memory_region: r5f-dma-memory@a4000000 {
  75. compatible = "shared-dma-pool";
  76. reg = <0x00 0xa4000000 0x00 0x100000>;
  77. no-map;
  78. };
  79. main_r5fss1_core0_memory_region: r5f-memory@a4100000 {
  80. compatible = "shared-dma-pool";
  81. reg = <0x00 0xa4100000 0x00 0xf00000>;
  82. no-map;
  83. };
  84. main_r5fss1_core1_dma_memory_region: r5f-dma-memory@a5000000 {
  85. compatible = "shared-dma-pool";
  86. reg = <0x00 0xa5000000 0x00 0x100000>;
  87. no-map;
  88. };
  89. main_r5fss1_core1_memory_region: r5f-memory@a5100000 {
  90. compatible = "shared-dma-pool";
  91. reg = <0x00 0xa5100000 0x00 0xf00000>;
  92. no-map;
  93. };
  94. c66_1_dma_memory_region: c66-dma-memory@a6000000 {
  95. compatible = "shared-dma-pool";
  96. reg = <0x00 0xa6000000 0x00 0x100000>;
  97. no-map;
  98. };
  99. c66_0_memory_region: c66-memory@a6100000 {
  100. compatible = "shared-dma-pool";
  101. reg = <0x00 0xa6100000 0x00 0xf00000>;
  102. no-map;
  103. };
  104. c66_0_dma_memory_region: c66-dma-memory@a7000000 {
  105. compatible = "shared-dma-pool";
  106. reg = <0x00 0xa7000000 0x00 0x100000>;
  107. no-map;
  108. };
  109. c66_1_memory_region: c66-memory@a7100000 {
  110. compatible = "shared-dma-pool";
  111. reg = <0x00 0xa7100000 0x00 0xf00000>;
  112. no-map;
  113. };
  114. c71_0_dma_memory_region: c71-dma-memory@a8000000 {
  115. compatible = "shared-dma-pool";
  116. reg = <0x00 0xa8000000 0x00 0x100000>;
  117. no-map;
  118. };
  119. c71_0_memory_region: c71-memory@a8100000 {
  120. compatible = "shared-dma-pool";
  121. reg = <0x00 0xa8100000 0x00 0xf00000>;
  122. no-map;
  123. };
  124. rtos_ipc_memory_region: ipc-memories@aa000000 {
  125. reg = <0x00 0xaa000000 0x00 0x01c00000>;
  126. alignment = <0x1000>;
  127. no-map;
  128. };
  129. };
  130. vusb_main: fixedregulator-vusb-main5v0 {
  131. /* USB MAIN INPUT 5V DC */
  132. compatible = "regulator-fixed";
  133. regulator-name = "vusb-main5v0";
  134. regulator-min-microvolt = <5000000>;
  135. regulator-max-microvolt = <5000000>;
  136. regulator-always-on;
  137. regulator-boot-on;
  138. };
  139. vsys_3v3: fixedregulator-vsys3v3 {
  140. /* Output of LM5141 */
  141. compatible = "regulator-fixed";
  142. regulator-name = "vsys_3v3";
  143. regulator-min-microvolt = <3300000>;
  144. regulator-max-microvolt = <3300000>;
  145. vin-supply = <&vusb_main>;
  146. regulator-always-on;
  147. regulator-boot-on;
  148. };
  149. vdd_mmc1: fixedregulator-sd {
  150. compatible = "regulator-fixed";
  151. pinctrl-names = "default";
  152. pinctrl-0 = <&vdd_mmc1_en_pins_default>;
  153. regulator-name = "vdd_mmc1";
  154. regulator-min-microvolt = <3300000>;
  155. regulator-max-microvolt = <3300000>;
  156. regulator-boot-on;
  157. enable-active-high;
  158. vin-supply = <&vsys_3v3>;
  159. gpio = <&wkup_gpio0 8 GPIO_ACTIVE_HIGH>;
  160. };
  161. vdd_sd_dv_alt: gpio-regulator-tps659411 {
  162. compatible = "regulator-gpio";
  163. pinctrl-names = "default";
  164. pinctrl-0 = <&vdd_sd_dv_alt_pins_default>;
  165. regulator-name = "tps659411";
  166. regulator-min-microvolt = <1800000>;
  167. regulator-max-microvolt = <3300000>;
  168. regulator-boot-on;
  169. vin-supply = <&vsys_3v3>;
  170. gpios = <&wkup_gpio0 9 GPIO_ACTIVE_HIGH>;
  171. states = <1800000 0x0>,
  172. <3300000 0x1>;
  173. };
  174. dp_pwr_3v3: fixedregulator-dp-prw {
  175. compatible = "regulator-fixed";
  176. regulator-name = "dp-pwr";
  177. regulator-min-microvolt = <3300000>;
  178. regulator-max-microvolt = <3300000>;
  179. pinctrl-names = "default";
  180. pinctrl-0 = <&dp_pwr_en_pins_default>;
  181. gpio = <&main_gpio0 111 0>; /* DP0_3V3 _EN */
  182. enable-active-high;
  183. };
  184. dp0: connector {
  185. compatible = "dp-connector";
  186. label = "DP0";
  187. type = "full-size";
  188. dp-pwr-supply = <&dp_pwr_3v3>;
  189. port {
  190. dp_connector_in: endpoint {
  191. remote-endpoint = <&dp0_out>;
  192. };
  193. };
  194. };
  195. hdmi-connector {
  196. compatible = "hdmi-connector";
  197. label = "hdmi";
  198. type = "a";
  199. pinctrl-names = "default";
  200. pinctrl-0 = <&hdmi_hpd_pins_default>;
  201. ddc-i2c-bus = <&main_i2c1>;
  202. /* HDMI_HPD */
  203. hpd-gpios = <&main_gpio1 0 GPIO_ACTIVE_HIGH>;
  204. port {
  205. hdmi_connector_in: endpoint {
  206. remote-endpoint = <&tfp410_out>;
  207. };
  208. };
  209. };
  210. dvi-bridge {
  211. compatible = "ti,tfp410";
  212. pinctrl-names = "default";
  213. pinctrl-0 = <&hdmi_pdn_pins_default>;
  214. powerdown-gpios = <&main_gpio0 127 GPIO_ACTIVE_LOW>;
  215. ti,deskew = <0>;
  216. ports {
  217. #address-cells = <1>;
  218. #size-cells = <0>;
  219. port@0 {
  220. reg = <0>;
  221. tfp410_in: endpoint {
  222. remote-endpoint = <&dpi1_out>;
  223. pclk-sample = <1>;
  224. };
  225. };
  226. port@1 {
  227. reg = <1>;
  228. tfp410_out: endpoint {
  229. remote-endpoint =
  230. <&hdmi_connector_in>;
  231. };
  232. };
  233. };
  234. };
  235. };
  236. &main_pmx0 {
  237. main_mmc1_pins_default: main-mmc1-pins-default {
  238. pinctrl-single,pins = <
  239. J721E_IOPAD(0x254, PIN_INPUT, 0) /* (R29) MMC1_CMD */
  240. J721E_IOPAD(0x250, PIN_INPUT, 0) /* (P25) MMC1_CLK */
  241. J721E_IOPAD(0x2ac, PIN_INPUT, 0) /* (P25) MMC1_CLKLB */
  242. J721E_IOPAD(0x24c, PIN_INPUT, 0) /* (R24) MMC1_DAT0 */
  243. J721E_IOPAD(0x248, PIN_INPUT, 0) /* (P24) MMC1_DAT1 */
  244. J721E_IOPAD(0x244, PIN_INPUT, 0) /* (R25) MMC1_DAT2 */
  245. J721E_IOPAD(0x240, PIN_INPUT, 0) /* (R26) MMC1_DAT3 */
  246. J721E_IOPAD(0x258, PIN_INPUT, 0) /* (P23) MMC1_SDCD */
  247. >;
  248. };
  249. main_uart0_pins_default: main-uart0-pins-default {
  250. pinctrl-single,pins = <
  251. J721E_IOPAD(0x1f0, PIN_INPUT, 0) /* (AC2) UART0_CTSn */
  252. J721E_IOPAD(0x1f4, PIN_OUTPUT, 0) /* (AB1) UART0_RTSn */
  253. J721E_IOPAD(0x1e8, PIN_INPUT, 0) /* (AB2) UART0_RXD */
  254. J721E_IOPAD(0x1ec, PIN_OUTPUT, 0) /* (AB3) UART0_TXD */
  255. >;
  256. };
  257. main_i2c0_pins_default: main-i2c0-pins-default {
  258. pinctrl-single,pins = <
  259. J721E_IOPAD(0x220, PIN_INPUT_PULLUP, 0) /* (AC5) I2C0_SCL */
  260. J721E_IOPAD(0x224, PIN_INPUT_PULLUP, 0) /* (AA5) I2C0_SDA */
  261. >;
  262. };
  263. main_i2c1_pins_default: main-i2c1-pins-default {
  264. pinctrl-single,pins = <
  265. J721E_IOPAD(0x228, PIN_INPUT_PULLUP, 0) /* (Y6) I2C1_SCL */
  266. J721E_IOPAD(0x22c, PIN_INPUT_PULLUP, 0) /* (AA6) I2C1_SDA */
  267. >;
  268. };
  269. main_i2c3_pins_default: main-i2c3-pins-default {
  270. pinctrl-single,pins = <
  271. J721E_IOPAD(0x270, PIN_INPUT_PULLUP, 4) /* (T26) MMC2_CLK.I2C3_SCL */
  272. J721E_IOPAD(0x274, PIN_INPUT_PULLUP, 4) /* (T25) MMC2_CMD.I2C3_SDA */
  273. >;
  274. };
  275. main_usbss0_pins_default: main-usbss0-pins-default {
  276. pinctrl-single,pins = <
  277. J721E_IOPAD(0x290, PIN_OUTPUT, 0) /* (U6) USB0_DRVVBUS */
  278. J721E_IOPAD(0x210, PIN_INPUT, 7) /* (W3) MCAN1_RX.GPIO1_3 */
  279. >;
  280. };
  281. main_usbss1_pins_default: main-usbss1-pins-default {
  282. pinctrl-single,pins = <
  283. J721E_IOPAD(0x214, PIN_OUTPUT, 4) /* (V4) MCAN1_TX.USB1_DRVVBUS */
  284. >;
  285. };
  286. dp0_pins_default: dp0-pins-default {
  287. pinctrl-single,pins = <
  288. J721E_IOPAD(0x1c4, PIN_INPUT, 5) /* SPI0_CS1.DP0_HPD */
  289. >;
  290. };
  291. dp_pwr_en_pins_default: dp-pwr-en-pins-default {
  292. pinctrl-single,pins = <
  293. J721E_IOPAD(0x1c0, PIN_INPUT, 7) /* (AA2) SPI0_CS0.GPIO0_111 */
  294. >;
  295. };
  296. dss_vout0_pins_default: dss-vout0-pins-default {
  297. pinctrl-single,pins = <
  298. J721E_IOPAD(0x58, PIN_OUTPUT, 10) /* (AE22) PRG1_PRU1_GPO0.VOUT0_DATA0 */
  299. J721E_IOPAD(0x5c, PIN_OUTPUT, 10) /* (AG23) PRG1_PRU1_GPO1.VOUT0_DATA1 */
  300. J721E_IOPAD(0x60, PIN_OUTPUT, 10) /* (AF23) PRG1_PRU1_GPO2.VOUT0_DATA2 */
  301. J721E_IOPAD(0x64, PIN_OUTPUT, 10) /* (AD23) PRG1_PRU1_GPO3.VOUT0_DATA3 */
  302. J721E_IOPAD(0x68, PIN_OUTPUT, 10) /* (AH24) PRG1_PRU1_GPO4.VOUT0_DATA4 */
  303. J721E_IOPAD(0x6c, PIN_OUTPUT, 10) /* (AG21) PRG1_PRU1_GPO5.VOUT0_DATA5 */
  304. J721E_IOPAD(0x70, PIN_OUTPUT, 10) /* (AE23) PRG1_PRU1_GPO6.VOUT0_DATA6 */
  305. J721E_IOPAD(0x74, PIN_OUTPUT, 10) /* (AC21) PRG1_PRU1_GPO7.VOUT0_DATA7 */
  306. J721E_IOPAD(0x78, PIN_OUTPUT, 10) /* (Y23) PRG1_PRU1_GPO8.VOUT0_DATA8 */
  307. J721E_IOPAD(0x7c, PIN_OUTPUT, 10) /* (AF21) PRG1_PRU1_GPO9.VOUT0_DATA9 */
  308. J721E_IOPAD(0x80, PIN_OUTPUT, 10) /* (AB23) PRG1_PRU1_GPO10.VOUT0_DATA10 */
  309. J721E_IOPAD(0x84, PIN_OUTPUT, 10) /* (AJ25) PRG1_PRU1_GPO11.VOUT0_DATA11 */
  310. J721E_IOPAD(0x88, PIN_OUTPUT, 10) /* (AH25) PRG1_PRU1_GPO12.VOUT0_DATA12 */
  311. J721E_IOPAD(0x8c, PIN_OUTPUT, 10) /* (AG25) PRG1_PRU1_GPO13.VOUT0_DATA13 */
  312. J721E_IOPAD(0x90, PIN_OUTPUT, 10) /* (AH26) PRG1_PRU1_GPO14.VOUT0_DATA14 */
  313. J721E_IOPAD(0x94, PIN_OUTPUT, 10) /* (AJ27) PRG1_PRU1_GPO15.VOUT0_DATA15 */
  314. J721E_IOPAD(0x30, PIN_OUTPUT, 10) /* (AF24) PRG1_PRU0_GPO11.VOUT0_DATA16 */
  315. J721E_IOPAD(0x34, PIN_OUTPUT, 10) /* (AJ24) PRG1_PRU0_GPO12.VOUT0_DATA17 */
  316. J721E_IOPAD(0x38, PIN_OUTPUT, 10) /* (AG24) PRG1_PRU0_GPO13.VOUT0_DATA18 */
  317. J721E_IOPAD(0x3c, PIN_OUTPUT, 10) /* (AD24) PRG1_PRU0_GPO14.VOUT0_DATA19 */
  318. J721E_IOPAD(0x40, PIN_OUTPUT, 10) /* (AC24) PRG1_PRU0_GPO15.VOUT0_DATA20 */
  319. J721E_IOPAD(0x44, PIN_OUTPUT, 10) /* (AE24) PRG1_PRU0_GPO16.VOUT0_DATA21 */
  320. J721E_IOPAD(0x24, PIN_OUTPUT, 10) /* (AJ20) PRG1_PRU0_GPO8.VOUT0_DATA22 */
  321. J721E_IOPAD(0x28, PIN_OUTPUT, 10) /* (AG20) PRG1_PRU0_GPO9.VOUT0_DATA23 */
  322. J721E_IOPAD(0x9c, PIN_OUTPUT, 10) /* (AC22) PRG1_PRU1_GPO17.VOUT0_DE */
  323. J721E_IOPAD(0x98, PIN_OUTPUT, 10) /* (AJ26) PRG1_PRU1_GPO16.VOUT0_HSYNC */
  324. J721E_IOPAD(0xa4, PIN_OUTPUT, 10) /* (AH22) PRG1_PRU1_GPO19.VOUT0_PCLK */
  325. J721E_IOPAD(0xa0, PIN_OUTPUT, 10) /* (AJ22) PRG1_PRU1_GPO18.VOUT0_VSYNC */
  326. >;
  327. };
  328. hdmi_hpd_pins_default: hdmi-hpd-pins-default {
  329. pinctrl-single,pins = <
  330. J721E_IOPAD(0x204, PIN_INPUT, 7) /* (AD5) UART1_RTSn.GPIO1_0 */
  331. >;
  332. };
  333. hdmi_pdn_pins_default: hdmi-pdn-pins-default {
  334. pinctrl-single,pins = <
  335. J721E_IOPAD(0x200, PIN_INPUT, 7) /* (AC4) UART1_CTSn.GPIO0_127 */
  336. >;
  337. };
  338. /* Reset for M.2 E Key slot on PCIe0 */
  339. ekey_reset_pins_default: ekey-reset-pns-pins-default {
  340. pinctrl-single,pins = <
  341. J721E_IOPAD(0x124, PIN_INPUT, 7) /* (Y24) PRG0_PRU1_GPO9.GPIO0_72 */
  342. >;
  343. };
  344. };
  345. &wkup_pmx0 {
  346. mcu_cpsw_pins_default: mcu-cpsw-pins-default {
  347. pinctrl-single,pins = <
  348. J721E_WKUP_IOPAD(0x84, PIN_INPUT, 0) /* (B24) MCU_RGMII1_RD0 */
  349. J721E_WKUP_IOPAD(0x80, PIN_INPUT, 0) /* (A24) MCU_RGMII1_RD1 */
  350. J721E_WKUP_IOPAD(0x7c, PIN_INPUT, 0) /* (D24) MCU_RGMII1_RD2 */
  351. J721E_WKUP_IOPAD(0x78, PIN_INPUT, 0) /* (A25) MCU_RGMII1_RD3 */
  352. J721E_WKUP_IOPAD(0x74, PIN_INPUT, 0) /* (C24) MCU_RGMII1_RXC */
  353. J721E_WKUP_IOPAD(0x5c, PIN_INPUT, 0) /* (C25) MCU_RGMII1_RX_CTL */
  354. J721E_WKUP_IOPAD(0x6c, PIN_OUTPUT, 0) /* (B25) MCU_RGMII1_TD0 */
  355. J721E_WKUP_IOPAD(0x68, PIN_OUTPUT, 0) /* (A26) MCU_RGMII1_TD1 */
  356. J721E_WKUP_IOPAD(0x64, PIN_OUTPUT, 0) /* (A27) MCU_RGMII1_TD2 */
  357. J721E_WKUP_IOPAD(0x60, PIN_OUTPUT, 0) /* (A28) MCU_RGMII1_TD3 */
  358. J721E_WKUP_IOPAD(0x70, PIN_OUTPUT, 0) /* (B26) MCU_RGMII1_TXC */
  359. J721E_WKUP_IOPAD(0x58, PIN_OUTPUT, 0) /* (B27) MCU_RGMII1_TX_CTL */
  360. >;
  361. };
  362. mcu_mdio_pins_default: mcu-mdio1-pins-default {
  363. pinctrl-single,pins = <
  364. J721E_WKUP_IOPAD(0x8c, PIN_OUTPUT, 0) /* (F23) MCU_MDIO0_MDC */
  365. J721E_WKUP_IOPAD(0x88, PIN_INPUT, 0) /* (E23) MCU_MDIO0_MDIO */
  366. >;
  367. };
  368. mcu_fss0_ospi0_pins_default: mcu-fss0-ospi0-pins-default {
  369. pinctrl-single,pins = <
  370. J721E_WKUP_IOPAD(0x0, PIN_OUTPUT, 0) /* (E20) MCU_OSPI0_CLK */
  371. J721E_WKUP_IOPAD(0x2c, PIN_OUTPUT, 0) /* (F19) MCU_OSPI0_CSn0 */
  372. J721E_WKUP_IOPAD(0xc, PIN_INPUT, 0) /* (D20) MCU_OSPI0_D0 */
  373. J721E_WKUP_IOPAD(0x10, PIN_INPUT, 0) /* (G19) MCU_OSPI0_D1 */
  374. J721E_WKUP_IOPAD(0x14, PIN_INPUT, 0) /* (G20) MCU_OSPI0_D2 */
  375. J721E_WKUP_IOPAD(0x18, PIN_INPUT, 0) /* (F20) MCU_OSPI0_D3 */
  376. J721E_WKUP_IOPAD(0x1c, PIN_INPUT, 0) /* (F21) MCU_OSPI0_D4 */
  377. J721E_WKUP_IOPAD(0x20, PIN_INPUT, 0) /* (E21) MCU_OSPI0_D5 */
  378. J721E_WKUP_IOPAD(0x24, PIN_INPUT, 0) /* (B22) MCU_OSPI0_D6 */
  379. J721E_WKUP_IOPAD(0x28, PIN_INPUT, 0) /* (G21) MCU_OSPI0_D7 */
  380. J721E_WKUP_IOPAD(0x8, PIN_INPUT, 0) /* (D21) MCU_OSPI0_DQS */
  381. >;
  382. };
  383. vdd_mmc1_en_pins_default: vdd-mmc1-en-pins-default {
  384. pinctrl-single,pins = <
  385. J721E_WKUP_IOPAD(0xd0, PIN_OUTPUT, 7) /* (G27) WKUP_GPIO0_8 */
  386. >;
  387. };
  388. vdd_sd_dv_alt_pins_default: vdd-sd-dv-alt-pins-default {
  389. pinctrl-single,pins = <
  390. J721E_WKUP_IOPAD(0xd4, PIN_OUTPUT, 7) /* (G26) WKUP_GPIO0_9 */
  391. >;
  392. };
  393. wkup_i2c0_pins_default: wkup-i2c0-pins-default {
  394. pinctrl-single,pins = <
  395. J721E_WKUP_IOPAD(0xf8, PIN_INPUT_PULLUP, 0) /* (J25) WKUP_I2C0_SCL */
  396. J721E_WKUP_IOPAD(0xfc, PIN_INPUT_PULLUP, 0) /* (H24) WKUP_I2C0_SDA */
  397. >;
  398. };
  399. /* Reset for M.2 M Key slot on PCIe1 */
  400. mkey_reset_pins_default: mkey-reset-pns-pins-default {
  401. pinctrl-single,pins = <
  402. J721E_WKUP_IOPAD(0xdc, PIN_INPUT, 7) /* (H27) WKUP_GPIO0_11 */
  403. >;
  404. };
  405. };
  406. &wkup_uart0 {
  407. /* Wakeup UART is used by System firmware */
  408. status = "reserved";
  409. };
  410. &main_uart0 {
  411. pinctrl-names = "default";
  412. pinctrl-0 = <&main_uart0_pins_default>;
  413. /* Shared with ATF on this platform */
  414. power-domains = <&k3_pds 146 TI_SCI_PD_SHARED>;
  415. };
  416. &main_uart2 {
  417. /* Brought out on RPi header */
  418. status = "disabled";
  419. };
  420. &main_uart3 {
  421. /* UART not brought out */
  422. status = "disabled";
  423. };
  424. &main_uart5 {
  425. /* UART not brought out */
  426. status = "disabled";
  427. };
  428. &main_uart6 {
  429. /* UART not brought out */
  430. status = "disabled";
  431. };
  432. &main_uart7 {
  433. /* UART not brought out */
  434. status = "disabled";
  435. };
  436. &main_uart8 {
  437. /* UART not brought out */
  438. status = "disabled";
  439. };
  440. &main_uart9 {
  441. /* Brought out on M.2 E Key */
  442. status = "disabled";
  443. };
  444. &main_sdhci0 {
  445. /* Unused */
  446. status = "disabled";
  447. };
  448. &main_sdhci1 {
  449. /* SD Card */
  450. vmmc-supply = <&vdd_mmc1>;
  451. vqmmc-supply = <&vdd_sd_dv_alt>;
  452. pinctrl-names = "default";
  453. pinctrl-0 = <&main_mmc1_pins_default>;
  454. ti,driver-strength-ohm = <50>;
  455. disable-wp;
  456. };
  457. &main_sdhci2 {
  458. /* Unused */
  459. status = "disabled";
  460. };
  461. &ospi0 {
  462. pinctrl-names = "default";
  463. pinctrl-0 = <&mcu_fss0_ospi0_pins_default>;
  464. flash@0 {
  465. compatible = "jedec,spi-nor";
  466. reg = <0x0>;
  467. spi-tx-bus-width = <8>;
  468. spi-rx-bus-width = <8>;
  469. spi-max-frequency = <25000000>;
  470. cdns,tshsl-ns = <60>;
  471. cdns,tsd2d-ns = <60>;
  472. cdns,tchsh-ns = <60>;
  473. cdns,tslch-ns = <60>;
  474. cdns,read-delay = <4>;
  475. };
  476. };
  477. &ospi1 {
  478. /* Unused */
  479. status = "disabled";
  480. };
  481. &main_i2c0 {
  482. pinctrl-names = "default";
  483. pinctrl-0 = <&main_i2c0_pins_default>;
  484. clock-frequency = <400000>;
  485. i2c-mux@71 {
  486. compatible = "nxp,pca9543";
  487. #address-cells = <1>;
  488. #size-cells = <0>;
  489. reg = <0x71>;
  490. /* PCIe1 M.2 M Key I2C */
  491. i2c@0 {
  492. #address-cells = <1>;
  493. #size-cells = <0>;
  494. reg = <0>;
  495. };
  496. /* PCIe0 M.2 E Key I2C */
  497. i2c@1 {
  498. #address-cells = <1>;
  499. #size-cells = <0>;
  500. reg = <1>;
  501. };
  502. };
  503. };
  504. &main_i2c1 {
  505. pinctrl-names = "default";
  506. pinctrl-0 = <&main_i2c1_pins_default>;
  507. /* i2c1 is used for DVI DDC, so we need to use 100kHz */
  508. clock-frequency = <100000>;
  509. };
  510. &main_i2c2 {
  511. /* Unused */
  512. status = "disabled";
  513. };
  514. &main_i2c3 {
  515. pinctrl-names = "default";
  516. pinctrl-0 = <&main_i2c3_pins_default>;
  517. clock-frequency = <400000>;
  518. i2c-mux@70 {
  519. compatible = "nxp,pca9543";
  520. #address-cells = <1>;
  521. #size-cells = <0>;
  522. reg = <0x70>;
  523. /* CSI0 I2C */
  524. i2c@0 {
  525. #address-cells = <1>;
  526. #size-cells = <0>;
  527. reg = <0>;
  528. };
  529. /* CSI1 I2C */
  530. i2c@1 {
  531. #address-cells = <1>;
  532. #size-cells = <0>;
  533. reg = <1>;
  534. };
  535. };
  536. };
  537. &main_i2c4 {
  538. /* Unused */
  539. status = "disabled";
  540. };
  541. &main_i2c5 {
  542. /* Brought out on RPi Header */
  543. status = "disabled";
  544. };
  545. &main_i2c6 {
  546. /* Unused */
  547. status = "disabled";
  548. };
  549. &main_gpio2 {
  550. status = "disabled";
  551. };
  552. &main_gpio3 {
  553. status = "disabled";
  554. };
  555. &main_gpio4 {
  556. status = "disabled";
  557. };
  558. &main_gpio5 {
  559. status = "disabled";
  560. };
  561. &main_gpio6 {
  562. status = "disabled";
  563. };
  564. &main_gpio7 {
  565. status = "disabled";
  566. };
  567. &wkup_gpio1 {
  568. status = "disabled";
  569. };
  570. &main_r5fss0_core0{
  571. firmware-name = "pdk-ipc/ipc_echo_test_mcu2_0_release_strip.xer5f";
  572. };
  573. &usb_serdes_mux {
  574. idle-states = <1>, <1>; /* USB0 to SERDES3, USB1 to SERDES2 */
  575. };
  576. &serdes_ln_ctrl {
  577. idle-states = <J721E_SERDES0_LANE0_PCIE0_LANE0>, <J721E_SERDES0_LANE1_IP4_UNUSED>,
  578. <J721E_SERDES1_LANE0_PCIE1_LANE0>, <J721E_SERDES1_LANE1_PCIE1_LANE1>,
  579. <J721E_SERDES2_LANE0_IP1_UNUSED>, <J721E_SERDES2_LANE1_USB3_1>,
  580. <J721E_SERDES3_LANE0_USB3_0_SWAP>, <J721E_SERDES3_LANE1_USB3_0>,
  581. <J721E_SERDES4_LANE0_EDP_LANE0>, <J721E_SERDES4_LANE1_EDP_LANE1>,
  582. <J721E_SERDES4_LANE2_EDP_LANE2>, <J721E_SERDES4_LANE3_EDP_LANE3>;
  583. };
  584. &serdes_wiz3 {
  585. typec-dir-gpios = <&main_gpio1 3 GPIO_ACTIVE_HIGH>;
  586. typec-dir-debounce-ms = <700>; /* TUSB321, tCCB_DEFAULT 133 ms */
  587. };
  588. &serdes3 {
  589. serdes3_usb_link: phy@0 {
  590. reg = <0>;
  591. cdns,num-lanes = <2>;
  592. #phy-cells = <0>;
  593. cdns,phy-type = <PHY_TYPE_USB3>;
  594. resets = <&serdes_wiz3 1>, <&serdes_wiz3 2>;
  595. };
  596. };
  597. &serdes4 {
  598. torrent_phy_dp: phy@0 {
  599. reg = <0>;
  600. resets = <&serdes_wiz4 1>;
  601. cdns,phy-type = <PHY_TYPE_DP>;
  602. cdns,num-lanes = <4>;
  603. cdns,max-bit-rate = <5400>;
  604. #phy-cells = <0>;
  605. };
  606. };
  607. &mhdp {
  608. phys = <&torrent_phy_dp>;
  609. phy-names = "dpphy";
  610. pinctrl-names = "default";
  611. pinctrl-0 = <&dp0_pins_default>;
  612. };
  613. &usbss0 {
  614. pinctrl-names = "default";
  615. pinctrl-0 = <&main_usbss0_pins_default>;
  616. ti,vbus-divider;
  617. };
  618. &usb0 {
  619. dr_mode = "otg";
  620. maximum-speed = "super-speed";
  621. phys = <&serdes3_usb_link>;
  622. phy-names = "cdns3,usb3-phy";
  623. };
  624. &serdes2 {
  625. serdes2_usb_link: phy@1 {
  626. reg = <1>;
  627. cdns,num-lanes = <1>;
  628. #phy-cells = <0>;
  629. cdns,phy-type = <PHY_TYPE_USB3>;
  630. resets = <&serdes_wiz2 2>;
  631. };
  632. };
  633. &usbss1 {
  634. pinctrl-names = "default";
  635. pinctrl-0 = <&main_usbss1_pins_default>;
  636. ti,vbus-divider;
  637. };
  638. &usb1 {
  639. dr_mode = "host";
  640. maximum-speed = "super-speed";
  641. phys = <&serdes2_usb_link>;
  642. phy-names = "cdns3,usb3-phy";
  643. };
  644. &tscadc0 {
  645. /* Unused */
  646. status = "disabled";
  647. };
  648. &tscadc1 {
  649. /* Unused */
  650. status = "disabled";
  651. };
  652. &mcu_cpsw {
  653. pinctrl-names = "default";
  654. pinctrl-0 = <&mcu_cpsw_pins_default &mcu_mdio_pins_default>;
  655. };
  656. &davinci_mdio {
  657. phy0: ethernet-phy@0 {
  658. reg = <0>;
  659. ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
  660. ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
  661. };
  662. };
  663. &cpsw_port1 {
  664. phy-mode = "rgmii-rxid";
  665. phy-handle = <&phy0>;
  666. };
  667. &dss {
  668. pinctrl-names = "default";
  669. pinctrl-0 = <&dss_vout0_pins_default>;
  670. assigned-clocks = <&k3_clks 152 1>, /* VP 1 pixel clock */
  671. <&k3_clks 152 4>, /* VP 2 pixel clock */
  672. <&k3_clks 152 9>, /* VP 3 pixel clock */
  673. <&k3_clks 152 13>; /* VP 4 pixel clock */
  674. assigned-clock-parents = <&k3_clks 152 2>, /* PLL16_HSDIV0 */
  675. <&k3_clks 152 6>, /* DPI0_EXT_CLKSEL_OUT0 */
  676. <&k3_clks 152 11>, /* PLL18_HSDIV0 */
  677. <&k3_clks 152 18>; /* DPI1_EXT_CLKSEL_OUT0 */
  678. };
  679. &dss_ports {
  680. #address-cells = <1>;
  681. #size-cells = <0>;
  682. port@0 {
  683. reg = <0>;
  684. dpi0_out: endpoint {
  685. remote-endpoint = <&dp0_in>;
  686. };
  687. };
  688. port@1 {
  689. reg = <1>;
  690. dpi1_out: endpoint {
  691. remote-endpoint = <&tfp410_in>;
  692. };
  693. };
  694. };
  695. &dp0_ports {
  696. #address-cells = <1>;
  697. #size-cells = <0>;
  698. port@0 {
  699. reg = <0>;
  700. dp0_in: endpoint {
  701. remote-endpoint = <&dpi0_out>;
  702. };
  703. };
  704. port@4 {
  705. reg = <4>;
  706. dp0_out: endpoint {
  707. remote-endpoint = <&dp_connector_in>;
  708. };
  709. };
  710. };
  711. &mcasp0 {
  712. /* Unused */
  713. status = "disabled";
  714. };
  715. &mcasp1 {
  716. /* Unused */
  717. status = "disabled";
  718. };
  719. &mcasp2 {
  720. /* Unused */
  721. status = "disabled";
  722. };
  723. &mcasp3 {
  724. /* Unused */
  725. status = "disabled";
  726. };
  727. &mcasp4 {
  728. /* Unused */
  729. status = "disabled";
  730. };
  731. &mcasp5 {
  732. /* Unused */
  733. status = "disabled";
  734. };
  735. &mcasp6 {
  736. /* Brought out on RPi header */
  737. status = "disabled";
  738. };
  739. &mcasp7 {
  740. /* Unused */
  741. status = "disabled";
  742. };
  743. &mcasp8 {
  744. /* Unused */
  745. status = "disabled";
  746. };
  747. &mcasp9 {
  748. /* Unused */
  749. status = "disabled";
  750. };
  751. &mcasp10 {
  752. /* Unused */
  753. status = "disabled";
  754. };
  755. &mcasp11 {
  756. /* Brought out on M.2 E Key */
  757. status = "disabled";
  758. };
  759. &serdes0 {
  760. serdes0_pcie_link: phy@0 {
  761. reg = <0>;
  762. cdns,num-lanes = <1>;
  763. #phy-cells = <0>;
  764. cdns,phy-type = <PHY_TYPE_PCIE>;
  765. resets = <&serdes_wiz0 1>;
  766. };
  767. };
  768. &serdes1 {
  769. serdes1_pcie_link: phy@0 {
  770. reg = <0>;
  771. cdns,num-lanes = <2>;
  772. #phy-cells = <0>;
  773. cdns,phy-type = <PHY_TYPE_PCIE>;
  774. resets = <&serdes_wiz1 1>, <&serdes_wiz1 2>;
  775. };
  776. };
  777. &pcie0_rc {
  778. pinctrl-names = "default";
  779. pinctrl-0 = <&ekey_reset_pins_default>;
  780. reset-gpios = <&main_gpio0 72 GPIO_ACTIVE_HIGH>;
  781. phys = <&serdes0_pcie_link>;
  782. phy-names = "pcie-phy";
  783. num-lanes = <1>;
  784. };
  785. &pcie1_rc {
  786. pinctrl-names = "default";
  787. pinctrl-0 = <&mkey_reset_pins_default>;
  788. reset-gpios = <&wkup_gpio0 11 GPIO_ACTIVE_HIGH>;
  789. phys = <&serdes1_pcie_link>;
  790. phy-names = "pcie-phy";
  791. num-lanes = <2>;
  792. };
  793. &pcie2_rc {
  794. /* Unused */
  795. status = "disabled";
  796. };
  797. &pcie0_ep {
  798. status = "disabled";
  799. phys = <&serdes0_pcie_link>;
  800. phy-names = "pcie-phy";
  801. num-lanes = <1>;
  802. };
  803. &pcie1_ep {
  804. status = "disabled";
  805. phys = <&serdes1_pcie_link>;
  806. phy-names = "pcie-phy";
  807. num-lanes = <2>;
  808. };
  809. &pcie2_ep {
  810. /* Unused */
  811. status = "disabled";
  812. };
  813. &pcie3_rc {
  814. /* Unused */
  815. status = "disabled";
  816. };
  817. &pcie3_ep {
  818. /* Unused */
  819. status = "disabled";
  820. };
  821. &icssg0_mdio {
  822. status = "disabled";
  823. };
  824. &icssg1_mdio {
  825. status = "disabled";
  826. };
  827. &ufs_wrapper {
  828. status = "disabled";
  829. };
  830. &mailbox0_cluster0 {
  831. interrupts = <436>;
  832. mbox_mcu_r5fss0_core0: mbox-mcu-r5fss0-core0 {
  833. ti,mbox-rx = <0 0 0>;
  834. ti,mbox-tx = <1 0 0>;
  835. };
  836. mbox_mcu_r5fss0_core1: mbox-mcu-r5fss0-core1 {
  837. ti,mbox-rx = <2 0 0>;
  838. ti,mbox-tx = <3 0 0>;
  839. };
  840. };
  841. &mailbox0_cluster1 {
  842. interrupts = <432>;
  843. mbox_main_r5fss0_core0: mbox-main-r5fss0-core0 {
  844. ti,mbox-rx = <0 0 0>;
  845. ti,mbox-tx = <1 0 0>;
  846. };
  847. mbox_main_r5fss0_core1: mbox-main-r5fss0-core1 {
  848. ti,mbox-rx = <2 0 0>;
  849. ti,mbox-tx = <3 0 0>;
  850. };
  851. };
  852. &mailbox0_cluster2 {
  853. interrupts = <428>;
  854. mbox_main_r5fss1_core0: mbox-main-r5fss1-core0 {
  855. ti,mbox-rx = <0 0 0>;
  856. ti,mbox-tx = <1 0 0>;
  857. };
  858. mbox_main_r5fss1_core1: mbox-main-r5fss1-core1 {
  859. ti,mbox-rx = <2 0 0>;
  860. ti,mbox-tx = <3 0 0>;
  861. };
  862. };
  863. &mailbox0_cluster3 {
  864. interrupts = <424>;
  865. mbox_c66_0: mbox-c66-0 {
  866. ti,mbox-rx = <0 0 0>;
  867. ti,mbox-tx = <1 0 0>;
  868. };
  869. mbox_c66_1: mbox-c66-1 {
  870. ti,mbox-rx = <2 0 0>;
  871. ti,mbox-tx = <3 0 0>;
  872. };
  873. };
  874. &mailbox0_cluster4 {
  875. interrupts = <420>;
  876. mbox_c71_0: mbox-c71-0 {
  877. ti,mbox-rx = <0 0 0>;
  878. ti,mbox-tx = <1 0 0>;
  879. };
  880. };
  881. &mailbox0_cluster5 {
  882. status = "disabled";
  883. };
  884. &mailbox0_cluster6 {
  885. status = "disabled";
  886. };
  887. &mailbox0_cluster7 {
  888. status = "disabled";
  889. };
  890. &mailbox0_cluster8 {
  891. status = "disabled";
  892. };
  893. &mailbox0_cluster9 {
  894. status = "disabled";
  895. };
  896. &mailbox0_cluster10 {
  897. status = "disabled";
  898. };
  899. &mailbox0_cluster11 {
  900. status = "disabled";
  901. };
  902. &mcu_r5fss0_core0 {
  903. mboxes = <&mailbox0_cluster0 &mbox_mcu_r5fss0_core0>;
  904. memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
  905. <&mcu_r5fss0_core0_memory_region>;
  906. };
  907. &mcu_r5fss0_core1 {
  908. mboxes = <&mailbox0_cluster0 &mbox_mcu_r5fss0_core1>;
  909. memory-region = <&mcu_r5fss0_core1_dma_memory_region>,
  910. <&mcu_r5fss0_core1_memory_region>;
  911. };
  912. &main_r5fss0_core0 {
  913. mboxes = <&mailbox0_cluster1 &mbox_main_r5fss0_core0>;
  914. memory-region = <&main_r5fss0_core0_dma_memory_region>,
  915. <&main_r5fss0_core0_memory_region>;
  916. };
  917. &main_r5fss0_core1 {
  918. mboxes = <&mailbox0_cluster1 &mbox_main_r5fss0_core1>;
  919. memory-region = <&main_r5fss0_core1_dma_memory_region>,
  920. <&main_r5fss0_core1_memory_region>;
  921. };
  922. &main_r5fss1_core0 {
  923. mboxes = <&mailbox0_cluster2 &mbox_main_r5fss1_core0>;
  924. memory-region = <&main_r5fss1_core0_dma_memory_region>,
  925. <&main_r5fss1_core0_memory_region>;
  926. };
  927. &main_r5fss1_core1 {
  928. mboxes = <&mailbox0_cluster2 &mbox_main_r5fss1_core1>;
  929. memory-region = <&main_r5fss1_core1_dma_memory_region>,
  930. <&main_r5fss1_core1_memory_region>;
  931. };
  932. &c66_0 {
  933. mboxes = <&mailbox0_cluster3 &mbox_c66_0>;
  934. memory-region = <&c66_0_dma_memory_region>,
  935. <&c66_0_memory_region>;
  936. };
  937. &c66_1 {
  938. mboxes = <&mailbox0_cluster3 &mbox_c66_1>;
  939. memory-region = <&c66_1_dma_memory_region>,
  940. <&c66_1_memory_region>;
  941. };
  942. &c71_0 {
  943. mboxes = <&mailbox0_cluster4 &mbox_c71_0>;
  944. memory-region = <&c71_0_dma_memory_region>,
  945. <&c71_0_memory_region>;
  946. };