bcm958625k.dts 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. /*
  2. * BSD LICENSE
  3. *
  4. * Copyright(c) 2015 Broadcom Corporation. All rights reserved.
  5. *
  6. * Redistribution and use in source and binary forms, with or without
  7. * modification, are permitted provided that the following conditions
  8. * are met:
  9. *
  10. * * Redistributions of source code must retain the above copyright
  11. * notice, this list of conditions and the following disclaimer.
  12. * * Redistributions in binary form must reproduce the above copyright
  13. * notice, this list of conditions and the following disclaimer in
  14. * the documentation and/or other materials provided with the
  15. * distribution.
  16. * * Neither the name of Broadcom Corporation nor the names of its
  17. * contributors may be used to endorse or promote products derived
  18. * from this software without specific prior written permission.
  19. *
  20. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  21. * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  22. * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  23. * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  24. * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  25. * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  26. * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  27. * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  28. * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  29. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  30. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  31. */
  32. /dts-v1/;
  33. #include "bcm-nsp.dtsi"
  34. / {
  35. model = "NorthStar Plus SVK (BCM958625K)";
  36. compatible = "brcm,bcm958625k", "brcm,bcm58625", "brcm,nsp";
  37. chosen {
  38. stdout-path = "serial0:115200n8";
  39. };
  40. memory@60000000 {
  41. device_type = "memory";
  42. reg = <0x60000000 0x80000000>;
  43. };
  44. };
  45. &dma {
  46. status = "okay";
  47. };
  48. &amac0 {
  49. status = "okay";
  50. };
  51. &amac1 {
  52. status = "okay";
  53. };
  54. &amac2 {
  55. status = "okay";
  56. };
  57. &ehci0 {
  58. status = "okay";
  59. };
  60. &nand_controller {
  61. nand@0 {
  62. compatible = "brcm,nandcs";
  63. reg = <0>;
  64. nand-on-flash-bbt;
  65. #address-cells = <1>;
  66. #size-cells = <1>;
  67. nand-ecc-strength = <24>;
  68. nand-ecc-step-size = <1024>;
  69. brcm,nand-oob-sector-size = <27>;
  70. partition@0 {
  71. label = "nboot";
  72. reg = <0x00000000 0x00200000>;
  73. read-only;
  74. };
  75. partition@200000 {
  76. label = "nenv";
  77. reg = <0x00200000 0x00400000>;
  78. };
  79. partition@600000 {
  80. label = "nsystem";
  81. reg = <0x00600000 0x00a00000>;
  82. };
  83. partition@1000000 {
  84. label = "nrootfs";
  85. reg = <0x01000000 0x03000000>;
  86. };
  87. partition@4000000 {
  88. label = "ncustfs";
  89. reg = <0x04000000 0x3c000000>;
  90. };
  91. };
  92. };
  93. &ohci0 {
  94. status = "okay";
  95. };
  96. &pcie0 {
  97. status = "okay";
  98. };
  99. &pcie1 {
  100. status = "okay";
  101. };
  102. &pcie2 {
  103. status = "okay";
  104. };
  105. &pinctrl {
  106. pinctrl-names = "default";
  107. pinctrl-0 = <&nand_sel>, <&gpiobs>, <&pwmc>;
  108. nand_sel: nand_sel {
  109. function = "nand";
  110. groups = "nand_grp";
  111. };
  112. gpiobs: gpiobs {
  113. function = "gpio_b";
  114. groups = "gpio_b_0_grp", "gpio_b_1_grp", "gpio_b_2_grp",
  115. "gpio_b_3_grp";
  116. };
  117. pwmc: pwmc {
  118. function = "pwm";
  119. groups = "pwm0_grp", "pwm1_grp", "pwm2_grp", "pwm3_grp";
  120. };
  121. emmc_sel: emmc_sel {
  122. function = "emmc";
  123. groups = "emmc_grp";
  124. };
  125. };
  126. &pwm {
  127. status = "okay";
  128. };
  129. &qspi {
  130. status = "okay";
  131. bspi-sel = <0>;
  132. flash: flash@0 {
  133. #address-cells = <1>;
  134. #size-cells = <1>;
  135. compatible = "m25p80";
  136. reg = <0x0>;
  137. spi-max-frequency = <12500000>;
  138. m25p,fast-read;
  139. spi-cpol;
  140. spi-cpha;
  141. partition@0 {
  142. label = "boot";
  143. reg = <0x00000000 0x000a0000>;
  144. };
  145. partition@a0000 {
  146. label = "env";
  147. reg = <0x000a0000 0x00060000>;
  148. };
  149. partition@100000 {
  150. label = "system";
  151. reg = <0x00100000 0x00600000>;
  152. };
  153. partition@700000 {
  154. label = "rootfs";
  155. reg = <0x00700000 0x01900000>;
  156. };
  157. };
  158. };
  159. &sata_phy0 {
  160. status = "okay";
  161. };
  162. &sata_phy1 {
  163. status = "okay";
  164. };
  165. &sata {
  166. status = "okay";
  167. };
  168. /*
  169. * By default the sd slot is functional. For emmc to work add "<&emmc_sel>"
  170. * and delete "<&nand_sel>" in "pinctrl-0" property of pinctrl node. Remove the
  171. * bus-width property here and disable the nand node with status = "disabled";.
  172. *
  173. * Ex: pinctrl-0 = <&emmc_sel>, <&gpiobs>, <&pwmc>;
  174. */
  175. &sdio {
  176. bus-width = <4>;
  177. no-1-8-v;
  178. status = "okay";
  179. };
  180. &srab {
  181. compatible = "brcm,bcm58625-srab", "brcm,nsp-srab";
  182. status = "okay";
  183. ports {
  184. port@0 {
  185. label = "port0";
  186. reg = <0>;
  187. };
  188. port@1 {
  189. label = "port1";
  190. reg = <1>;
  191. };
  192. port@2 {
  193. label = "port2";
  194. reg = <2>;
  195. };
  196. port@3 {
  197. label = "port3";
  198. reg = <3>;
  199. };
  200. port@4 {
  201. label = "port4";
  202. reg = <4>;
  203. };
  204. port@8 {
  205. ethernet = <&amac2>;
  206. label = "cpu";
  207. reg = <8>;
  208. fixed-link {
  209. speed = <1000>;
  210. full-duplex;
  211. };
  212. };
  213. };
  214. };
  215. &uart0 {
  216. status = "okay";
  217. };
  218. &uart1 {
  219. status = "okay";
  220. };
  221. &usb3_phy {
  222. status = "okay";
  223. };
  224. &xhci {
  225. status = "okay";
  226. };