k3-j721s2-mcu-wakeup.dtsi 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Device Tree Source for J721S2 SoC Family MCU/WAKEUP Domain peripherals
  4. *
  5. * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
  6. */
  7. &cbass_mcu_wakeup {
  8. sms: system-controller@44083000 {
  9. compatible = "ti,k2g-sci";
  10. ti,host-id = <12>;
  11. mbox-names = "rx", "tx";
  12. mboxes = <&secure_proxy_main 11>,
  13. <&secure_proxy_main 13>;
  14. reg-names = "debug_messages";
  15. reg = <0x00 0x44083000 0x00 0x1000>;
  16. k3_pds: power-controller {
  17. compatible = "ti,sci-pm-domain";
  18. #power-domain-cells = <2>;
  19. };
  20. k3_clks: clock-controller {
  21. compatible = "ti,k2g-sci-clk";
  22. #clock-cells = <2>;
  23. };
  24. k3_reset: reset-controller {
  25. compatible = "ti,sci-reset";
  26. #reset-cells = <2>;
  27. };
  28. };
  29. chipid@43000014 {
  30. compatible = "ti,am654-chipid";
  31. reg = <0x00 0x43000014 0x00 0x4>;
  32. };
  33. mcu_ram: sram@41c00000 {
  34. compatible = "mmio-sram";
  35. reg = <0x00 0x41c00000 0x00 0x100000>;
  36. ranges = <0x00 0x00 0x41c00000 0x100000>;
  37. #address-cells = <1>;
  38. #size-cells = <1>;
  39. };
  40. wkup_pmx0: pinctrl@4301c000 {
  41. compatible = "pinctrl-single";
  42. /* Proxy 0 addressing */
  43. reg = <0x00 0x4301c000 0x00 0x178>;
  44. #pinctrl-cells = <1>;
  45. pinctrl-single,register-width = <32>;
  46. pinctrl-single,function-mask = <0xffffffff>;
  47. };
  48. wkup_gpio_intr: interrupt-controller@42200000 {
  49. compatible = "ti,sci-intr";
  50. reg = <0x00 0x42200000 0x00 0x400>;
  51. ti,intr-trigger-type = <1>;
  52. interrupt-controller;
  53. interrupt-parent = <&gic500>;
  54. #interrupt-cells = <1>;
  55. ti,sci = <&sms>;
  56. ti,sci-dev-id = <125>;
  57. ti,interrupt-ranges = <16 960 16>;
  58. };
  59. mcu_conf: syscon@40f00000 {
  60. compatible = "syscon", "simple-mfd";
  61. reg = <0x0 0x40f00000 0x0 0x20000>;
  62. #address-cells = <1>;
  63. #size-cells = <1>;
  64. ranges = <0x0 0x0 0x40f00000 0x20000>;
  65. phy_gmii_sel: phy@4040 {
  66. compatible = "ti,am654-phy-gmii-sel";
  67. reg = <0x4040 0x4>;
  68. #phy-cells = <1>;
  69. };
  70. };
  71. wkup_uart0: serial@42300000 {
  72. compatible = "ti,j721e-uart", "ti,am654-uart";
  73. reg = <0x00 0x42300000 0x00 0x200>;
  74. interrupts = <GIC_SPI 897 IRQ_TYPE_LEVEL_HIGH>;
  75. current-speed = <115200>;
  76. clocks = <&k3_clks 359 3>;
  77. clock-names = "fclk";
  78. power-domains = <&k3_pds 359 TI_SCI_PD_EXCLUSIVE>;
  79. };
  80. mcu_uart0: serial@40a00000 {
  81. compatible = "ti,j721e-uart", "ti,am654-uart";
  82. reg = <0x00 0x40a00000 0x00 0x200>;
  83. interrupts = <GIC_SPI 846 IRQ_TYPE_LEVEL_HIGH>;
  84. current-speed = <115200>;
  85. clocks = <&k3_clks 149 3>;
  86. clock-names = "fclk";
  87. power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>;
  88. };
  89. wkup_gpio0: gpio@42110000 {
  90. compatible = "ti,j721e-gpio", "ti,keystone-gpio";
  91. reg = <0x00 0x42110000 0x00 0x100>;
  92. gpio-controller;
  93. #gpio-cells = <2>;
  94. interrupt-parent = <&wkup_gpio_intr>;
  95. interrupts = <103>, <104>, <105>, <106>, <107>, <108>;
  96. interrupt-controller;
  97. #interrupt-cells = <2>;
  98. ti,ngpio = <89>;
  99. ti,davinci-gpio-unbanked = <0>;
  100. power-domains = <&k3_pds 115 TI_SCI_PD_EXCLUSIVE>;
  101. clocks = <&k3_clks 115 0>;
  102. clock-names = "gpio";
  103. };
  104. wkup_gpio1: gpio@42100000 {
  105. compatible = "ti,j721e-gpio", "ti,keystone-gpio";
  106. reg = <0x00 0x42100000 0x00 0x100>;
  107. gpio-controller;
  108. #gpio-cells = <2>;
  109. interrupt-parent = <&wkup_gpio_intr>;
  110. interrupts = <112>, <113>, <114>, <115>, <116>, <117>;
  111. interrupt-controller;
  112. #interrupt-cells = <2>;
  113. ti,ngpio = <89>;
  114. ti,davinci-gpio-unbanked = <0>;
  115. power-domains = <&k3_pds 116 TI_SCI_PD_EXCLUSIVE>;
  116. clocks = <&k3_clks 116 0>;
  117. clock-names = "gpio";
  118. };
  119. wkup_i2c0: i2c@42120000 {
  120. compatible = "ti,j721e-i2c", "ti,omap4-i2c";
  121. reg = <0x00 0x42120000 0x00 0x100>;
  122. interrupts = <GIC_SPI 896 IRQ_TYPE_LEVEL_HIGH>;
  123. #address-cells = <1>;
  124. #size-cells = <0>;
  125. clocks = <&k3_clks 223 1>;
  126. clock-names = "fck";
  127. power-domains = <&k3_pds 223 TI_SCI_PD_EXCLUSIVE>;
  128. };
  129. mcu_i2c0: i2c@40b00000 {
  130. compatible = "ti,j721e-i2c", "ti,omap4-i2c";
  131. reg = <0x00 0x40b00000 0x00 0x100>;
  132. interrupts = <GIC_SPI 852 IRQ_TYPE_LEVEL_HIGH>;
  133. #address-cells = <1>;
  134. #size-cells = <0>;
  135. clocks = <&k3_clks 221 1>;
  136. clock-names = "fck";
  137. power-domains = <&k3_pds 221 TI_SCI_PD_EXCLUSIVE>;
  138. };
  139. mcu_i2c1: i2c@40b10000 {
  140. compatible = "ti,j721e-i2c", "ti,omap4-i2c";
  141. reg = <0x00 0x40b10000 0x00 0x100>;
  142. interrupts = <GIC_SPI 853 IRQ_TYPE_LEVEL_HIGH>;
  143. #address-cells = <1>;
  144. #size-cells = <0>;
  145. clocks = <&k3_clks 222 1>;
  146. clock-names = "fck";
  147. power-domains = <&k3_pds 222 TI_SCI_PD_EXCLUSIVE>;
  148. };
  149. mcu_mcan0: can@40528000 {
  150. compatible = "bosch,m_can";
  151. reg = <0x00 0x40528000 0x00 0x200>,
  152. <0x00 0x40500000 0x00 0x8000>;
  153. reg-names = "m_can", "message_ram";
  154. power-domains = <&k3_pds 207 TI_SCI_PD_EXCLUSIVE>;
  155. clocks = <&k3_clks 207 0>, <&k3_clks 207 1>;
  156. clock-names = "hclk", "cclk";
  157. interrupts = <GIC_SPI 832 IRQ_TYPE_LEVEL_HIGH>,
  158. <GIC_SPI 833 IRQ_TYPE_LEVEL_HIGH>;
  159. interrupt-names = "int0", "int1";
  160. bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
  161. };
  162. mcu_mcan1: can@40568000 {
  163. compatible = "bosch,m_can";
  164. reg = <0x00 0x40568000 0x00 0x200>,
  165. <0x00 0x40540000 0x00 0x8000>;
  166. reg-names = "m_can", "message_ram";
  167. power-domains = <&k3_pds 208 TI_SCI_PD_EXCLUSIVE>;
  168. clocks = <&k3_clks 208 0>, <&k3_clks 208 1>;
  169. clock-names = "hclk", "cclk";
  170. interrupts = <GIC_SPI 835 IRQ_TYPE_LEVEL_HIGH>,
  171. <GIC_SPI 836 IRQ_TYPE_LEVEL_HIGH>;
  172. interrupt-names = "int0", "int1";
  173. bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
  174. };
  175. mcu_navss: bus@28380000{
  176. compatible = "simple-mfd";
  177. #address-cells = <2>;
  178. #size-cells = <2>;
  179. ranges = <0x00 0x28380000 0x00 0x28380000 0x00 0x03880000>;
  180. dma-coherent;
  181. dma-ranges;
  182. ti,sci-dev-id = <267>;
  183. mcu_ringacc: ringacc@2b800000 {
  184. compatible = "ti,am654-navss-ringacc";
  185. reg = <0x0 0x2b800000 0x0 0x400000>,
  186. <0x0 0x2b000000 0x0 0x400000>,
  187. <0x0 0x28590000 0x0 0x100>,
  188. <0x0 0x2a500000 0x0 0x40000>;
  189. reg-names = "rt", "fifos", "proxy_gcfg", "proxy_target";
  190. ti,num-rings = <286>;
  191. ti,sci-rm-range-gp-rings = <0x1>;
  192. ti,sci = <&sms>;
  193. ti,sci-dev-id = <272>;
  194. msi-parent = <&main_udmass_inta>;
  195. };
  196. mcu_udmap: dma-controller@285c0000 {
  197. compatible = "ti,j721e-navss-mcu-udmap";
  198. reg = <0x0 0x285c0000 0x0 0x100>,
  199. <0x0 0x2a800000 0x0 0x40000>,
  200. <0x0 0x2aa00000 0x0 0x40000>;
  201. reg-names = "gcfg", "rchanrt", "tchanrt";
  202. msi-parent = <&main_udmass_inta>;
  203. #dma-cells = <1>;
  204. ti,sci = <&sms>;
  205. ti,sci-dev-id = <273>;
  206. ti,ringacc = <&mcu_ringacc>;
  207. ti,sci-rm-range-tchan = <0x0d>, /* TX_CHAN */
  208. <0x0f>; /* TX_HCHAN */
  209. ti,sci-rm-range-rchan = <0x0a>, /* RX_CHAN */
  210. <0x0b>; /* RX_HCHAN */
  211. ti,sci-rm-range-rflow = <0x00>; /* GP RFLOW */
  212. };
  213. };
  214. mcu_cpsw: ethernet@46000000 {
  215. compatible = "ti,j721e-cpsw-nuss";
  216. #address-cells = <2>;
  217. #size-cells = <2>;
  218. reg = <0x0 0x46000000 0x0 0x200000>;
  219. reg-names = "cpsw_nuss";
  220. ranges = <0x0 0x0 0x0 0x46000000 0x0 0x200000>;
  221. dma-coherent;
  222. clocks = <&k3_clks 29 28>;
  223. clock-names = "fck";
  224. power-domains = <&k3_pds 29 TI_SCI_PD_EXCLUSIVE>;
  225. dmas = <&mcu_udmap 0xf000>,
  226. <&mcu_udmap 0xf001>,
  227. <&mcu_udmap 0xf002>,
  228. <&mcu_udmap 0xf003>,
  229. <&mcu_udmap 0xf004>,
  230. <&mcu_udmap 0xf005>,
  231. <&mcu_udmap 0xf006>,
  232. <&mcu_udmap 0xf007>,
  233. <&mcu_udmap 0x7000>;
  234. dma-names = "tx0", "tx1", "tx2", "tx3",
  235. "tx4", "tx5", "tx6", "tx7",
  236. "rx";
  237. ethernet-ports {
  238. #address-cells = <1>;
  239. #size-cells = <0>;
  240. cpsw_port1: port@1 {
  241. reg = <1>;
  242. ti,mac-only;
  243. label = "port1";
  244. ti,syscon-efuse = <&mcu_conf 0x200>;
  245. phys = <&phy_gmii_sel 1>;
  246. };
  247. };
  248. davinci_mdio: mdio@f00 {
  249. compatible = "ti,cpsw-mdio","ti,davinci_mdio";
  250. reg = <0x0 0xf00 0x0 0x100>;
  251. #address-cells = <1>;
  252. #size-cells = <0>;
  253. clocks = <&k3_clks 29 28>;
  254. clock-names = "fck";
  255. bus_freq = <1000000>;
  256. };
  257. cpts@3d000 {
  258. compatible = "ti,am65-cpts";
  259. reg = <0x0 0x3d000 0x0 0x400>;
  260. clocks = <&k3_clks 29 3>;
  261. clock-names = "cpts";
  262. interrupts-extended = <&gic500 GIC_SPI 858 IRQ_TYPE_LEVEL_HIGH>;
  263. interrupt-names = "cpts";
  264. ti,cpts-ext-ts-inputs = <4>;
  265. ti,cpts-periodic-outputs = <2>;
  266. };
  267. };
  268. };