t104xqds.dtsi 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408
  1. /*
  2. * T104xQDS Device Tree Source
  3. *
  4. * Copyright 2013 - 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. / {
  35. model = "fsl,T1040QDS";
  36. #address-cells = <2>;
  37. #size-cells = <2>;
  38. interrupt-parent = <&mpic>;
  39. aliases {
  40. emi1_rgmii0 = &t1040mdio0;
  41. emi1_rgmii1 = &t1040mdio1;
  42. emi1_slot3 = &t1040mdio3;
  43. emi1_slot5 = &t1040mdio5;
  44. emi1_slot6 = &t1040mdio6;
  45. emi1_slot7 = &t1040mdio7;
  46. rgmii_phy1 = &rgmii_phy1;
  47. rgmii_phy2 = &rgmii_phy2;
  48. phy_s3_01 = &phy_s3_01;
  49. phy_s3_02 = &phy_s3_02;
  50. phy_s3_03 = &phy_s3_03;
  51. phy_s3_04 = &phy_s3_04;
  52. phy_s5_01 = &phy_s5_01;
  53. phy_s5_02 = &phy_s5_02;
  54. phy_s5_03 = &phy_s5_03;
  55. phy_s5_04 = &phy_s5_04;
  56. phy_s6_01 = &phy_s6_01;
  57. phy_s6_02 = &phy_s6_02;
  58. phy_s6_03 = &phy_s6_03;
  59. phy_s6_04 = &phy_s6_04;
  60. phy_s7_01 = &phy_s7_01;
  61. phy_s7_02 = &phy_s7_02;
  62. phy_s7_03 = &phy_s7_03;
  63. phy_s7_04 = &phy_s7_04;
  64. };
  65. reserved-memory {
  66. #address-cells = <2>;
  67. #size-cells = <2>;
  68. ranges;
  69. bman_fbpr: bman-fbpr {
  70. size = <0 0x1000000>;
  71. alignment = <0 0x1000000>;
  72. };
  73. qman_fqd: qman-fqd {
  74. size = <0 0x400000>;
  75. alignment = <0 0x400000>;
  76. };
  77. qman_pfdr: qman-pfdr {
  78. size = <0 0x2000000>;
  79. alignment = <0 0x2000000>;
  80. };
  81. };
  82. ifc: localbus@ffe124000 {
  83. reg = <0xf 0xfe124000 0 0x2000>;
  84. ranges = <0 0 0xf 0xe8000000 0x08000000
  85. 2 0 0xf 0xff800000 0x00010000
  86. 3 0 0xf 0xffdf0000 0x00008000>;
  87. nor@0,0 {
  88. #address-cells = <1>;
  89. #size-cells = <1>;
  90. compatible = "cfi-flash";
  91. reg = <0x0 0x0 0x8000000>;
  92. bank-width = <2>;
  93. device-width = <1>;
  94. };
  95. nand@2,0 {
  96. #address-cells = <1>;
  97. #size-cells = <1>;
  98. compatible = "fsl,ifc-nand";
  99. reg = <0x2 0x0 0x10000>;
  100. };
  101. board-control@3,0 {
  102. #address-cells = <1>;
  103. #size-cells = <1>;
  104. compatible = "fsl,fpga-qixis";
  105. reg = <3 0 0x300>;
  106. ranges = <0 3 0 0x300>;
  107. mdio-mux-emi1 {
  108. #address-cells = <1>;
  109. #size-cells = <0>;
  110. compatible = "mdio-mux-mmioreg", "mdio-mux";
  111. mdio-parent-bus = <&mdio0>;
  112. reg = <0x54 1>;
  113. mux-mask = <0xe0>;
  114. t1040mdio0: mdio@0 {
  115. #address-cells = <1>;
  116. #size-cells = <0>;
  117. reg = <0x00>;
  118. status = "disabled";
  119. rgmii_phy1: ethernet-phy@1 {
  120. reg = <0x1>;
  121. };
  122. };
  123. t1040mdio1: mdio@20 {
  124. #address-cells = <1>;
  125. #size-cells = <0>;
  126. reg = <0x20>;
  127. status = "disabled";
  128. rgmii_phy2: ethernet-phy@2 {
  129. reg = <0x2>;
  130. };
  131. };
  132. t1040mdio3: mdio@60 {
  133. #address-cells = <1>;
  134. #size-cells = <0>;
  135. reg = <0x60>;
  136. status = "disabled";
  137. phy_s3_01: ethernet-phy@1c {
  138. reg = <0x1c>;
  139. };
  140. phy_s3_02: ethernet-phy@1d {
  141. reg = <0x1d>;
  142. };
  143. phy_s3_03: ethernet-phy@1e {
  144. reg = <0x1e>;
  145. };
  146. phy_s3_04: ethernet-phy@1f {
  147. reg = <0x1f>;
  148. };
  149. };
  150. t1040mdio5: mdio@a0 {
  151. #address-cells = <1>;
  152. #size-cells = <0>;
  153. reg = <0xa0>;
  154. phy_s5_01: ethernet-phy@1c {
  155. reg = <0x14>;
  156. };
  157. phy_s5_02: ethernet-phy@1d {
  158. reg = <0x15>;
  159. };
  160. phy_s5_03: ethernet-phy@1e {
  161. reg = <0x16>;
  162. };
  163. phy_s5_04: ethernet-phy@1f {
  164. reg = <0x17>;
  165. };
  166. };
  167. t1040mdio6: mdio@c0 {
  168. #address-cells = <1>;
  169. #size-cells = <0>;
  170. reg = <0xc0>;
  171. phy_s6_01: ethernet-phy@1c {
  172. reg = <0x18>;
  173. };
  174. phy_s6_02: ethernet-phy@1d {
  175. reg = <0x19>;
  176. };
  177. phy_s6_03: ethernet-phy@1e {
  178. reg = <0x1a>;
  179. };
  180. phy_s6_04: ethernet-phy@1f {
  181. reg = <0x1b>;
  182. };
  183. };
  184. t1040mdio7: mdio@e0 {
  185. #address-cells = <1>;
  186. #size-cells = <0>;
  187. reg = <0xe0>;
  188. status = "disabled";
  189. phy_s7_01: ethernet-phy@1c {
  190. reg = <0x1c>;
  191. };
  192. phy_s7_02: ethernet-phy@1d {
  193. reg = <0x1d>;
  194. };
  195. phy_s7_03: ethernet-phy@1e {
  196. reg = <0x1e>;
  197. };
  198. phy_s7_04: ethernet-phy@1f {
  199. reg = <0x1f>;
  200. };
  201. };
  202. };
  203. };
  204. };
  205. memory {
  206. device_type = "memory";
  207. };
  208. dcsr: dcsr@f00000000 {
  209. ranges = <0x00000000 0xf 0x00000000 0x01072000>;
  210. };
  211. bportals: bman-portals@ff4000000 {
  212. ranges = <0x0 0xf 0xf4000000 0x2000000>;
  213. };
  214. qportals: qman-portals@ff6000000 {
  215. ranges = <0x0 0xf 0xf6000000 0x2000000>;
  216. };
  217. soc: soc@ffe000000 {
  218. ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
  219. reg = <0xf 0xfe000000 0 0x00001000>;
  220. spi@110000 {
  221. flash@0 {
  222. #address-cells = <1>;
  223. #size-cells = <1>;
  224. compatible = "micron,n25q128a11", "jedec,spi-nor";
  225. reg = <0>;
  226. spi-max-frequency = <10000000>; /* input clock */
  227. };
  228. };
  229. i2c@118000 {
  230. pca9547@77 {
  231. compatible = "philips,pca9547";
  232. reg = <0x77>;
  233. };
  234. rtc@68 {
  235. compatible = "dallas,ds3232";
  236. reg = <0x68>;
  237. interrupts = <0x1 0x1 0 0>;
  238. };
  239. };
  240. fman@400000 {
  241. ethernet@e0000 {
  242. fixed-link = <0 1 1000 0 0>;
  243. phy-connection-type = "sgmii";
  244. };
  245. ethernet@e2000 {
  246. fixed-link = <1 1 1000 0 0>;
  247. phy-connection-type = "sgmii";
  248. };
  249. ethernet@e4000 {
  250. phy-handle = <&phy_s7_03>;
  251. phy-connection-type = "sgmii";
  252. };
  253. ethernet@e6000 {
  254. phy-handle = <&rgmii_phy1>;
  255. phy-connection-type = "rgmii";
  256. };
  257. ethernet@e8000 {
  258. phy-handle = <&rgmii_phy2>;
  259. phy-connection-type = "rgmii";
  260. };
  261. };
  262. };
  263. pci0: pcie@ffe240000 {
  264. reg = <0xf 0xfe240000 0 0x10000>;
  265. ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 0x10000000
  266. 0x01000000 0 0x00000000 0xf 0xf8000000 0x0 0x00010000>;
  267. pcie@0 {
  268. ranges = <0x02000000 0 0xe0000000
  269. 0x02000000 0 0xe0000000
  270. 0 0x10000000
  271. 0x01000000 0 0x00000000
  272. 0x01000000 0 0x00000000
  273. 0 0x00010000>;
  274. };
  275. };
  276. pci1: pcie@ffe250000 {
  277. reg = <0xf 0xfe250000 0 0x10000>;
  278. ranges = <0x02000000 0x0 0xe0000000 0xc 0x10000000 0x0 0x10000000
  279. 0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000>;
  280. pcie@0 {
  281. ranges = <0x02000000 0 0xe0000000
  282. 0x02000000 0 0xe0000000
  283. 0 0x10000000
  284. 0x01000000 0 0x00000000
  285. 0x01000000 0 0x00000000
  286. 0 0x00010000>;
  287. };
  288. };
  289. pci2: pcie@ffe260000 {
  290. reg = <0xf 0xfe260000 0 0x10000>;
  291. ranges = <0x02000000 0 0xe0000000 0xc 0x20000000 0 0x10000000
  292. 0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>;
  293. pcie@0 {
  294. ranges = <0x02000000 0 0xe0000000
  295. 0x02000000 0 0xe0000000
  296. 0 0x10000000
  297. 0x01000000 0 0x00000000
  298. 0x01000000 0 0x00000000
  299. 0 0x00010000>;
  300. };
  301. };
  302. pci3: pcie@ffe270000 {
  303. reg = <0xf 0xfe270000 0 0x10000>;
  304. ranges = <0x02000000 0 0xe0000000 0xc 0x30000000 0 0x10000000
  305. 0x01000000 0 0x00000000 0xf 0xf8030000 0 0x00010000>;
  306. pcie@0 {
  307. ranges = <0x02000000 0 0xe0000000
  308. 0x02000000 0 0xe0000000
  309. 0 0x10000000
  310. 0x01000000 0 0x00000000
  311. 0x01000000 0 0x00000000
  312. 0 0x00010000>;
  313. };
  314. };
  315. qe: qe@ffe140000 {
  316. ranges = <0x0 0xf 0xfe140000 0x40000>;
  317. reg = <0xf 0xfe140000 0 0x480>;
  318. brg-frequency = <0>;
  319. bus-frequency = <0>;
  320. si1: si@700 {
  321. compatible = "fsl,t1040-qe-si";
  322. reg = <0x700 0x80>;
  323. };
  324. siram1: siram@1000 {
  325. compatible = "fsl,t1040-qe-siram";
  326. reg = <0x1000 0x800>;
  327. };
  328. ucc_hdlc: ucc@2000 {
  329. compatible = "fsl,ucc-hdlc";
  330. rx-clock-name = "clk8";
  331. tx-clock-name = "clk9";
  332. fsl,rx-sync-clock = "rsync_pin";
  333. fsl,tx-sync-clock = "tsync_pin";
  334. fsl,tx-timeslot-mask = <0xfffffffe>;
  335. fsl,rx-timeslot-mask = <0xfffffffe>;
  336. fsl,tdm-framer-type = "e1";
  337. fsl,tdm-id = <0>;
  338. fsl,siram-entry-id = <0>;
  339. fsl,tdm-interface;
  340. };
  341. ucc_serial: ucc@2200 {
  342. compatible = "fsl,t1040-ucc-uart";
  343. port-number = <0>;
  344. rx-clock-name = "brg2";
  345. tx-clock-name = "brg2";
  346. };
  347. };
  348. };