p4080ds.dts 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401
  1. /*
  2. * P4080DS Device Tree Source
  3. *
  4. * Copyright 2009 - 2015 Freescale Semiconductor Inc.
  5. *
  6. * Redistribution and use in source and binary forms, with or without
  7. * modification, are permitted provided that the following conditions are met:
  8. * * Redistributions of source code must retain the above copyright
  9. * notice, this list of conditions and the following disclaimer.
  10. * * Redistributions in binary form must reproduce the above copyright
  11. * notice, this list of conditions and the following disclaimer in the
  12. * documentation and/or other materials provided with the distribution.
  13. * * Neither the name of Freescale Semiconductor nor the
  14. * names of its contributors may be used to endorse or promote products
  15. * derived from this software without specific prior written permission.
  16. *
  17. *
  18. * ALTERNATIVELY, this software may be distributed under the terms of the
  19. * GNU General Public License ("GPL") as published by the Free Software
  20. * Foundation, either version 2 of that License or (at your option) any
  21. * later version.
  22. *
  23. * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
  24. * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  25. * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  26. * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
  27. * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  28. * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  29. * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  30. * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  31. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  32. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  33. */
  34. /include/ "p4080si-pre.dtsi"
  35. / {
  36. model = "fsl,P4080DS";
  37. compatible = "fsl,P4080DS";
  38. #address-cells = <2>;
  39. #size-cells = <2>;
  40. interrupt-parent = <&mpic>;
  41. aliases {
  42. phy_rgmii = &phyrgmii;
  43. phy5_slot3 = &phy5slot3;
  44. phy6_slot3 = &phy6slot3;
  45. phy7_slot3 = &phy7slot3;
  46. phy8_slot3 = &phy8slot3;
  47. emi1_slot3 = &p4080mdio2;
  48. emi1_slot4 = &p4080mdio1;
  49. emi1_slot5 = &p4080mdio3;
  50. emi1_rgmii = &p4080mdio0;
  51. emi2_slot4 = &p4080xmdio1;
  52. emi2_slot5 = &p4080xmdio3;
  53. };
  54. memory {
  55. device_type = "memory";
  56. };
  57. reserved-memory {
  58. #address-cells = <2>;
  59. #size-cells = <2>;
  60. ranges;
  61. bman_fbpr: bman-fbpr {
  62. size = <0 0x1000000>;
  63. alignment = <0 0x1000000>;
  64. };
  65. qman_fqd: qman-fqd {
  66. size = <0 0x400000>;
  67. alignment = <0 0x400000>;
  68. };
  69. qman_pfdr: qman-pfdr {
  70. size = <0 0x2000000>;
  71. alignment = <0 0x2000000>;
  72. };
  73. };
  74. dcsr: dcsr@f00000000 {
  75. ranges = <0x00000000 0xf 0x00000000 0x01008000>;
  76. };
  77. bportals: bman-portals@ff4000000 {
  78. ranges = <0x0 0xf 0xf4000000 0x200000>;
  79. };
  80. qportals: qman-portals@ff4200000 {
  81. ranges = <0x0 0xf 0xf4200000 0x200000>;
  82. };
  83. soc: soc@ffe000000 {
  84. ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
  85. reg = <0xf 0xfe000000 0 0x00001000>;
  86. spi@110000 {
  87. flash@0 {
  88. #address-cells = <1>;
  89. #size-cells = <1>;
  90. compatible = "spansion,s25sl12801", "jedec,spi-nor";
  91. reg = <0>;
  92. spi-max-frequency = <40000000>; /* input clock */
  93. partition@u-boot {
  94. label = "u-boot";
  95. reg = <0x00000000 0x00100000>;
  96. read-only;
  97. };
  98. partition@kernel {
  99. label = "kernel";
  100. reg = <0x00100000 0x00500000>;
  101. read-only;
  102. };
  103. partition@dtb {
  104. label = "dtb";
  105. reg = <0x00600000 0x00100000>;
  106. read-only;
  107. };
  108. partition@fs {
  109. label = "file system";
  110. reg = <0x00700000 0x00900000>;
  111. };
  112. };
  113. };
  114. i2c@118100 {
  115. eeprom@51 {
  116. compatible = "at24,24c256";
  117. reg = <0x51>;
  118. };
  119. eeprom@52 {
  120. compatible = "at24,24c256";
  121. reg = <0x52>;
  122. };
  123. rtc@68 {
  124. compatible = "dallas,ds3232";
  125. reg = <0x68>;
  126. interrupts = <0x1 0x1 0 0>;
  127. };
  128. adt7461@4c {
  129. compatible = "adi,adt7461";
  130. reg = <0x4c>;
  131. };
  132. };
  133. usb0: usb@210000 {
  134. phy_type = "ulpi";
  135. };
  136. usb1: usb@211000 {
  137. dr_mode = "host";
  138. phy_type = "ulpi";
  139. };
  140. fman@400000 {
  141. ethernet@e0000 {
  142. phy-handle = <&phy0>;
  143. phy-connection-type = "sgmii";
  144. };
  145. ethernet@e2000 {
  146. phy-handle = <&phy1>;
  147. phy-connection-type = "sgmii";
  148. };
  149. ethernet@e4000 {
  150. phy-handle = <&phy2>;
  151. phy-connection-type = "sgmii";
  152. };
  153. ethernet@e6000 {
  154. phy-handle = <&phy3>;
  155. phy-connection-type = "sgmii";
  156. };
  157. ethernet@f0000 {
  158. phy-handle = <&phy10>;
  159. phy-connection-type = "xgmii";
  160. };
  161. };
  162. fman@500000 {
  163. ethernet@e0000 {
  164. phy-handle = <&phy5>;
  165. phy-connection-type = "sgmii";
  166. };
  167. ethernet@e2000 {
  168. phy-handle = <&phy6>;
  169. phy-connection-type = "sgmii";
  170. };
  171. ethernet@e4000 {
  172. phy-handle = <&phy7>;
  173. phy-connection-type = "sgmii";
  174. };
  175. ethernet@e6000 {
  176. phy-handle = <&phy8>;
  177. phy-connection-type = "sgmii";
  178. };
  179. ethernet@f0000 {
  180. phy-handle = <&phy11>;
  181. phy-connection-type = "xgmii";
  182. };
  183. };
  184. };
  185. rio: rapidio@ffe0c0000 {
  186. reg = <0xf 0xfe0c0000 0 0x11000>;
  187. port1 {
  188. ranges = <0 0 0xc 0x20000000 0 0x10000000>;
  189. };
  190. port2 {
  191. ranges = <0 0 0xc 0x30000000 0 0x10000000>;
  192. };
  193. };
  194. lbc: localbus@ffe124000 {
  195. reg = <0xf 0xfe124000 0 0x1000>;
  196. ranges = <0 0 0xf 0xe8000000 0x08000000
  197. 3 0 0xf 0xffdf0000 0x00008000>;
  198. flash@0,0 {
  199. compatible = "cfi-flash";
  200. reg = <0 0 0x08000000>;
  201. bank-width = <2>;
  202. device-width = <2>;
  203. };
  204. board-control@3,0 {
  205. compatible = "fsl,p4080ds-fpga", "fsl,fpga-ngpixis";
  206. reg = <3 0 0x30>;
  207. };
  208. };
  209. pci0: pcie@ffe200000 {
  210. reg = <0xf 0xfe200000 0 0x1000>;
  211. ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 0x20000000
  212. 0x01000000 0 0x00000000 0xf 0xf8000000 0x0 0x00010000>;
  213. pcie@0 {
  214. ranges = <0x02000000 0 0xe0000000
  215. 0x02000000 0 0xe0000000
  216. 0 0x20000000
  217. 0x01000000 0 0x00000000
  218. 0x01000000 0 0x00000000
  219. 0 0x00010000>;
  220. };
  221. };
  222. pci1: pcie@ffe201000 {
  223. reg = <0xf 0xfe201000 0 0x1000>;
  224. ranges = <0x02000000 0x0 0xe0000000 0xc 0x20000000 0x0 0x20000000
  225. 0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000>;
  226. pcie@0 {
  227. ranges = <0x02000000 0 0xe0000000
  228. 0x02000000 0 0xe0000000
  229. 0 0x20000000
  230. 0x01000000 0 0x00000000
  231. 0x01000000 0 0x00000000
  232. 0 0x00010000>;
  233. };
  234. };
  235. pci2: pcie@ffe202000 {
  236. reg = <0xf 0xfe202000 0 0x1000>;
  237. ranges = <0x02000000 0 0xe0000000 0xc 0x40000000 0 0x20000000
  238. 0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>;
  239. pcie@0 {
  240. ranges = <0x02000000 0 0xe0000000
  241. 0x02000000 0 0xe0000000
  242. 0 0x20000000
  243. 0x01000000 0 0x00000000
  244. 0x01000000 0 0x00000000
  245. 0 0x00010000>;
  246. };
  247. };
  248. mdio-mux-emi1 {
  249. #address-cells = <1>;
  250. #size-cells = <0>;
  251. compatible = "mdio-mux-gpio", "mdio-mux";
  252. mdio-parent-bus = <&mdio0>;
  253. gpios = <&gpio0 1 0>, <&gpio0 0 0>;
  254. p4080mdio0: mdio@0 {
  255. #address-cells = <1>;
  256. #size-cells = <0>;
  257. reg = <0>;
  258. phyrgmii: ethernet-phy@0 {
  259. reg = <0x0>;
  260. };
  261. };
  262. p4080mdio1: mdio@1 {
  263. #address-cells = <1>;
  264. #size-cells = <0>;
  265. reg = <1>;
  266. phy5: ethernet-phy@1c {
  267. reg = <0x1c>;
  268. };
  269. phy6: ethernet-phy@1d {
  270. reg = <0x1d>;
  271. };
  272. phy7: ethernet-phy@1e {
  273. reg = <0x1e>;
  274. };
  275. phy8: ethernet-phy@1f {
  276. reg = <0x1f>;
  277. };
  278. };
  279. p4080mdio2: mdio@2 {
  280. #address-cells = <1>;
  281. #size-cells = <0>;
  282. reg = <2>;
  283. status = "disabled";
  284. phy5slot3: ethernet-phy@1c {
  285. reg = <0x1c>;
  286. };
  287. phy6slot3: ethernet-phy@1d {
  288. reg = <0x1d>;
  289. };
  290. phy7slot3: ethernet-phy@1e {
  291. reg = <0x1e>;
  292. };
  293. phy8slot3: ethernet-phy@1f {
  294. reg = <0x1f>;
  295. };
  296. };
  297. p4080mdio3: mdio@3 {
  298. #address-cells = <1>;
  299. #size-cells = <0>;
  300. reg = <3>;
  301. phy0: ethernet-phy@1c {
  302. reg = <0x1c>;
  303. };
  304. phy1: ethernet-phy@1d {
  305. reg = <0x1d>;
  306. };
  307. phy2: ethernet-phy@1e {
  308. reg = <0x1e>;
  309. };
  310. phy3: ethernet-phy@1f {
  311. reg = <0x1f>;
  312. };
  313. };
  314. };
  315. mdio-mux-emi2 {
  316. #address-cells = <1>;
  317. #size-cells = <0>;
  318. compatible = "mdio-mux-gpio", "mdio-mux";
  319. mdio-parent-bus = <&xmdio0>;
  320. gpios = <&gpio0 3 0>, <&gpio0 2 0>;
  321. p4080xmdio1: mdio@1 {
  322. #address-cells = <1>;
  323. #size-cells = <0>;
  324. reg = <1>;
  325. phy11: ethernet-phy@0 {
  326. compatible = "ethernet-phy-ieee802.3-c45";
  327. reg = <0x0>;
  328. };
  329. };
  330. p4080xmdio3: mdio@3 {
  331. #address-cells = <1>;
  332. #size-cells = <0>;
  333. reg = <3>;
  334. phy10: ethernet-phy@4 {
  335. compatible = "ethernet-phy-ieee802.3-c45";
  336. reg = <0x4>;
  337. };
  338. };
  339. };
  340. };
  341. /include/ "p4080si-post.dtsi"