ep88xc.dts 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. /*
  2. * EP88xC Device Tree Source
  3. *
  4. * Copyright 2006 MontaVista Software, Inc.
  5. * Copyright 2007,2008 Freescale Semiconductor, Inc.
  6. *
  7. * This program is free software; you can redistribute it and/or modify it
  8. * under the terms of the GNU General Public License as published by the
  9. * Free Software Foundation; either version 2 of the License, or (at your
  10. * option) any later version.
  11. */
  12. /dts-v1/;
  13. / {
  14. model = "EP88xC";
  15. compatible = "fsl,ep88xc";
  16. #address-cells = <1>;
  17. #size-cells = <1>;
  18. cpus {
  19. #address-cells = <1>;
  20. #size-cells = <0>;
  21. PowerPC,885@0 {
  22. device_type = "cpu";
  23. reg = <0x0>;
  24. d-cache-line-size = <16>;
  25. i-cache-line-size = <16>;
  26. d-cache-size = <8192>;
  27. i-cache-size = <8192>;
  28. timebase-frequency = <0>;
  29. bus-frequency = <0>;
  30. clock-frequency = <0>;
  31. interrupts = <15 2>; // decrementer interrupt
  32. interrupt-parent = <&PIC>;
  33. };
  34. };
  35. memory {
  36. device_type = "memory";
  37. reg = <0x0 0x0>;
  38. };
  39. localbus@fa200100 {
  40. compatible = "fsl,mpc885-localbus", "fsl,pq1-localbus";
  41. #address-cells = <2>;
  42. #size-cells = <1>;
  43. reg = <0xfa200100 0x40>;
  44. ranges = <
  45. 0x0 0x0 0xfc000000 0x4000000
  46. 0x3 0x0 0xfa000000 0x1000000
  47. >;
  48. flash@0,2000000 {
  49. compatible = "cfi-flash";
  50. reg = <0x0 0x2000000 0x2000000>;
  51. bank-width = <4>;
  52. device-width = <2>;
  53. };
  54. board-control@3,400000 {
  55. reg = <0x3 0x400000 0x10>;
  56. compatible = "fsl,ep88xc-bcsr";
  57. };
  58. };
  59. soc@fa200000 {
  60. compatible = "fsl,mpc885", "fsl,pq1-soc";
  61. #address-cells = <1>;
  62. #size-cells = <1>;
  63. device_type = "soc";
  64. ranges = <0x0 0xfa200000 0x4000>;
  65. bus-frequency = <0>;
  66. // Temporary -- will go away once kernel uses ranges for get_immrbase().
  67. reg = <0xfa200000 0x4000>;
  68. mdio@e00 {
  69. compatible = "fsl,mpc885-fec-mdio", "fsl,pq1-fec-mdio";
  70. reg = <0xe00 0x188>;
  71. #address-cells = <1>;
  72. #size-cells = <0>;
  73. PHY0: ethernet-phy@0 {
  74. reg = <0x0>;
  75. device_type = "ethernet-phy";
  76. };
  77. PHY1: ethernet-phy@1 {
  78. reg = <0x1>;
  79. device_type = "ethernet-phy";
  80. };
  81. };
  82. ethernet@e00 {
  83. device_type = "network";
  84. compatible = "fsl,mpc885-fec-enet",
  85. "fsl,pq1-fec-enet";
  86. reg = <0xe00 0x188>;
  87. local-mac-address = [ 00 00 00 00 00 00 ];
  88. interrupts = <3 1>;
  89. interrupt-parent = <&PIC>;
  90. phy-handle = <&PHY0>;
  91. linux,network-index = <0>;
  92. };
  93. ethernet@1e00 {
  94. device_type = "network";
  95. compatible = "fsl,mpc885-fec-enet",
  96. "fsl,pq1-fec-enet";
  97. reg = <0x1e00 0x188>;
  98. local-mac-address = [ 00 00 00 00 00 00 ];
  99. interrupts = <7 1>;
  100. interrupt-parent = <&PIC>;
  101. phy-handle = <&PHY1>;
  102. linux,network-index = <1>;
  103. };
  104. PIC: interrupt-controller@0 {
  105. interrupt-controller;
  106. #interrupt-cells = <2>;
  107. reg = <0x0 0x24>;
  108. compatible = "fsl,mpc885-pic", "fsl,pq1-pic";
  109. };
  110. pcmcia@80 {
  111. #address-cells = <3>;
  112. #interrupt-cells = <1>;
  113. #size-cells = <2>;
  114. compatible = "fsl,pq-pcmcia";
  115. device_type = "pcmcia";
  116. reg = <0x80 0x80>;
  117. interrupt-parent = <&PIC>;
  118. interrupts = <13 1>;
  119. };
  120. cpm@9c0 {
  121. #address-cells = <1>;
  122. #size-cells = <1>;
  123. compatible = "fsl,mpc885-cpm", "fsl,cpm1";
  124. command-proc = <0x9c0>;
  125. interrupts = <0>; // cpm error interrupt
  126. interrupt-parent = <&CPM_PIC>;
  127. reg = <0x9c0 0x40>;
  128. ranges;
  129. muram@2000 {
  130. #address-cells = <1>;
  131. #size-cells = <1>;
  132. ranges = <0x0 0x2000 0x2000>;
  133. data@0 {
  134. compatible = "fsl,cpm-muram-data";
  135. reg = <0x0 0x1c00>;
  136. };
  137. };
  138. brg@9f0 {
  139. compatible = "fsl,mpc885-brg",
  140. "fsl,cpm1-brg",
  141. "fsl,cpm-brg";
  142. reg = <0x9f0 0x10>;
  143. };
  144. CPM_PIC: interrupt-controller@930 {
  145. interrupt-controller;
  146. #interrupt-cells = <1>;
  147. interrupts = <5 2 0 2>;
  148. interrupt-parent = <&PIC>;
  149. reg = <0x930 0x20>;
  150. compatible = "fsl,mpc885-cpm-pic",
  151. "fsl,cpm1-pic";
  152. };
  153. // MON-1
  154. serial@a80 {
  155. device_type = "serial";
  156. compatible = "fsl,mpc885-smc-uart",
  157. "fsl,cpm1-smc-uart";
  158. reg = <0xa80 0x10 0x3e80 0x40>;
  159. interrupts = <4>;
  160. interrupt-parent = <&CPM_PIC>;
  161. fsl,cpm-brg = <1>;
  162. fsl,cpm-command = <0x90>;
  163. linux,planetcore-label = "SMC1";
  164. };
  165. // SER-1
  166. serial@a20 {
  167. device_type = "serial";
  168. compatible = "fsl,mpc885-scc-uart",
  169. "fsl,cpm1-scc-uart";
  170. reg = <0xa20 0x20 0x3d00 0x80>;
  171. interrupts = <29>;
  172. interrupt-parent = <&CPM_PIC>;
  173. fsl,cpm-brg = <2>;
  174. fsl,cpm-command = <0x40>;
  175. linux,planetcore-label = "SCC2";
  176. };
  177. usb@a00 {
  178. #address-cells = <1>;
  179. #size-cells = <0>;
  180. compatible = "fsl,mpc885-usb",
  181. "fsl,cpm1-usb";
  182. reg = <0xa00 0x18 0x1c00 0x80>;
  183. interrupt-parent = <&CPM_PIC>;
  184. interrupts = <30>;
  185. fsl,cpm-command = <0000>;
  186. };
  187. };
  188. };
  189. };