bcm63168-smartrg-sr505n.dts 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. #include "bcm63268.dtsi"
  3. / {
  4. model = "SmartRG SR505n";
  5. compatible = "smartrg,sr505n", "brcm,bcm63168", "brcm,bcm63268";
  6. aliases {
  7. led-boot = &led_power_green;
  8. led-failsafe = &led_power_red;
  9. led-running = &led_power_green;
  10. led-upgrade = &led_power_green;
  11. };
  12. keys {
  13. compatible = "gpio-keys-polled";
  14. poll-interval = <100>;
  15. reset {
  16. label = "reset";
  17. gpios = <&gpio 32 GPIO_ACTIVE_LOW>;
  18. linux,code = <KEY_RESTART>;
  19. debounce-interval = <60>;
  20. };
  21. wps {
  22. label = "wps";
  23. gpios = <&gpio 33 GPIO_ACTIVE_LOW>;
  24. linux,code = <KEY_WPS_BUTTON>;
  25. debounce-interval = <60>;
  26. };
  27. wlan {
  28. label = "wlan";
  29. gpios = <&gpio 34 GPIO_ACTIVE_LOW>;
  30. linux,code = <KEY_WLAN>;
  31. debounce-interval = <60>;
  32. };
  33. };
  34. };
  35. &ehci {
  36. status = "okay";
  37. };
  38. &ethernet {
  39. status = "okay";
  40. nvmem-cells = <&macaddr_cfe_6a0>;
  41. nvmem-cell-names = "mac-address";
  42. };
  43. &hsspi {
  44. status = "okay";
  45. flash@0 {
  46. compatible = "jedec,spi-nor";
  47. spi-max-frequency = <16666667>;
  48. spi-tx-bus-width = <2>;
  49. spi-rx-bus-width = <2>;
  50. reg = <0>;
  51. #address-cells = <1>;
  52. #size-cells = <1>;
  53. partitions {
  54. compatible = "fixed-partitions";
  55. #address-cells = <1>;
  56. #size-cells = <1>;
  57. partition@0 {
  58. label = "cfe";
  59. reg = <0x000000 0x010000>;
  60. read-only;
  61. nvmem-layout {
  62. compatible = "fixed-layout";
  63. #address-cells = <1>;
  64. #size-cells = <1>;
  65. macaddr_cfe_6a0: macaddr@6a0 {
  66. reg = <0x6a0 0x6>;
  67. };
  68. };
  69. };
  70. partition@10000 {
  71. compatible = "brcm,bcm963xx-imagetag";
  72. label = "firmware";
  73. reg = <0x010000 0xfd0000>;
  74. };
  75. partition@fe0000 {
  76. label = "nvram";
  77. reg = <0xfe0000 0x020000>;
  78. };
  79. };
  80. };
  81. };
  82. &leds {
  83. status = "okay";
  84. pinctrl-names = "default";
  85. pinctrl-0 = <&pinctrl_leds>;
  86. wps_green@1 {
  87. reg = <1>;
  88. active-low;
  89. function = LED_FUNCTION_WPS;
  90. color = <LED_COLOR_ID_GREEN>;
  91. };
  92. inet_green@8 {
  93. reg = <8>;
  94. active-low;
  95. label = "green:inet";
  96. };
  97. lan2_green@9 {
  98. /* EPHY1 Act */
  99. reg = <9>;
  100. brcm,hardware-controlled;
  101. };
  102. lan3_green@10 {
  103. /* EPHY2 Act */
  104. reg = <10>;
  105. brcm,hardware-controlled;
  106. };
  107. lan4_green@11 {
  108. /* EPHY3 Act */
  109. reg = <11>;
  110. brcm,hardware-controlled;
  111. };
  112. lan1_green@12 {
  113. /* GPHY0 Act */
  114. reg = <12>;
  115. brcm,hardware-controlled;
  116. };
  117. dsl_green@14 {
  118. reg = <14>;
  119. active-low;
  120. label = "green:dsl";
  121. };
  122. inet_red@15 {
  123. reg = <15>;
  124. active-low;
  125. label = "red:inet";
  126. };
  127. usb_green@16 {
  128. reg = <16>;
  129. active-low;
  130. function = LED_FUNCTION_USB;
  131. color = <LED_COLOR_ID_GREEN>;
  132. };
  133. led_power_green: power_green@20 {
  134. reg = <20>;
  135. active-low;
  136. function = LED_FUNCTION_POWER;
  137. color = <LED_COLOR_ID_GREEN>;
  138. };
  139. led_power_red: power_red@21 {
  140. reg = <21>;
  141. active-low;
  142. function = LED_FUNCTION_POWER;
  143. color = <LED_COLOR_ID_RED>;
  144. panic-indicator;
  145. };
  146. };
  147. &pinctrl {
  148. pinctrl_leds: leds {
  149. function = "led";
  150. pins = "gpio1", "gpio8",
  151. "gpio9", "gpio10",
  152. "gpio11", "gpio12",
  153. "gpio14", "gpio15",
  154. "gpio16", "gpio20",
  155. "gpio21";
  156. };
  157. };
  158. &ohci {
  159. status = "okay";
  160. };
  161. &switch0 {
  162. ports {
  163. port@0 {
  164. reg = <0>;
  165. label = "lan2";
  166. phy-handle = <&phy1>;
  167. phy-mode = "mii";
  168. };
  169. port@1 {
  170. reg = <1>;
  171. label = "lan3";
  172. phy-handle = <&phy2>;
  173. phy-mode = "mii";
  174. };
  175. port@2 {
  176. reg = <2>;
  177. label = "lan4";
  178. phy-handle = <&phy3>;
  179. phy-mode = "mii";
  180. };
  181. port@3 {
  182. reg = <3>;
  183. label = "lan1";
  184. phy-handle = <&phy4>;
  185. phy-mode = "gmii";
  186. };
  187. };
  188. };
  189. &uart0 {
  190. status = "okay";
  191. };
  192. &usbh {
  193. status = "okay";
  194. };