imx8-ss-dma.dtsi 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * Copyright 2018-2019 NXP
  4. * Dong Aisheng <[email protected]>
  5. */
  6. #include <dt-bindings/clock/imx8-lpcg.h>
  7. #include <dt-bindings/firmware/imx/rsrc.h>
  8. dma_subsys: bus@5a000000 {
  9. compatible = "simple-bus";
  10. #address-cells = <1>;
  11. #size-cells = <1>;
  12. ranges = <0x5a000000 0x0 0x5a000000 0x1000000>;
  13. dma_ipg_clk: clock-dma-ipg {
  14. compatible = "fixed-clock";
  15. #clock-cells = <0>;
  16. clock-frequency = <120000000>;
  17. clock-output-names = "dma_ipg_clk";
  18. };
  19. lpuart0: serial@5a060000 {
  20. reg = <0x5a060000 0x1000>;
  21. interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>;
  22. clocks = <&uart0_lpcg IMX_LPCG_CLK_4>,
  23. <&uart0_lpcg IMX_LPCG_CLK_0>;
  24. clock-names = "ipg", "baud";
  25. assigned-clocks = <&clk IMX_SC_R_UART_0 IMX_SC_PM_CLK_PER>;
  26. assigned-clock-rates = <80000000>;
  27. power-domains = <&pd IMX_SC_R_UART_0>;
  28. status = "disabled";
  29. };
  30. lpuart1: serial@5a070000 {
  31. reg = <0x5a070000 0x1000>;
  32. interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>;
  33. clocks = <&uart1_lpcg IMX_LPCG_CLK_4>,
  34. <&uart1_lpcg IMX_LPCG_CLK_0>;
  35. clock-names = "ipg", "baud";
  36. assigned-clocks = <&clk IMX_SC_R_UART_1 IMX_SC_PM_CLK_PER>;
  37. assigned-clock-rates = <80000000>;
  38. power-domains = <&pd IMX_SC_R_UART_1>;
  39. status = "disabled";
  40. };
  41. lpuart2: serial@5a080000 {
  42. reg = <0x5a080000 0x1000>;
  43. interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
  44. clocks = <&uart2_lpcg IMX_LPCG_CLK_4>,
  45. <&uart2_lpcg IMX_LPCG_CLK_0>;
  46. clock-names = "ipg", "baud";
  47. assigned-clocks = <&clk IMX_SC_R_UART_2 IMX_SC_PM_CLK_PER>;
  48. assigned-clock-rates = <80000000>;
  49. power-domains = <&pd IMX_SC_R_UART_2>;
  50. status = "disabled";
  51. };
  52. lpuart3: serial@5a090000 {
  53. reg = <0x5a090000 0x1000>;
  54. interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
  55. clocks = <&uart3_lpcg IMX_LPCG_CLK_4>,
  56. <&uart3_lpcg IMX_LPCG_CLK_0>;
  57. clock-names = "ipg", "baud";
  58. assigned-clocks = <&clk IMX_SC_R_UART_3 IMX_SC_PM_CLK_PER>;
  59. assigned-clock-rates = <80000000>;
  60. power-domains = <&pd IMX_SC_R_UART_3>;
  61. status = "disabled";
  62. };
  63. uart0_lpcg: clock-controller@5a460000 {
  64. compatible = "fsl,imx8qxp-lpcg";
  65. reg = <0x5a460000 0x10000>;
  66. #clock-cells = <1>;
  67. clocks = <&clk IMX_SC_R_UART_0 IMX_SC_PM_CLK_PER>,
  68. <&dma_ipg_clk>;
  69. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  70. clock-output-names = "uart0_lpcg_baud_clk",
  71. "uart0_lpcg_ipg_clk";
  72. power-domains = <&pd IMX_SC_R_UART_0>;
  73. };
  74. uart1_lpcg: clock-controller@5a470000 {
  75. compatible = "fsl,imx8qxp-lpcg";
  76. reg = <0x5a470000 0x10000>;
  77. #clock-cells = <1>;
  78. clocks = <&clk IMX_SC_R_UART_1 IMX_SC_PM_CLK_PER>,
  79. <&dma_ipg_clk>;
  80. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  81. clock-output-names = "uart1_lpcg_baud_clk",
  82. "uart1_lpcg_ipg_clk";
  83. power-domains = <&pd IMX_SC_R_UART_1>;
  84. };
  85. uart2_lpcg: clock-controller@5a480000 {
  86. compatible = "fsl,imx8qxp-lpcg";
  87. reg = <0x5a480000 0x10000>;
  88. #clock-cells = <1>;
  89. clocks = <&clk IMX_SC_R_UART_2 IMX_SC_PM_CLK_PER>,
  90. <&dma_ipg_clk>;
  91. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  92. clock-output-names = "uart2_lpcg_baud_clk",
  93. "uart2_lpcg_ipg_clk";
  94. power-domains = <&pd IMX_SC_R_UART_2>;
  95. };
  96. uart3_lpcg: clock-controller@5a490000 {
  97. compatible = "fsl,imx8qxp-lpcg";
  98. reg = <0x5a490000 0x10000>;
  99. #clock-cells = <1>;
  100. clocks = <&clk IMX_SC_R_UART_3 IMX_SC_PM_CLK_PER>,
  101. <&dma_ipg_clk>;
  102. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  103. clock-output-names = "uart3_lpcg_baud_clk",
  104. "uart3_lpcg_ipg_clk";
  105. power-domains = <&pd IMX_SC_R_UART_3>;
  106. };
  107. i2c0: i2c@5a800000 {
  108. reg = <0x5a800000 0x4000>;
  109. interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
  110. clocks = <&i2c0_lpcg IMX_LPCG_CLK_0>,
  111. <&i2c0_lpcg IMX_LPCG_CLK_4>;
  112. clock-names = "per", "ipg";
  113. assigned-clocks = <&clk IMX_SC_R_I2C_0 IMX_SC_PM_CLK_PER>;
  114. assigned-clock-rates = <24000000>;
  115. power-domains = <&pd IMX_SC_R_I2C_0>;
  116. status = "disabled";
  117. };
  118. i2c1: i2c@5a810000 {
  119. reg = <0x5a810000 0x4000>;
  120. interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
  121. clocks = <&i2c1_lpcg IMX_LPCG_CLK_0>,
  122. <&i2c1_lpcg IMX_LPCG_CLK_4>;
  123. clock-names = "per", "ipg";
  124. assigned-clocks = <&clk IMX_SC_R_I2C_1 IMX_SC_PM_CLK_PER>;
  125. assigned-clock-rates = <24000000>;
  126. power-domains = <&pd IMX_SC_R_I2C_1>;
  127. status = "disabled";
  128. };
  129. i2c2: i2c@5a820000 {
  130. reg = <0x5a820000 0x4000>;
  131. interrupts = <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>;
  132. clocks = <&i2c2_lpcg IMX_LPCG_CLK_0>,
  133. <&i2c2_lpcg IMX_LPCG_CLK_4>;
  134. clock-names = "per", "ipg";
  135. assigned-clocks = <&clk IMX_SC_R_I2C_2 IMX_SC_PM_CLK_PER>;
  136. assigned-clock-rates = <24000000>;
  137. power-domains = <&pd IMX_SC_R_I2C_2>;
  138. status = "disabled";
  139. };
  140. i2c3: i2c@5a830000 {
  141. reg = <0x5a830000 0x4000>;
  142. interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
  143. clocks = <&i2c3_lpcg IMX_LPCG_CLK_0>,
  144. <&i2c3_lpcg IMX_LPCG_CLK_4>;
  145. clock-names = "per", "ipg";
  146. assigned-clocks = <&clk IMX_SC_R_I2C_3 IMX_SC_PM_CLK_PER>;
  147. assigned-clock-rates = <24000000>;
  148. power-domains = <&pd IMX_SC_R_I2C_3>;
  149. status = "disabled";
  150. };
  151. i2c0_lpcg: clock-controller@5ac00000 {
  152. compatible = "fsl,imx8qxp-lpcg";
  153. reg = <0x5ac00000 0x10000>;
  154. #clock-cells = <1>;
  155. clocks = <&clk IMX_SC_R_I2C_0 IMX_SC_PM_CLK_PER>,
  156. <&dma_ipg_clk>;
  157. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  158. clock-output-names = "i2c0_lpcg_clk",
  159. "i2c0_lpcg_ipg_clk";
  160. power-domains = <&pd IMX_SC_R_I2C_0>;
  161. };
  162. i2c1_lpcg: clock-controller@5ac10000 {
  163. compatible = "fsl,imx8qxp-lpcg";
  164. reg = <0x5ac10000 0x10000>;
  165. #clock-cells = <1>;
  166. clocks = <&clk IMX_SC_R_I2C_1 IMX_SC_PM_CLK_PER>,
  167. <&dma_ipg_clk>;
  168. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  169. clock-output-names = "i2c1_lpcg_clk",
  170. "i2c1_lpcg_ipg_clk";
  171. power-domains = <&pd IMX_SC_R_I2C_1>;
  172. };
  173. i2c2_lpcg: clock-controller@5ac20000 {
  174. compatible = "fsl,imx8qxp-lpcg";
  175. reg = <0x5ac20000 0x10000>;
  176. #clock-cells = <1>;
  177. clocks = <&clk IMX_SC_R_I2C_2 IMX_SC_PM_CLK_PER>,
  178. <&dma_ipg_clk>;
  179. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  180. clock-output-names = "i2c2_lpcg_clk",
  181. "i2c2_lpcg_ipg_clk";
  182. power-domains = <&pd IMX_SC_R_I2C_2>;
  183. };
  184. i2c3_lpcg: clock-controller@5ac30000 {
  185. compatible = "fsl,imx8qxp-lpcg";
  186. reg = <0x5ac30000 0x10000>;
  187. #clock-cells = <1>;
  188. clocks = <&clk IMX_SC_R_I2C_3 IMX_SC_PM_CLK_PER>,
  189. <&dma_ipg_clk>;
  190. clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
  191. clock-output-names = "i2c3_lpcg_clk",
  192. "i2c3_lpcg_ipg_clk";
  193. power-domains = <&pd IMX_SC_R_I2C_3>;
  194. };
  195. };