ipq8072-sax1v1k.dts 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
  2. /dts-v1/;
  3. #include "ipq8074.dtsi"
  4. #include "ipq8074-hk-cpu.dtsi"
  5. #include "ipq8074-ess.dtsi"
  6. #include <dt-bindings/gpio/gpio.h>
  7. #include <dt-bindings/input/input.h>
  8. #include <dt-bindings/leds/common.h>
  9. / {
  10. model = "Spectrum SAX1V1K";
  11. compatible = "spectrum,sax1v1k", "qcom,ipq8074";
  12. aliases {
  13. led-boot = &led_system_red;
  14. led-failsafe = &led_system_red;
  15. led-running = &led_system_blue;
  16. led-upgrade = &led_system_red;
  17. serial0 = &blsp1_uart5;
  18. /* Aliases as required by u-boot to patch MAC addresses */
  19. ethernet0 = &dp6_syn;
  20. ethernet1 = &dp4;
  21. ethernet2 = &dp3;
  22. ethernet3 = &dp2;
  23. label-mac-device = &dp6_syn;
  24. };
  25. chosen {
  26. stdout-path = "serial0:115200n8";
  27. };
  28. keys {
  29. compatible = "gpio-keys";
  30. reset {
  31. label = "reset";
  32. gpios = <&tlmm 34 GPIO_ACTIVE_LOW>;
  33. linux,code = <KEY_RESTART>;
  34. };
  35. wps {
  36. label = "wps";
  37. gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
  38. linux,code = <KEY_WPS_BUTTON>;
  39. };
  40. };
  41. leds {
  42. compatible = "gpio-leds";
  43. led_system_blue: system-blue {
  44. gpios = <&tlmm 26 GPIO_ACTIVE_HIGH>;
  45. color = <LED_COLOR_ID_BLUE>;
  46. function = LED_FUNCTION_STATUS;
  47. };
  48. led_system_red: system-red {
  49. gpios = <&tlmm 25 GPIO_ACTIVE_HIGH>;
  50. color = <LED_COLOR_ID_RED>;
  51. function = LED_FUNCTION_STATUS;
  52. };
  53. };
  54. };
  55. &tlmm {
  56. mdio_pins: mdio-pins {
  57. mdc {
  58. pins = "gpio68";
  59. function = "mdc";
  60. drive-strength = <8>;
  61. bias-pull-up;
  62. };
  63. mdio {
  64. pins = "gpio69";
  65. function = "mdio";
  66. drive-strength = <8>;
  67. bias-pull-up;
  68. };
  69. };
  70. };
  71. &blsp1_uart5 {
  72. status = "okay";
  73. };
  74. &prng {
  75. status = "okay";
  76. };
  77. &cryptobam {
  78. status = "okay";
  79. };
  80. &crypto {
  81. status = "okay";
  82. };
  83. &qpic_bam {
  84. status = "okay";
  85. };
  86. &mdio {
  87. pinctrl-0 = <&mdio_pins>;
  88. pinctrl-names = "default";
  89. reset-gpios = <&tlmm 37 GPIO_ACTIVE_LOW>;
  90. status = "okay";
  91. ethernet-phy-package@0 {
  92. #address-cells = <1>;
  93. #size-cells = <0>;
  94. compatible = "qcom,qca8075-package";
  95. reg = <0>;
  96. qcom,package-mode = "qsgmii";
  97. qca8075_1: ethernet-phy@1 {
  98. compatible = "ethernet-phy-ieee802.3-c22";
  99. reg = <1>;
  100. };
  101. qca8075_2: ethernet-phy@2 {
  102. compatible = "ethernet-phy-ieee802.3-c22";
  103. reg = <2>;
  104. };
  105. qca8075_3: ethernet-phy@3 {
  106. compatible = "ethernet-phy-ieee802.3-c22";
  107. reg = <3>;
  108. };
  109. };
  110. qca8081: ethernet-phy@28 {
  111. compatible = "ethernet-phy-id004d.d101";
  112. reg = <28>;
  113. reset-gpios = <&tlmm 44 GPIO_ACTIVE_LOW>;
  114. reset-deassert-us = <10000>;
  115. };
  116. };
  117. &sdhc_1 {
  118. /* Following same rule as QNAP 301W
  119. * the emmc has a problem with the hs400 > hs200 speed switch.
  120. * Therefore remove the mmc-hs400-1_8v property
  121. */
  122. /delete-property/ mmc-hs400-1_8v;
  123. mmc-hs200-1_8v;
  124. mmc-ddr-1_8v;
  125. vqmmc-supply = <&l11>;
  126. status = "okay";
  127. };
  128. &switch {
  129. switch_lan_bmp = <(ESS_PORT2 | ESS_PORT3 | ESS_PORT4)>; /* lan port bitmap */
  130. switch_wan_bmp = <ESS_PORT6>; /* wan port bitmap */
  131. switch_mac_mode = <MAC_MODE_QSGMII>; /* mac mode for uniphy instance0*/
  132. switch_mac_mode2 = <MAC_MODE_SGMII_PLUS>; /* mac mode for uniphy instance2*/
  133. status = "okay";
  134. qcom,port_phyinfo {
  135. port@2 {
  136. port_id = <2>;
  137. phy_address = <1>;
  138. };
  139. port@3 {
  140. port_id = <3>;
  141. phy_address = <2>;
  142. };
  143. port@4 {
  144. port_id = <4>;
  145. phy_address = <3>;
  146. };
  147. port@6 {
  148. port_id = <6>;
  149. phy_address = <28>;
  150. port_mac_sel = "QGMAC_PORT";
  151. };
  152. };
  153. };
  154. &edma {
  155. status = "okay";
  156. };
  157. &dp2 {
  158. phy-mode = "qsgmii";
  159. phy-handle = <&qca8075_1>;
  160. label = "lan3";
  161. status = "okay";
  162. };
  163. &dp3 {
  164. phy-mode = "qsgmii";
  165. phy-handle = <&qca8075_2>;
  166. label = "lan2";
  167. status = "okay";
  168. };
  169. &dp4 {
  170. phy-mode = "qsgmii";
  171. phy-handle = <&qca8075_3>;
  172. label = "lan1";
  173. status = "okay";
  174. };
  175. &dp6_syn {
  176. phy-handle = <&qca8081>;
  177. label = "wan";
  178. status = "okay";
  179. };
  180. &wifi {
  181. qcom,ath11k-calibration-variant = "Spectrum-SAX1V1K";
  182. status = "okay";
  183. };