imx8mq-nitrogen-som.dtsi 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /*
  3. * Copyright 2018 Boundary Devices
  4. * Copyright 2021 Lucas Stach <[email protected]>
  5. */
  6. #include "imx8mq.dtsi"
  7. / {
  8. model = "Boundary Devices i.MX8MQ Nitrogen8M";
  9. compatible = "boundary,imx8mq-nitrogen8m-som", "fsl,imx8mq";
  10. chosen {
  11. stdout-path = &uart1;
  12. };
  13. reg_1p8v: regulator-fixed-1v8 {
  14. compatible = "regulator-fixed";
  15. regulator-name = "1P8V";
  16. regulator-min-microvolt = <1800000>;
  17. regulator-max-microvolt = <1800000>;
  18. };
  19. reg_snvs: regulator-fixed-snvs {
  20. compatible = "regulator-fixed";
  21. regulator-name = "VDD_SNVS";
  22. regulator-min-microvolt = <3300000>;
  23. regulator-max-microvolt = <3300000>;
  24. };
  25. };
  26. &{/opp-table/opp-800000000} {
  27. opp-microvolt = <1000000>;
  28. };
  29. &{/opp-table/opp-1000000000} {
  30. opp-microvolt = <1000000>;
  31. };
  32. &A53_0 {
  33. cpu-supply = <&reg_arm_dram>;
  34. };
  35. &A53_1 {
  36. cpu-supply = <&reg_arm_dram>;
  37. };
  38. &A53_2 {
  39. cpu-supply = <&reg_arm_dram>;
  40. };
  41. &A53_3 {
  42. cpu-supply = <&reg_arm_dram>;
  43. };
  44. &fec1 {
  45. pinctrl-names = "default";
  46. pinctrl-0 = <&pinctrl_fec1>;
  47. phy-mode = "rgmii-id";
  48. phy-handle = <&ethphy0>;
  49. fsl,magic-packet;
  50. mdio {
  51. #address-cells = <1>;
  52. #size-cells = <0>;
  53. ethphy0: ethernet-phy@4 {
  54. compatible = "ethernet-phy-ieee802.3-c22";
  55. reg = <4>;
  56. interrupt-parent = <&gpio1>;
  57. interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
  58. reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
  59. reset-assert-us = <10000>;
  60. reset-deassert-us = <300>;
  61. };
  62. };
  63. };
  64. &i2c1 {
  65. clock-frequency = <400000>;
  66. pinctrl-names = "default";
  67. pinctrl-0 = <&pinctrl_i2c1>;
  68. status = "okay";
  69. i2c-mux@70 {
  70. compatible = "nxp,pca9546";
  71. pinctrl-names = "default";
  72. pinctrl-0 = <&pinctrl_i2c1_pca9546>;
  73. reg = <0x70>;
  74. reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
  75. #address-cells = <1>;
  76. #size-cells = <0>;
  77. i2c1a: i2c@0 {
  78. reg = <0>;
  79. #address-cells = <1>;
  80. #size-cells = <0>;
  81. reg_arm_dram: regulator@60 {
  82. compatible = "fcs,fan53555";
  83. reg = <0x60>;
  84. regulator-name = "VDD_ARM_DRAM_1V";
  85. regulator-min-microvolt = <1000000>;
  86. regulator-max-microvolt = <1000000>;
  87. regulator-always-on;
  88. };
  89. };
  90. i2c1b: i2c@1 {
  91. reg = <1>;
  92. #address-cells = <1>;
  93. #size-cells = <0>;
  94. reg_dram_1p1v: regulator@60 {
  95. compatible = "fcs,fan53555";
  96. reg = <0x60>;
  97. regulator-name = "NVCC_DRAM_1P1V";
  98. regulator-min-microvolt = <1100000>;
  99. regulator-max-microvolt = <1100000>;
  100. regulator-always-on;
  101. };
  102. };
  103. i2c1c: i2c@2 {
  104. reg = <2>;
  105. #address-cells = <1>;
  106. #size-cells = <0>;
  107. reg_soc_gpu_vpu: regulator@60 {
  108. compatible = "fcs,fan53555";
  109. reg = <0x60>;
  110. regulator-name = "VDD_SOC_GPU_VPU";
  111. regulator-min-microvolt = <900000>;
  112. regulator-max-microvolt = <900000>;
  113. regulator-always-on;
  114. };
  115. };
  116. i2c1d: i2c@3 {
  117. reg = <3>;
  118. #address-cells = <1>;
  119. #size-cells = <0>;
  120. };
  121. };
  122. };
  123. &pgc_gpu {
  124. power-supply = <&reg_soc_gpu_vpu>;
  125. };
  126. &pgc_vpu {
  127. power-supply = <&reg_soc_gpu_vpu>;
  128. };
  129. &uart1 {
  130. pinctrl-names = "default";
  131. pinctrl-0 = <&pinctrl_uart1>;
  132. status = "okay";
  133. };
  134. &usdhc1 {
  135. assigned-clocks = <&clk IMX8MQ_CLK_USDHC1>;
  136. assigned-clock-rates = <400000000>;
  137. pinctrl-names = "default", "state_100mhz", "state_200mhz";
  138. pinctrl-0 = <&pinctrl_usdhc1>;
  139. pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
  140. pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
  141. vqmmc-supply = <&reg_1p8v>;
  142. vmmc-supply = <&reg_snvs>;
  143. bus-width = <8>;
  144. non-removable;
  145. no-mmc-hs400;
  146. no-sdio;
  147. no-sd;
  148. status = "okay";
  149. };
  150. &wdog1 {
  151. pinctrl-names = "default";
  152. pinctrl-0 = <&pinctrl_wdog>;
  153. fsl,ext-reset-output;
  154. status = "okay";
  155. };
  156. &iomuxc {
  157. pinctrl_fec1: fec1grp {
  158. fsl,pins = <
  159. MX8MQ_IOMUXC_ENET_MDC_ENET1_MDC 0x3
  160. MX8MQ_IOMUXC_ENET_MDIO_ENET1_MDIO 0x23
  161. MX8MQ_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL 0x1f
  162. MX8MQ_IOMUXC_ENET_TXC_ENET1_RGMII_TXC 0x1f
  163. MX8MQ_IOMUXC_ENET_TD0_ENET1_RGMII_TD0 0x1f
  164. MX8MQ_IOMUXC_ENET_TD1_ENET1_RGMII_TD1 0x1f
  165. MX8MQ_IOMUXC_ENET_TD2_ENET1_RGMII_TD2 0x1f
  166. MX8MQ_IOMUXC_ENET_TD3_ENET1_RGMII_TD3 0x1f
  167. MX8MQ_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL 0x91
  168. MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC 0xd1
  169. MX8MQ_IOMUXC_ENET_RD0_ENET1_RGMII_RD0 0x91
  170. MX8MQ_IOMUXC_ENET_RD1_ENET1_RGMII_RD1 0x91
  171. MX8MQ_IOMUXC_ENET_RD2_ENET1_RGMII_RD2 0x91
  172. MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3 0xd1
  173. MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9 0x1
  174. MX8MQ_IOMUXC_GPIO1_IO11_GPIO1_IO11 0x41
  175. >;
  176. };
  177. pinctrl_i2c1: i2c1grp {
  178. fsl,pins = <
  179. MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL 0x40000022
  180. MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA 0x40000022
  181. >;
  182. };
  183. pinctrl_i2c1_pca9546: i2c1-pca9546grp {
  184. fsl,pins = <
  185. MX8MQ_IOMUXC_GPIO1_IO08_GPIO1_IO8 0x49
  186. >;
  187. };
  188. pinctrl_uart1: uart1grp {
  189. fsl,pins = <
  190. MX8MQ_IOMUXC_UART1_RXD_UART1_DCE_RX 0x45
  191. MX8MQ_IOMUXC_UART1_TXD_UART1_DCE_TX 0x45
  192. >;
  193. };
  194. pinctrl_usdhc1: usdhc1grp {
  195. fsl,pins = <
  196. MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK 0x83
  197. MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD 0xc3
  198. MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0 0xc3
  199. MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1 0xc3
  200. MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2 0xc3
  201. MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3 0xc3
  202. MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4 0xc3
  203. MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5 0xc3
  204. MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6 0xc3
  205. MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7 0xc3
  206. MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B 0xc1
  207. >;
  208. };
  209. pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
  210. fsl,pins = <
  211. MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK 0x8d
  212. MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD 0xcd
  213. MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0 0xcd
  214. MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1 0xcd
  215. MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2 0xcd
  216. MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3 0xcd
  217. MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4 0xcd
  218. MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5 0xcd
  219. MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6 0xcd
  220. MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7 0xcd
  221. >;
  222. };
  223. pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
  224. fsl,pins = <
  225. MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK 0x9f
  226. MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD 0xdf
  227. MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0 0xdf
  228. MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1 0xdf
  229. MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2 0xdf
  230. MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3 0xdf
  231. MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4 0xdf
  232. MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5 0xdf
  233. MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6 0xdf
  234. MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7 0xdf
  235. >;
  236. };
  237. pinctrl_wdog: wdoggrp {
  238. fsl,pins = <
  239. MX8MQ_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B 0xc6
  240. >;
  241. };
  242. };