p1025twr.dtsi 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280
  1. /*
  2. * P1025 TWR Device Tree Source stub (no addresses or top-level ranges)
  3. *
  4. * Copyright 2013 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. aliases {
  36. ethernet3 = &enet3;
  37. ethernet4 = &enet4;
  38. };
  39. };
  40. &lbc {
  41. nor@0,0 {
  42. #address-cells = <1>;
  43. #size-cells = <1>;
  44. compatible = "cfi-flash";
  45. reg = <0x0 0x0 0x4000000>;
  46. bank-width = <2>;
  47. device-width = <1>;
  48. partition@0 {
  49. /* This location must not be altered */
  50. /* 256KB for Vitesse 7385 Switch firmware */
  51. reg = <0x0 0x00040000>;
  52. label = "NOR Vitesse-7385 Firmware";
  53. read-only;
  54. };
  55. partition@40000 {
  56. /* 256KB for DTB Image */
  57. reg = <0x00040000 0x00040000>;
  58. label = "NOR DTB Image";
  59. };
  60. partition@80000 {
  61. /* 5.5 MB for Linux Kernel Image */
  62. reg = <0x00080000 0x00580000>;
  63. label = "NOR Linux Kernel Image";
  64. };
  65. partition@400000 {
  66. /* 56.75MB for Root file System */
  67. reg = <0x00600000 0x038c0000>;
  68. label = "NOR Root File System";
  69. };
  70. partition@ec0000 {
  71. /* This location must not be altered */
  72. /* 256KB for QE ucode firmware*/
  73. reg = <0x03ec0000 0x00040000>;
  74. label = "NOR QE microcode firmware";
  75. read-only;
  76. };
  77. partition@f00000 {
  78. /* This location must not be altered */
  79. /* 512KB for u-boot Bootloader Image */
  80. /* 512KB for u-boot Environment Variables */
  81. reg = <0x03f00000 0x00100000>;
  82. label = "NOR U-Boot Image";
  83. read-only;
  84. };
  85. };
  86. /* CS2 for Display */
  87. display@2,0 {
  88. compatible = "solomon,ssd1289fb";
  89. reg = <0x2 0x0000 0x0004>;
  90. };
  91. };
  92. &soc {
  93. usb@22000 {
  94. phy_type = "ulpi";
  95. };
  96. mdio@24000 {
  97. phy0: ethernet-phy@2 {
  98. interrupt-parent = <&mpic>;
  99. interrupts = <1 1 0 0>;
  100. reg = <0x2>;
  101. };
  102. phy1: ethernet-phy@1 {
  103. interrupt-parent = <&mpic>;
  104. interrupts = <2 1 0 0>;
  105. reg = <0x1>;
  106. };
  107. tbi0: tbi-phy@11 {
  108. reg = <0x11>;
  109. device_type = "tbi-phy";
  110. };
  111. };
  112. mdio@25000 {
  113. tbi1: tbi-phy@11 {
  114. reg = <0x11>;
  115. device_type = "tbi-phy";
  116. };
  117. };
  118. mdio@26000 {
  119. tbi2: tbi-phy@11 {
  120. reg = <0x11>;
  121. device_type = "tbi-phy";
  122. };
  123. };
  124. enet0: ethernet@b0000 {
  125. phy-handle = <&phy0>;
  126. phy-connection-type = "rgmii-id";
  127. };
  128. enet1: ethernet@b1000 {
  129. status = "disabled";
  130. };
  131. enet2: ethernet@b2000 {
  132. phy-handle = <&phy1>;
  133. phy-connection-type = "rgmii-id";
  134. };
  135. par_io@e0100 {
  136. #address-cells = <1>;
  137. #size-cells = <1>;
  138. reg = <0xe0100 0x60>;
  139. ranges = <0x0 0xe0100 0x60>;
  140. device_type = "par_io";
  141. num-ports = <3>;
  142. pio1: ucc_pin@01 {
  143. pio-map = <
  144. /* port pin dir open_drain assignment has_irq */
  145. 0x1 0x13 0x1 0x0 0x1 0x0 /* QE_MUX_MDC */
  146. 0x1 0x14 0x3 0x0 0x1 0x0 /* QE_MUX_MDIO */
  147. 0x0 0x17 0x2 0x0 0x2 0x0 /* CLK12 */
  148. 0x0 0x18 0x2 0x0 0x1 0x0 /* CLK9 */
  149. 0x0 0x7 0x1 0x0 0x2 0x0 /* ENET1_TXD0_SER1_TXD0 */
  150. 0x0 0x9 0x1 0x0 0x2 0x0 /* ENET1_TXD1_SER1_TXD1 */
  151. 0x0 0xb 0x1 0x0 0x2 0x0 /* ENET1_TXD2_SER1_TXD2 */
  152. 0x0 0xc 0x1 0x0 0x2 0x0 /* ENET1_TXD3_SER1_TXD3 */
  153. 0x0 0x6 0x2 0x0 0x2 0x0 /* ENET1_RXD0_SER1_RXD0 */
  154. 0x0 0xa 0x2 0x0 0x2 0x0 /* ENET1_RXD1_SER1_RXD1 */
  155. 0x0 0xe 0x2 0x0 0x2 0x0 /* ENET1_RXD2_SER1_RXD2 */
  156. 0x0 0xf 0x2 0x0 0x2 0x0 /* ENET1_RXD3_SER1_RXD3 */
  157. 0x0 0x5 0x1 0x0 0x2 0x0 /* ENET1_TX_EN_SER1_RTS_B */
  158. 0x0 0xd 0x1 0x0 0x2 0x0 /* ENET1_TX_ER */
  159. 0x0 0x4 0x2 0x0 0x2 0x0 /* ENET1_RX_DV_SER1_CTS_B */
  160. 0x0 0x8 0x2 0x0 0x2 0x0 /* ENET1_RX_ER_SER1_CD_B */
  161. 0x0 0x11 0x2 0x0 0x2 0x0 /* ENET1_CRS */
  162. 0x0 0x10 0x2 0x0 0x2 0x0>; /* ENET1_COL */
  163. };
  164. pio2: ucc_pin@02 {
  165. pio-map = <
  166. /* port pin dir open_drain assignment has_irq */
  167. 0x1 0x13 0x1 0x0 0x1 0x0 /* QE_MUX_MDC */
  168. 0x1 0x14 0x3 0x0 0x1 0x0 /* QE_MUX_MDIO */
  169. 0x1 0xb 0x2 0x0 0x1 0x0 /* CLK13 */
  170. 0x1 0x7 0x1 0x0 0x2 0x0 /* ENET5_TXD0_SER5_TXD0 */
  171. 0x1 0xa 0x1 0x0 0x2 0x0 /* ENET5_TXD1_SER5_TXD1 */
  172. 0x1 0x6 0x2 0x0 0x2 0x0 /* ENET5_RXD0_SER5_RXD0 */
  173. 0x1 0x9 0x2 0x0 0x2 0x0 /* ENET5_RXD1_SER5_RXD1 */
  174. 0x1 0x5 0x1 0x0 0x2 0x0 /* ENET5_TX_EN_SER5_RTS_B */
  175. 0x1 0x4 0x2 0x0 0x2 0x0 /* ENET5_RX_DV_SER5_CTS_B */
  176. 0x1 0x8 0x2 0x0 0x2 0x0>; /* ENET5_RX_ER_SER5_CD_B */
  177. };
  178. pio3: ucc_pin@03 {
  179. pio-map = <
  180. /* port pin dir open_drain assignment has_irq */
  181. 0x0 0x16 0x2 0x0 0x2 0x0 /* SER7_CD_B*/
  182. 0x0 0x12 0x2 0x0 0x2 0x0 /* SER7_CTS_B*/
  183. 0x0 0x13 0x1 0x0 0x2 0x0 /* SER7_RTS_B*/
  184. 0x0 0x14 0x2 0x0 0x2 0x0 /* SER7_RXD0*/
  185. 0x0 0x15 0x1 0x0 0x2 0x0>; /* SER7_TXD0*/
  186. };
  187. pio4: ucc_pin@04 {
  188. pio-map = <
  189. /* port pin dir open_drain assignment has_irq */
  190. 0x1 0x0 0x2 0x0 0x2 0x0 /* SER3_CD_B*/
  191. 0x0 0x1c 0x2 0x0 0x2 0x0 /* SER3_CTS_B*/
  192. 0x0 0x1d 0x1 0x0 0x2 0x0 /* SER3_RTS_B*/
  193. 0x0 0x1e 0x2 0x0 0x2 0x0 /* SER3_RXD0*/
  194. 0x0 0x1f 0x1 0x0 0x2 0x0>; /* SER3_TXD0*/
  195. };
  196. };
  197. };
  198. &qe {
  199. enet3: ucc@2000 {
  200. device_type = "network";
  201. compatible = "ucc_geth";
  202. rx-clock-name = "clk12";
  203. tx-clock-name = "clk9";
  204. pio-handle = <&pio1>;
  205. phy-handle = <&qe_phy0>;
  206. phy-connection-type = "mii";
  207. };
  208. mdio@2120 {
  209. qe_phy0: ethernet-phy@18 {
  210. interrupt-parent = <&mpic>;
  211. interrupts = <4 1 0 0>;
  212. reg = <0x18>;
  213. device_type = "ethernet-phy";
  214. };
  215. qe_phy1: ethernet-phy@19 {
  216. interrupt-parent = <&mpic>;
  217. interrupts = <5 1 0 0>;
  218. reg = <0x19>;
  219. device_type = "ethernet-phy";
  220. };
  221. tbi-phy@11 {
  222. reg = <0x11>;
  223. device_type = "tbi-phy";
  224. };
  225. };
  226. enet4: ucc@2400 {
  227. device_type = "network";
  228. compatible = "ucc_geth";
  229. rx-clock-name = "none";
  230. tx-clock-name = "clk13";
  231. pio-handle = <&pio2>;
  232. phy-handle = <&qe_phy1>;
  233. phy-connection-type = "rmii";
  234. };
  235. serial2: ucc@2600 {
  236. device_type = "serial";
  237. compatible = "ucc_uart";
  238. port-number = <0>;
  239. rx-clock-name = "brg6";
  240. tx-clock-name = "brg6";
  241. pio-handle = <&pio3>;
  242. };
  243. serial3: ucc@2200 {
  244. device_type = "serial";
  245. compatible = "ucc_uart";
  246. port-number = <1>;
  247. rx-clock-name = "brg2";
  248. tx-clock-name = "brg2";
  249. pio-handle = <&pio4>;
  250. };
  251. };