cmpcpro.dts 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * CMPC885 Device Tree Source
  4. *
  5. * Copyright 2020 CS GROUP France
  6. *
  7. */
  8. /dts-v1/;
  9. #include <dt-bindings/clk/mpc83xx-clk.h>
  10. / {
  11. model = "CMPCPRO";
  12. compatible = "fsl, cmpc85xx", "fsl,mod85xx", "CMPCPRO", "MPC8321E", "fsl,cmpcpro";
  13. #address-cells = <1>;
  14. #size-cells = <1>;
  15. chosen {
  16. stdout-path = &serial0;
  17. };
  18. WDT: watchdog@0 {
  19. device_type = "watchdog";
  20. compatible = "fsl,pq1-wdt";
  21. };
  22. aliases {
  23. ethernet0 = &eth0;
  24. etehrnet1 = &eth1;
  25. serial0 = &serial0;
  26. };
  27. cpus {
  28. #address-cells = <1>;
  29. #size-cells = <0>;
  30. PowerPC,8321@0 {
  31. device_type = "cpu";
  32. reg = <0x0>;
  33. d-cache-line-size = <0x20>; // 32 bytes
  34. i-cache-line-size = <0x20>; // 32 bytes
  35. d-cache-size = <16384>; // L1, 16K
  36. i-cache-size = <16384>; // L1, 16K
  37. timebase-frequency = <0>;
  38. bus-frequency = <0>;
  39. clock-frequency = <0>;
  40. };
  41. };
  42. memory {
  43. device_type = "memory";
  44. reg = <0x00000000 0x20000000>;
  45. };
  46. soc8321@b0000000 {
  47. #address-cells = <1>;
  48. #size-cells = <1>;
  49. device_type = "soc";
  50. compatible = "simple-bus";
  51. ranges = <0x0 0xb0000000 0x00100000>;
  52. reg = <0xb0000000 0x00000200>;
  53. bus-frequency = <0>;
  54. pmc: power@b00 {
  55. compatible = "fsl,mpc8323-pmc", "fsl,mpc8349-pmc";
  56. reg = <0xb00 0x100 0xa00 0x100>;
  57. interrupts = <80 0x8>;
  58. interrupt-parent = <&ipic>;
  59. };
  60. serial0: serial@4500 {
  61. clocks = <&socclocks MPC83XX_CLK_CSB>;
  62. cell-index = <0>;
  63. device_type = "serial";
  64. compatible = "fsl,ns16550", "ns16550";
  65. reg = <0x4500 0x100>;
  66. clock-frequency = <0>;
  67. interrupts = <9 0x8>;
  68. interrupt-parent = <&ipic>;
  69. };
  70. ipic:pic@700 {
  71. interrupt-controller;
  72. #address-cells = <0>;
  73. #interrupt-cells = <2>;
  74. reg = <0x700 0x100>;
  75. device_type = "ipic";
  76. };
  77. par_io@1400 {
  78. #address-cells = <1>;
  79. #size-cells = <1>;
  80. reg = <0x1400 0x100>;
  81. ranges;
  82. compatible = "fsl,mpc8323-qe-pario","simple-bus";
  83. device_type = "par_io";
  84. num-ports = <7>;
  85. qe_pio_a: gpio-controller@1400 {
  86. #gpio-cells = <2>;
  87. compatible = "fsl,mpc8323-qe-pario-bank","fsl,mpc8308-gpio";
  88. reg = <0x1400 0x18>;
  89. gpio-controller;
  90. };
  91. qe_pio_b: gpio-controller@1418 {
  92. #gpio-cells = <2>;
  93. compatible = "fsl,mpc8323-qe-pario-bank","fsl,mpc8308-gpio";
  94. reg = <0x1418 0x18>;
  95. gpio-controller;
  96. };
  97. qe_pio_c: gpio-controller@1430 {
  98. #gpio-cells = <2>;
  99. compatible = "fsl,mpc8323-qe-pario-bank","fsl,mpc8308-gpio";
  100. reg = <0x1430 0x18>;
  101. gpio-controller;
  102. };
  103. qe_pio_d: gpio-controller@1448 {
  104. #gpio-cells = <2>;
  105. compatible = "fsl,mpc8323-qe-pario-bank","fsl,mpc8308-gpio";
  106. reg = <0x1448 0x18>;
  107. gpio-controller;
  108. };
  109. };
  110. };
  111. socclocks: clocks {
  112. bootph-all;
  113. compatible = "fsl,mpc832x-clk";
  114. #clock-cells = <1>;
  115. };
  116. qe@b0100000 {
  117. #address-cells = <1>;
  118. #size-cells = <1>;
  119. device_type = "qe";
  120. compatible = "fsl,qe","simple-bus";
  121. ranges = <0x0 0xb0100000 0x00100000>;
  122. reg = <0xb0100000 0x480>;
  123. brg-frequency = <0>;
  124. bus-frequency = <198000000>;
  125. fsl,qe-num-riscs = <1>;
  126. fsl,qe-num-snums = <28>;
  127. spi@4c0 {
  128. clocks = <&socclocks MPC83XX_CLK_CSB>;
  129. #address-cells = <1>;
  130. #size-cells = <0>;
  131. cell-index = <0>;
  132. compatible = "fsl,mpc832x-spi";
  133. reg = <0x4c0 0x40>;
  134. mode = "cpu";
  135. gpios = <&qe_pio_d 3 1>;
  136. clock-frequency = <0>;
  137. eeprom@3 {
  138. compatible = "atmel,at25", "cs,eeprom";
  139. cell-index = <1>;
  140. };
  141. };
  142. eth0: ucc@3000 {
  143. device_type = "network";
  144. compatible = "ucc_geth";
  145. cell-index = <2>;
  146. reg = <0x3000 0x200>;
  147. rx-clock-name = "clk17";
  148. tx-clock-name = "clk17";
  149. phy-handle = <&phy1>;
  150. phy-connection-type = "rmii";
  151. };
  152. eth1: ucc@2200 {
  153. device_type = "network";
  154. compatible = "ucc_geth";
  155. cell-index = <3>;
  156. reg = <0x2200 0x200>;
  157. rx-clock-name = "clk12";
  158. tx-clock-name = "clk12";
  159. phy-handle = <&phy2>;
  160. phy-connection-type = "rmii";
  161. };
  162. mdio@3120 {
  163. #address-cells = <1>;
  164. #size-cells = <0>;
  165. reg = <0x3120 0x18>;
  166. compatible = "fsl,ucc-mdio";
  167. phy1:ethernet-phy@1 {
  168. interrupt-parent = <&ipic>;
  169. reg = <0x1>;
  170. interrupts = <17 8>;
  171. device_type = "ethernet-phy";
  172. };
  173. phy2:ethernet-phy@2 {
  174. interrupt-parent = <&ipic>;
  175. reg = <0x2>;
  176. interrupts = <17 8>;
  177. device_type = "ethernet-phy";
  178. };
  179. };
  180. };
  181. };