mpc8548cds.dts 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344
  1. /*
  2. * MPC8548 CDS Device Tree Source
  3. *
  4. * Copyright 2006, 2008, 2011 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/mpc8548si-pre.dtsi"
  12. / {
  13. model = "MPC8548CDS";
  14. compatible = "MPC8548CDS", "MPC85xxCDS";
  15. aliases {
  16. ethernet0 = &enet0;
  17. ethernet1 = &enet1;
  18. ethernet2 = &enet2;
  19. ethernet3 = &enet3;
  20. serial0 = &serial0;
  21. serial1 = &serial1;
  22. pci0 = &pci0;
  23. pci1 = &pci1;
  24. pci2 = &pci2;
  25. };
  26. memory {
  27. device_type = "memory";
  28. reg = <0 0 0x0 0x8000000>; // 128M at 0x0
  29. };
  30. lbc: localbus@e0005000 {
  31. reg = <0 0xe0005000 0 0x1000>;
  32. ranges = <0x0 0x0 0x0 0xff000000 0x01000000>;
  33. nor@0,0 {
  34. #address-cells = <1>;
  35. #size-cells = <1>;
  36. compatible = "cfi-flash";
  37. reg = <0x0 0x0 0x01000000>;
  38. bank-width = <2>;
  39. device-width = <2>;
  40. partition@0 {
  41. reg = <0x0 0x0b00000>;
  42. label = "ramdisk-nor";
  43. };
  44. partition@300000 {
  45. reg = <0x0b00000 0x0400000>;
  46. label = "kernel-nor";
  47. };
  48. partition@700000 {
  49. reg = <0x0f00000 0x060000>;
  50. label = "dtb-nor";
  51. };
  52. partition@760000 {
  53. reg = <0x0f60000 0x020000>;
  54. label = "env-nor";
  55. read-only;
  56. };
  57. partition@780000 {
  58. reg = <0x0f80000 0x080000>;
  59. label = "u-boot-nor";
  60. read-only;
  61. };
  62. };
  63. };
  64. soc: soc8548@e0000000 {
  65. ranges = <0 0x0 0xe0000000 0x100000>;
  66. i2c@3000 {
  67. eeprom@50 {
  68. compatible = "atmel,24c64";
  69. reg = <0x50>;
  70. };
  71. eeprom@56 {
  72. compatible = "atmel,24c64";
  73. reg = <0x56>;
  74. };
  75. eeprom@57 {
  76. compatible = "atmel,24c64";
  77. reg = <0x57>;
  78. };
  79. };
  80. i2c@3100 {
  81. eeprom@50 {
  82. compatible = "atmel,24c64";
  83. reg = <0x50>;
  84. };
  85. };
  86. enet0: ethernet@24000 {
  87. tbi-handle = <&tbi0>;
  88. phy-handle = <&phy0>;
  89. };
  90. mdio@24520 {
  91. phy0: ethernet-phy@0 {
  92. interrupts = <5 1 0 0>;
  93. reg = <0x0>;
  94. device_type = "ethernet-phy";
  95. };
  96. phy1: ethernet-phy@1 {
  97. interrupts = <5 1 0 0>;
  98. reg = <0x1>;
  99. device_type = "ethernet-phy";
  100. };
  101. phy2: ethernet-phy@2 {
  102. interrupts = <5 1 0 0>;
  103. reg = <0x2>;
  104. device_type = "ethernet-phy";
  105. };
  106. phy3: ethernet-phy@3 {
  107. interrupts = <5 1 0 0>;
  108. reg = <0x3>;
  109. device_type = "ethernet-phy";
  110. };
  111. tbi0: tbi-phy@11 {
  112. reg = <0x11>;
  113. device_type = "tbi-phy";
  114. };
  115. };
  116. enet1: ethernet@25000 {
  117. tbi-handle = <&tbi1>;
  118. phy-handle = <&phy1>;
  119. };
  120. mdio@25520 {
  121. tbi1: tbi-phy@11 {
  122. reg = <0x11>;
  123. device_type = "tbi-phy";
  124. };
  125. };
  126. enet2: ethernet@26000 {
  127. tbi-handle = <&tbi2>;
  128. phy-handle = <&phy2>;
  129. };
  130. mdio@26520 {
  131. tbi2: tbi-phy@11 {
  132. reg = <0x11>;
  133. device_type = "tbi-phy";
  134. };
  135. };
  136. enet3: ethernet@27000 {
  137. tbi-handle = <&tbi3>;
  138. phy-handle = <&phy3>;
  139. };
  140. mdio@27520 {
  141. tbi3: tbi-phy@11 {
  142. reg = <0x11>;
  143. device_type = "tbi-phy";
  144. };
  145. };
  146. };
  147. pci0: pci@e0008000 {
  148. reg = <0 0xe0008000 0 0x1000>;
  149. ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x10000000
  150. 0x1000000 0x0 0x00000000 0 0xe2000000 0x0 0x800000>;
  151. clock-frequency = <66666666>;
  152. interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
  153. interrupt-map = <
  154. /* IDSEL 0x4 (PCIX Slot 2) */
  155. 0x2000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  156. 0x2000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  157. 0x2000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  158. 0x2000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0
  159. /* IDSEL 0x5 (PCIX Slot 3) */
  160. 0x2800 0x0 0x0 0x1 &mpic 0x1 0x1 0 0
  161. 0x2800 0x0 0x0 0x2 &mpic 0x2 0x1 0 0
  162. 0x2800 0x0 0x0 0x3 &mpic 0x3 0x1 0 0
  163. 0x2800 0x0 0x0 0x4 &mpic 0x0 0x1 0 0
  164. /* IDSEL 0x6 (PCIX Slot 4) */
  165. 0x3000 0x0 0x0 0x1 &mpic 0x2 0x1 0 0
  166. 0x3000 0x0 0x0 0x2 &mpic 0x3 0x1 0 0
  167. 0x3000 0x0 0x0 0x3 &mpic 0x0 0x1 0 0
  168. 0x3000 0x0 0x0 0x4 &mpic 0x1 0x1 0 0
  169. /* IDSEL 0x8 (PCIX Slot 5) */
  170. 0x4000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  171. 0x4000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  172. 0x4000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  173. 0x4000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0
  174. /* IDSEL 0xC (Tsi310 bridge) */
  175. 0x6000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  176. 0x6000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  177. 0x6000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  178. 0x6000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0
  179. /* IDSEL 0x14 (Slot 2) */
  180. 0xa000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  181. 0xa000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  182. 0xa000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  183. 0xa000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0
  184. /* IDSEL 0x15 (Slot 3) */
  185. 0xa800 0x0 0x0 0x1 &mpic 0x1 0x1 0 0
  186. 0xa800 0x0 0x0 0x2 &mpic 0x2 0x1 0 0
  187. 0xa800 0x0 0x0 0x3 &mpic 0x3 0x1 0 0
  188. 0xa800 0x0 0x0 0x4 &mpic 0x0 0x1 0 0
  189. /* IDSEL 0x16 (Slot 4) */
  190. 0xb000 0x0 0x0 0x1 &mpic 0x2 0x1 0 0
  191. 0xb000 0x0 0x0 0x2 &mpic 0x3 0x1 0 0
  192. 0xb000 0x0 0x0 0x3 &mpic 0x0 0x1 0 0
  193. 0xb000 0x0 0x0 0x4 &mpic 0x1 0x1 0 0
  194. /* IDSEL 0x18 (Slot 5) */
  195. 0xc000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  196. 0xc000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  197. 0xc000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  198. 0xc000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0
  199. /* IDSEL 0x1C (Tsi310 bridge PCI primary) */
  200. 0xe000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  201. 0xe000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  202. 0xe000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  203. 0xe000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0>;
  204. pci_bridge@1c {
  205. interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
  206. interrupt-map = <
  207. /* IDSEL 0x00 (PrPMC Site) */
  208. 0000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  209. 0000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  210. 0000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  211. 0000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0
  212. /* IDSEL 0x04 (VIA chip) */
  213. 0x2000 0x0 0x0 0x1 &mpic 0x0 0x1 0 0
  214. 0x2000 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  215. 0x2000 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  216. 0x2000 0x0 0x0 0x4 &mpic 0x3 0x1 0 0
  217. /* IDSEL 0x05 (8139) */
  218. 0x2800 0x0 0x0 0x1 &mpic 0x1 0x1 0 0
  219. /* IDSEL 0x06 (Slot 6) */
  220. 0x3000 0x0 0x0 0x1 &mpic 0x2 0x1 0 0
  221. 0x3000 0x0 0x0 0x2 &mpic 0x3 0x1 0 0
  222. 0x3000 0x0 0x0 0x3 &mpic 0x0 0x1 0 0
  223. 0x3000 0x0 0x0 0x4 &mpic 0x1 0x1 0 0
  224. /* IDESL 0x07 (Slot 7) */
  225. 0x3800 0x0 0x0 0x1 &mpic 0x3 0x1 0 0
  226. 0x3800 0x0 0x0 0x2 &mpic 0x0 0x1 0 0
  227. 0x3800 0x0 0x0 0x3 &mpic 0x1 0x1 0 0
  228. 0x3800 0x0 0x0 0x4 &mpic 0x2 0x1 0 0>;
  229. reg = <0xe000 0x0 0x0 0x0 0x0>;
  230. #interrupt-cells = <1>;
  231. #size-cells = <2>;
  232. #address-cells = <3>;
  233. ranges = <0x2000000 0x0 0x80000000
  234. 0x2000000 0x0 0x80000000
  235. 0x0 0x20000000
  236. 0x1000000 0x0 0x0
  237. 0x1000000 0x0 0x0
  238. 0x0 0x80000>;
  239. clock-frequency = <33333333>;
  240. isa@4 {
  241. device_type = "isa";
  242. #interrupt-cells = <2>;
  243. #size-cells = <1>;
  244. #address-cells = <2>;
  245. reg = <0x2000 0x0 0x0 0x0 0x0>;
  246. ranges = <0x1 0x0 0x1000000 0x0 0x0 0x1000>;
  247. interrupt-parent = <&i8259>;
  248. i8259: interrupt-controller@20 {
  249. interrupt-controller;
  250. device_type = "interrupt-controller";
  251. reg = <0x1 0x20 0x2
  252. 0x1 0xa0 0x2
  253. 0x1 0x4d0 0x2>;
  254. #address-cells = <0>;
  255. #interrupt-cells = <2>;
  256. compatible = "chrp,iic";
  257. interrupts = <0 1 0 0>;
  258. interrupt-parent = <&mpic>;
  259. };
  260. rtc@70 {
  261. compatible = "pnpPNP,b00";
  262. reg = <0x1 0x70 0x2>;
  263. };
  264. };
  265. };
  266. };
  267. pci1: pci@e0009000 {
  268. reg = <0 0xe0009000 0 0x1000>;
  269. ranges = <0x2000000 0x0 0x90000000 0 0x90000000 0x0 0x10000000
  270. 0x1000000 0x0 0x00000000 0 0xe2800000 0x0 0x800000>;
  271. clock-frequency = <66666666>;
  272. interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
  273. interrupt-map = <
  274. /* IDSEL 0x15 */
  275. 0xa800 0x0 0x0 0x1 &mpic 0xb 0x1 0 0
  276. 0xa800 0x0 0x0 0x2 &mpic 0x1 0x1 0 0
  277. 0xa800 0x0 0x0 0x3 &mpic 0x2 0x1 0 0
  278. 0xa800 0x0 0x0 0x4 &mpic 0x3 0x1 0 0>;
  279. };
  280. pci2: pcie@e000a000 {
  281. reg = <0 0xe000a000 0 0x1000>;
  282. ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000
  283. 0x1000000 0x0 0x00000000 0 0xe3000000 0x0 0x100000>;
  284. pcie@0 {
  285. ranges = <0x2000000 0x0 0xa0000000
  286. 0x2000000 0x0 0xa0000000
  287. 0x0 0x20000000
  288. 0x1000000 0x0 0x0
  289. 0x1000000 0x0 0x0
  290. 0x0 0x100000>;
  291. };
  292. };
  293. };
  294. /include/ "fsl/mpc8548si-post.dtsi"