imxrt1050.dtsi 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /*
  3. * Copyright (C) 2019
  4. * Author(s): Giulio Benetti <[email protected]>
  5. */
  6. #include "armv7-m.dtsi"
  7. #include <dt-bindings/interrupt-controller/arm-gic.h>
  8. #include <dt-bindings/clock/imxrt1050-clock.h>
  9. #include <dt-bindings/gpio/gpio.h>
  10. / {
  11. #address-cells = <1>;
  12. #size-cells = <1>;
  13. clocks {
  14. osc: osc {
  15. compatible = "fixed-clock";
  16. #clock-cells = <0>;
  17. clock-frequency = <24000000>;
  18. };
  19. osc3M: osc3M {
  20. compatible = "fixed-clock";
  21. #clock-cells = <0>;
  22. clock-frequency = <3000000>;
  23. };
  24. };
  25. soc {
  26. lpuart1: serial@40184000 {
  27. compatible = "fsl,imxrt1050-lpuart", "fsl,imx7ulp-lpuart";
  28. reg = <0x40184000 0x4000>;
  29. interrupts = <20>;
  30. clocks = <&clks IMXRT1050_CLK_LPUART1>;
  31. clock-names = "ipg";
  32. status = "disabled";
  33. };
  34. iomuxc: pinctrl@401f8000 {
  35. compatible = "fsl,imxrt1050-iomuxc";
  36. reg = <0x401f8000 0x4000>;
  37. fsl,mux_mask = <0x7>;
  38. };
  39. anatop: anatop@400d8000 {
  40. compatible = "fsl,imxrt-anatop";
  41. reg = <0x400d8000 0x4000>;
  42. };
  43. clks: clock-controller@400fc000 {
  44. compatible = "fsl,imxrt1050-ccm";
  45. reg = <0x400fc000 0x4000>;
  46. interrupts = <95>, <96>;
  47. clocks = <&osc>;
  48. clock-names = "osc";
  49. #clock-cells = <1>;
  50. assigned-clocks = <&clks IMXRT1050_CLK_PLL1_BYPASS>,
  51. <&clks IMXRT1050_CLK_PLL1_BYPASS>,
  52. <&clks IMXRT1050_CLK_PLL2_BYPASS>,
  53. <&clks IMXRT1050_CLK_PLL3_BYPASS>,
  54. <&clks IMXRT1050_CLK_PLL3_PFD1_664_62M>,
  55. <&clks IMXRT1050_CLK_PLL2_PFD2_396M>;
  56. assigned-clock-parents = <&clks IMXRT1050_CLK_PLL1_REF_SEL>,
  57. <&clks IMXRT1050_CLK_PLL1_ARM>,
  58. <&clks IMXRT1050_CLK_PLL2_SYS>,
  59. <&clks IMXRT1050_CLK_PLL3_USB_OTG>,
  60. <&clks IMXRT1050_CLK_PLL3_USB_OTG>,
  61. <&clks IMXRT1050_CLK_PLL2_SYS>;
  62. };
  63. edma1: dma-controller@400e8000 {
  64. #dma-cells = <2>;
  65. compatible = "fsl,imx7ulp-edma";
  66. reg = <0x400e8000 0x4000>,
  67. <0x400ec000 0x4000>;
  68. dma-channels = <32>;
  69. interrupts = <0>, <1>, <2>, <3>, <4>, <5>, <6>, <7>, <8>,
  70. <9>, <10>, <11>, <12>, <13>, <14>, <15>, <16>;
  71. clock-names = "dma", "dmamux0";
  72. clocks = <&clks IMXRT1050_CLK_DMA>,
  73. <&clks IMXRT1050_CLK_DMA_MUX>;
  74. };
  75. usdhc1: mmc@402c0000 {
  76. compatible = "fsl,imxrt1050-usdhc", "fsl,imx6sl-usdhc";
  77. reg = <0x402c0000 0x4000>;
  78. interrupts = <110>;
  79. clocks = <&clks IMXRT1050_CLK_IPG_PDOF>,
  80. <&clks IMXRT1050_CLK_OSC>,
  81. <&clks IMXRT1050_CLK_USDHC1>;
  82. clock-names = "ipg", "ahb", "per";
  83. bus-width = <4>;
  84. fsl,wp-controller;
  85. no-1-8-v;
  86. max-frequency = <4000000>;
  87. fsl,tuning-start-tap = <20>;
  88. fsl,tuning-step = <2>;
  89. status = "disabled";
  90. };
  91. gpio1: gpio@401b8000 {
  92. compatible = "fsl,imxrt1050-gpio", "fsl,imx35-gpio";
  93. reg = <0x401b8000 0x4000>;
  94. interrupts = <80>, <81>;
  95. gpio-controller;
  96. #gpio-cells = <2>;
  97. interrupt-controller;
  98. #interrupt-cells = <2>;
  99. };
  100. gpio2: gpio@401bc000 {
  101. compatible = "fsl,imxrt1050-gpio", "fsl,imx35-gpio";
  102. reg = <0x401bc000 0x4000>;
  103. interrupts = <82>, <83>;
  104. gpio-controller;
  105. #gpio-cells = <2>;
  106. interrupt-controller;
  107. #interrupt-cells = <2>;
  108. };
  109. gpio3: gpio@401c0000 {
  110. compatible = "fsl,imxrt1050-gpio", "fsl,imx35-gpio";
  111. reg = <0x401c0000 0x4000>;
  112. interrupts = <84>, <85>;
  113. gpio-controller;
  114. #gpio-cells = <2>;
  115. interrupt-controller;
  116. #interrupt-cells = <2>;
  117. };
  118. gpio4: gpio@401c4000 {
  119. compatible = "fsl,imxrt1050-gpio", "fsl,imx35-gpio";
  120. reg = <0x401c4000 0x4000>;
  121. interrupts = <86>, <87>;
  122. gpio-controller;
  123. #gpio-cells = <2>;
  124. interrupt-controller;
  125. #interrupt-cells = <2>;
  126. };
  127. gpio5: gpio@400c0000 {
  128. compatible = "fsl,imxrt1050-gpio", "fsl,imx35-gpio";
  129. reg = <0x400c0000 0x4000>;
  130. interrupts = <88>, <89>;
  131. gpio-controller;
  132. #gpio-cells = <2>;
  133. interrupt-controller;
  134. #interrupt-cells = <2>;
  135. };
  136. gpt: timer@401ec000 {
  137. compatible = "fsl,imxrt1050-gpt", "fsl,imx6dl-gpt", "fsl,imx6sl-gpt";
  138. reg = <0x401ec000 0x4000>;
  139. interrupts = <100>;
  140. clocks = <&osc3M>;
  141. clock-names = "per";
  142. };
  143. };
  144. };