qcom-ipq4019-fritzrepeater-3000.dts 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269
  1. // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
  2. #include "qcom-ipq4019.dtsi"
  3. #include <dt-bindings/gpio/gpio.h>
  4. #include <dt-bindings/input/input.h>
  5. #include <dt-bindings/soc/qcom,tcsr.h>
  6. / {
  7. model = "AVM FRITZ!Repeater 3000";
  8. compatible = "avm,fritzrepeater-3000";
  9. aliases {
  10. led-boot = &power_led;
  11. led-failsafe = &power_led;
  12. led-running = &power_led;
  13. led-upgrade = &power_led;
  14. };
  15. soc {
  16. rng@22000 {
  17. status = "okay";
  18. };
  19. mdio@90000 {
  20. status = "okay";
  21. };
  22. ess-psgmii@98000 {
  23. status = "okay";
  24. };
  25. tcsr@1949000 {
  26. compatible = "qcom,tcsr";
  27. reg = <0x1949000 0x100>;
  28. qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
  29. };
  30. ess_tcsr@1953000 {
  31. compatible = "qcom,tcsr";
  32. reg = <0x1953000 0x1000>;
  33. qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
  34. };
  35. tcsr@1957000 {
  36. compatible = "qcom,tcsr";
  37. reg = <0x1957000 0x100>;
  38. qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
  39. };
  40. crypto@8e3a000 {
  41. status = "okay";
  42. };
  43. watchdog@b017000 {
  44. status = "okay";
  45. };
  46. ess-switch@c000000 {
  47. status = "okay";
  48. switch_lan_bmp = <0x30>;
  49. switch_wan_bmp = <0x02>;
  50. };
  51. edma@c080000 {
  52. status = "okay";
  53. qcom,num_gmac = <1>;
  54. };
  55. };
  56. key {
  57. compatible = "gpio-keys";
  58. connect {
  59. label = "Connect";
  60. gpios = <&tlmm 10 GPIO_ACTIVE_LOW>;
  61. linux,code = <KEY_WPS_BUTTON>;
  62. };
  63. };
  64. leds {
  65. compatible = "gpio-leds";
  66. connect_red {
  67. label = "red:connect";
  68. gpios = <&tlmm 30 GPIO_ACTIVE_LOW>;
  69. };
  70. connect_green {
  71. label = "green:connect";
  72. gpios = <&tlmm 31 GPIO_ACTIVE_LOW>;
  73. };
  74. connect_blue {
  75. label = "blue:connect";
  76. gpios = <&tlmm 32 GPIO_ACTIVE_LOW>;
  77. };
  78. power_led: power {
  79. label = "green:power";
  80. gpios = <&tlmm 33 GPIO_ACTIVE_LOW>;
  81. };
  82. };
  83. };
  84. &tlmm {
  85. serial_0_pins: serial_pinmux {
  86. mux {
  87. pins = "gpio16", "gpio17";
  88. function = "blsp_uart0";
  89. bias-disable;
  90. };
  91. };
  92. nand_pins: nand_pins {
  93. pullups {
  94. pins = "gpio53", "gpio58", "gpio59";
  95. function = "qpic";
  96. bias-pull-up;
  97. };
  98. pulldowns {
  99. pins = "gpio54", "gpio55", "gpio56",
  100. "gpio57", "gpio60", "gpio61",
  101. "gpio62", "gpio63", "gpio64",
  102. "gpio65", "gpio66", "gpio67",
  103. "gpio68", "gpio69";
  104. function = "qpic";
  105. bias-pull-down;
  106. };
  107. };
  108. };
  109. &nand {
  110. pinctrl-0 = <&nand_pins>;
  111. pinctrl-names = "default";
  112. status = "okay";
  113. nand@0 {
  114. partitions {
  115. compatible = "fixed-partitions";
  116. #address-cells = <1>;
  117. #size-cells = <1>;
  118. partition@0 {
  119. label = "SBL1";
  120. reg = <0x000000 0x80000>;
  121. read-only;
  122. };
  123. partition@80000 {
  124. label = "MIBIB";
  125. reg = <0x080000 0x80000>;
  126. read-only;
  127. };
  128. partition@100000 {
  129. label = "QSEE";
  130. reg = <0x100000 0x80000>;
  131. read-only;
  132. };
  133. partition@180000 {
  134. label = "CDT";
  135. reg = <0x180000 0x40000>;
  136. read-only;
  137. };
  138. partition@1c0000 {
  139. label = "QSEE_B";
  140. reg = <0x1c0000 0x80000>;
  141. read-only;
  142. };
  143. partition@240000 {
  144. label = "urlader0";
  145. reg = <0x240000 0x40000>;
  146. read-only;
  147. };
  148. partition@280000 {
  149. label = "urlader1";
  150. reg = <0x280000 0x40000>;
  151. read-only;
  152. };
  153. partition@2c0000 {
  154. label = "nand-tffs";
  155. reg = <0x2c0000 0x840000>;
  156. read-only;
  157. };
  158. partition@b00000 {
  159. /* 'kernel1' in AVM firmware */
  160. label = "uboot0";
  161. reg = <0xb00000 0x400000>;
  162. };
  163. partition@f00000 {
  164. /* 'kernel2' in AVM firmware */
  165. label = "uboot1";
  166. reg = <0xf00000 0x400000>;
  167. };
  168. partition@1300000 {
  169. label = "ubi";
  170. reg = <0x1300000 0x6d00000>;
  171. };
  172. };
  173. };
  174. };
  175. &gmac0 {
  176. vlan_tag = <1 0x30>;
  177. };
  178. &cryptobam {
  179. status = "okay";
  180. };
  181. &blsp_dma {
  182. status = "okay";
  183. };
  184. &blsp1_uart1 {
  185. pinctrl-0 = <&serial_0_pins>;
  186. pinctrl-names = "default";
  187. status = "okay";
  188. };
  189. &qpic_bam {
  190. status = "okay";
  191. };
  192. &wifi0 {
  193. status = "okay";
  194. /* BDFs are identical for the FRITZ!Box 7530 and the FRITZ!Repeater 3000 */
  195. qcom,ath10k-calibration-variant = "AVM-FRITZRepeater-3000";
  196. };
  197. &wifi1 {
  198. status = "okay";
  199. ieee80211-freq-limit = <5170000 5350000>;
  200. /* BDFs are identical for the FRITZ!Box 7530 and the FRITZ!Repeater 3000 */
  201. qcom,ath10k-calibration-variant = "AVM-FRITZRepeater-3000";
  202. };
  203. &pcie0 {
  204. status = "okay";
  205. perst-gpio = <&tlmm 35 GPIO_ACTIVE_LOW>;
  206. wake-gpio = <&tlmm 50 GPIO_ACTIVE_LOW>;
  207. bridge@0,0 {
  208. reg = <0x00000000 0 0 0 0>;
  209. #address-cells = <3>;
  210. #size-cells = <2>;
  211. ranges;
  212. wifi@1,0 {
  213. /* QCA9984 */
  214. compatible = "qcom,ath10k";
  215. status = "okay";
  216. reg = <0x00010000 0 0 0 0>;
  217. ieee80211-freq-limit = <5470000 5875000>;
  218. /* Uses the reference BDF */
  219. };
  220. };
  221. };