mpc8568mds.dts 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323
  1. /*
  2. * MPC8568E MDS Device Tree Source
  3. *
  4. * Copyright 2007, 2008 Freescale Semiconductor Inc.
  5. *
  6. * This program is free software; you can redistribute it and/or modify it
  7. * under the terms of the GNU General Public License as published by the
  8. * Free Software Foundation; either version 2 of the License, or (at your
  9. * option) any later version.
  10. */
  11. /include/ "fsl/mpc8568si-pre.dtsi"
  12. / {
  13. model = "MPC8568EMDS";
  14. compatible = "MPC8568EMDS", "MPC85xxMDS";
  15. aliases {
  16. pci0 = &pci0;
  17. pci1 = &pci1;
  18. rapidio0 = &rio;
  19. };
  20. memory {
  21. device_type = "memory";
  22. reg = <0x0 0x0 0x0 0x0>;
  23. };
  24. lbc: localbus@e0005000 {
  25. reg = <0x0 0xe0005000 0x0 0x1000>;
  26. ranges = <0x0 0x0 0xfe000000 0x02000000
  27. 0x1 0x0 0xf8000000 0x00008000
  28. 0x2 0x0 0xf0000000 0x04000000
  29. 0x4 0x0 0xf8008000 0x00008000
  30. 0x5 0x0 0xf8010000 0x00008000>;
  31. nor@0,0 {
  32. #address-cells = <1>;
  33. #size-cells = <1>;
  34. compatible = "cfi-flash";
  35. reg = <0x0 0x0 0x02000000>;
  36. bank-width = <2>;
  37. device-width = <2>;
  38. };
  39. bcsr@1,0 {
  40. #address-cells = <1>;
  41. #size-cells = <1>;
  42. compatible = "fsl,mpc8568mds-bcsr";
  43. reg = <1 0 0x8000>;
  44. ranges = <0 1 0 0x8000>;
  45. bcsr5: gpio-controller@11 {
  46. #gpio-cells = <2>;
  47. compatible = "fsl,mpc8568mds-bcsr-gpio";
  48. reg = <0x5 0x1>;
  49. gpio-controller;
  50. };
  51. };
  52. pib@4,0 {
  53. compatible = "fsl,mpc8568mds-pib";
  54. reg = <4 0 0x8000>;
  55. };
  56. pib@5,0 {
  57. compatible = "fsl,mpc8568mds-pib";
  58. reg = <5 0 0x8000>;
  59. };
  60. };
  61. soc: soc8568@e0000000 {
  62. ranges = <0x0 0x0 0xe0000000 0x100000>;
  63. i2c-sleep-nexus {
  64. i2c@3000 {
  65. rtc@68 {
  66. compatible = "dallas,ds1374";
  67. reg = <0x68>;
  68. interrupts = <3 1 0 0>;
  69. };
  70. };
  71. };
  72. enet0: ethernet@24000 {
  73. tbi-handle = <&tbi0>;
  74. phy-handle = <&phy2>;
  75. };
  76. mdio@24520 {
  77. phy0: ethernet-phy@7 {
  78. interrupts = <1 1 0 0>;
  79. reg = <0x7>;
  80. device_type = "ethernet-phy";
  81. };
  82. phy1: ethernet-phy@1 {
  83. interrupts = <2 1 0 0>;
  84. reg = <0x1>;
  85. device_type = "ethernet-phy";
  86. };
  87. phy2: ethernet-phy@2 {
  88. interrupts = <1 1 0 0>;
  89. reg = <0x2>;
  90. device_type = "ethernet-phy";
  91. };
  92. phy3: ethernet-phy@3 {
  93. interrupts = <2 1 0 0>;
  94. reg = <0x3>;
  95. device_type = "ethernet-phy";
  96. };
  97. tbi0: tbi-phy@11 {
  98. reg = <0x11>;
  99. device_type = "tbi-phy";
  100. };
  101. };
  102. enet1: ethernet@25000 {
  103. tbi-handle = <&tbi1>;
  104. phy-handle = <&phy3>;
  105. sleep = <&pmc 0x00000040>;
  106. };
  107. mdio@25520 {
  108. tbi1: tbi-phy@11 {
  109. reg = <0x11>;
  110. device_type = "tbi-phy";
  111. };
  112. };
  113. par_io@e0100 {
  114. num-ports = <7>;
  115. pio1: ucc_pin@01 {
  116. pio-map = <
  117. /* port pin dir open_drain assignment has_irq */
  118. 0x4 0xa 0x1 0x0 0x2 0x0 /* TxD0 */
  119. 0x4 0x9 0x1 0x0 0x2 0x0 /* TxD1 */
  120. 0x4 0x8 0x1 0x0 0x2 0x0 /* TxD2 */
  121. 0x4 0x7 0x1 0x0 0x2 0x0 /* TxD3 */
  122. 0x4 0x17 0x1 0x0 0x2 0x0 /* TxD4 */
  123. 0x4 0x16 0x1 0x0 0x2 0x0 /* TxD5 */
  124. 0x4 0x15 0x1 0x0 0x2 0x0 /* TxD6 */
  125. 0x4 0x14 0x1 0x0 0x2 0x0 /* TxD7 */
  126. 0x4 0xf 0x2 0x0 0x2 0x0 /* RxD0 */
  127. 0x4 0xe 0x2 0x0 0x2 0x0 /* RxD1 */
  128. 0x4 0xd 0x2 0x0 0x2 0x0 /* RxD2 */
  129. 0x4 0xc 0x2 0x0 0x2 0x0 /* RxD3 */
  130. 0x4 0x1d 0x2 0x0 0x2 0x0 /* RxD4 */
  131. 0x4 0x1c 0x2 0x0 0x2 0x0 /* RxD5 */
  132. 0x4 0x1b 0x2 0x0 0x2 0x0 /* RxD6 */
  133. 0x4 0x1a 0x2 0x0 0x2 0x0 /* RxD7 */
  134. 0x4 0xb 0x1 0x0 0x2 0x0 /* TX_EN */
  135. 0x4 0x18 0x1 0x0 0x2 0x0 /* TX_ER */
  136. 0x4 0x10 0x2 0x0 0x2 0x0 /* RX_DV */
  137. 0x4 0x1e 0x2 0x0 0x2 0x0 /* RX_ER */
  138. 0x4 0x11 0x2 0x0 0x2 0x0 /* RX_CLK */
  139. 0x4 0x13 0x1 0x0 0x2 0x0 /* GTX_CLK */
  140. 0x1 0x1f 0x2 0x0 0x3 0x0>; /* GTX125 */
  141. };
  142. pio2: ucc_pin@02 {
  143. pio-map = <
  144. /* port pin dir open_drain assignment has_irq */
  145. 0x5 0xa 0x1 0x0 0x2 0x0 /* TxD0 */
  146. 0x5 0x9 0x1 0x0 0x2 0x0 /* TxD1 */
  147. 0x5 0x8 0x1 0x0 0x2 0x0 /* TxD2 */
  148. 0x5 0x7 0x1 0x0 0x2 0x0 /* TxD3 */
  149. 0x5 0x17 0x1 0x0 0x2 0x0 /* TxD4 */
  150. 0x5 0x16 0x1 0x0 0x2 0x0 /* TxD5 */
  151. 0x5 0x15 0x1 0x0 0x2 0x0 /* TxD6 */
  152. 0x5 0x14 0x1 0x0 0x2 0x0 /* TxD7 */
  153. 0x5 0xf 0x2 0x0 0x2 0x0 /* RxD0 */
  154. 0x5 0xe 0x2 0x0 0x2 0x0 /* RxD1 */
  155. 0x5 0xd 0x2 0x0 0x2 0x0 /* RxD2 */
  156. 0x5 0xc 0x2 0x0 0x2 0x0 /* RxD3 */
  157. 0x5 0x1d 0x2 0x0 0x2 0x0 /* RxD4 */
  158. 0x5 0x1c 0x2 0x0 0x2 0x0 /* RxD5 */
  159. 0x5 0x1b 0x2 0x0 0x2 0x0 /* RxD6 */
  160. 0x5 0x1a 0x2 0x0 0x2 0x0 /* RxD7 */
  161. 0x5 0xb 0x1 0x0 0x2 0x0 /* TX_EN */
  162. 0x5 0x18 0x1 0x0 0x2 0x0 /* TX_ER */
  163. 0x5 0x10 0x2 0x0 0x2 0x0 /* RX_DV */
  164. 0x5 0x1e 0x2 0x0 0x2 0x0 /* RX_ER */
  165. 0x5 0x11 0x2 0x0 0x2 0x0 /* RX_CLK */
  166. 0x5 0x13 0x1 0x0 0x2 0x0 /* GTX_CLK */
  167. 0x1 0x1f 0x2 0x0 0x3 0x0 /* GTX125 */
  168. 0x4 0x6 0x3 0x0 0x2 0x0 /* MDIO */
  169. 0x4 0x5 0x1 0x0 0x2 0x0>; /* MDC */
  170. };
  171. };
  172. };
  173. qe: qe@e0080000 {
  174. ranges = <0x0 0x0 0xe0080000 0x40000>;
  175. reg = <0x0 0xe0080000 0x0 0x480>;
  176. spi@4c0 {
  177. mode = "cpu";
  178. };
  179. spi@500 {
  180. mode = "cpu";
  181. };
  182. enet2: ucc@2000 {
  183. device_type = "network";
  184. compatible = "ucc_geth";
  185. local-mac-address = [ 00 00 00 00 00 00 ];
  186. rx-clock-name = "none";
  187. tx-clock-name = "clk16";
  188. pio-handle = <&pio1>;
  189. phy-handle = <&phy0>;
  190. phy-connection-type = "rgmii-id";
  191. };
  192. enet3: ucc@3000 {
  193. device_type = "network";
  194. compatible = "ucc_geth";
  195. local-mac-address = [ 00 00 00 00 00 00 ];
  196. rx-clock-name = "none";
  197. tx-clock-name = "clk16";
  198. pio-handle = <&pio2>;
  199. phy-handle = <&phy1>;
  200. phy-connection-type = "rgmii-id";
  201. };
  202. mdio@2120 {
  203. #address-cells = <1>;
  204. #size-cells = <0>;
  205. reg = <0x2120 0x18>;
  206. compatible = "fsl,ucc-mdio";
  207. /* These are the same PHYs as on
  208. * gianfar's MDIO bus */
  209. qe_phy0: ethernet-phy@07 {
  210. interrupt-parent = <&mpic>;
  211. interrupts = <1 1 0 0>;
  212. reg = <0x7>;
  213. device_type = "ethernet-phy";
  214. };
  215. qe_phy1: ethernet-phy@01 {
  216. interrupt-parent = <&mpic>;
  217. interrupts = <2 1 0 0>;
  218. reg = <0x1>;
  219. device_type = "ethernet-phy";
  220. };
  221. qe_phy2: ethernet-phy@02 {
  222. interrupt-parent = <&mpic>;
  223. interrupts = <1 1 0 0>;
  224. reg = <0x2>;
  225. device_type = "ethernet-phy";
  226. };
  227. qe_phy3: ethernet-phy@03 {
  228. interrupt-parent = <&mpic>;
  229. interrupts = <2 1 0 0>;
  230. reg = <0x3>;
  231. device_type = "ethernet-phy";
  232. };
  233. };
  234. };
  235. pci0: pci@e0008000 {
  236. reg = <0x0 0xe0008000 0x0 0x1000>;
  237. ranges = <0x2000000 0x0 0x80000000 0x0 0x80000000 0x0 0x20000000
  238. 0x1000000 0x0 0x00000000 0x0 0xe2000000 0x0 0x800000>;
  239. clock-frequency = <66666666>;
  240. interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
  241. interrupt-map = <
  242. /* IDSEL 0x12 AD18 */
  243. 0x9000 0x0 0x0 0x1 &mpic 0x5 0x1 0 0
  244. 0x9000 0x0 0x0 0x2 &mpic 0x6 0x1 0 0
  245. 0x9000 0x0 0x0 0x3 &mpic 0x7 0x1 0 0
  246. 0x9000 0x0 0x0 0x4 &mpic 0x4 0x1 0 0
  247. /* IDSEL 0x13 AD19 */
  248. 0x9800 0x0 0x0 0x1 &mpic 0x6 0x1 0 0
  249. 0x9800 0x0 0x0 0x2 &mpic 0x7 0x1 0 0
  250. 0x9800 0x0 0x0 0x3 &mpic 0x4 0x1 0 0
  251. 0x9800 0x0 0x0 0x4 &mpic 0x5 0x1 0 0>;
  252. };
  253. /* PCI Express */
  254. pci1: pcie@e000a000 {
  255. ranges = <0x2000000 0x0 0xa0000000 0x0 0xa0000000 0x0 0x10000000
  256. 0x1000000 0x0 0x00000000 0x0 0xe2800000 0x0 0x800000>;
  257. reg = <0x0 0xe000a000 0x0 0x1000>;
  258. pcie@0 {
  259. ranges = <0x2000000 0x0 0xa0000000
  260. 0x2000000 0x0 0xa0000000
  261. 0x0 0x10000000
  262. 0x1000000 0x0 0x0
  263. 0x1000000 0x0 0x0
  264. 0x0 0x800000>;
  265. };
  266. };
  267. rio: rapidio@e00c00000 {
  268. reg = <0x0 0xe00c0000 0x0 0x20000>;
  269. port1 {
  270. ranges = <0x0 0x0 0x0 0xc0000000 0x0 0x20000000>;
  271. };
  272. };
  273. leds {
  274. compatible = "gpio-leds";
  275. green {
  276. gpios = <&bcsr5 1 0>;
  277. };
  278. amber {
  279. gpios = <&bcsr5 2 0>;
  280. };
  281. red {
  282. gpios = <&bcsr5 3 0>;
  283. };
  284. };
  285. };
  286. /include/ "fsl/mpc8568si-post.dtsi"