qcom-ipq4018-emr3500.dts 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. #include "qcom-ipq4019.dtsi"
  3. #include <dt-bindings/gpio/gpio.h>
  4. #include <dt-bindings/input/input.h>
  5. #include <dt-bindings/leds/common.h>
  6. #include <dt-bindings/soc/qcom,tcsr.h>
  7. / {
  8. model = "EnGenius EMR3500";
  9. compatible = "engenius,emr3500";
  10. soc {
  11. rng@22000 {
  12. status = "okay";
  13. };
  14. mdio@90000 {
  15. status = "okay";
  16. };
  17. tcsr@1949000 {
  18. compatible = "qcom,tcsr";
  19. reg = <0x1949000 0x100>;
  20. qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
  21. };
  22. ess_tcsr@1953000 {
  23. compatible = "qcom,tcsr";
  24. reg = <0x1953000 0x1000>;
  25. qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
  26. };
  27. tcsr@1957000 {
  28. compatible = "qcom,tcsr";
  29. reg = <0x1957000 0x100>;
  30. qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
  31. };
  32. usb2_hs_phy: hsphy@a8000 {
  33. status = "okay";
  34. };
  35. crypto@8e3a000 {
  36. status = "okay";
  37. };
  38. watchdog@b017000 {
  39. status = "okay";
  40. };
  41. };
  42. keys {
  43. compatible = "gpio-keys";
  44. reset {
  45. label = "reset";
  46. gpios = <&tlmm 59 GPIO_ACTIVE_LOW>;
  47. linux,code = <KEY_RESTART>;
  48. };
  49. };
  50. aliases {
  51. led-boot = &power;
  52. led-failsafe = &power;
  53. led-running = &power;
  54. led-upgrade = &power;
  55. };
  56. leds {
  57. compatible = "gpio-leds";
  58. power: white {
  59. function = LED_FUNCTION_POWER;
  60. color = <LED_COLOR_ID_WHITE>;
  61. gpios = <&tlmm 4 GPIO_ACTIVE_HIGH>;
  62. };
  63. blue {
  64. label = "blue";
  65. gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
  66. };
  67. red {
  68. label = "red";
  69. gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
  70. };
  71. orange {
  72. label = "orange";
  73. gpios = <&tlmm 1 GPIO_ACTIVE_HIGH>;
  74. };
  75. };
  76. };
  77. &tlmm {
  78. serial_pins: serial_pinmux {
  79. mux {
  80. pins = "gpio60", "gpio61";
  81. function = "blsp_uart0";
  82. bias-disable;
  83. };
  84. };
  85. spi_0_pins: spi_0_pinmux {
  86. pin {
  87. function = "blsp_spi0";
  88. pins = "gpio54", "gpio55", "gpio56", "gpio57";
  89. drive-strength = <12>;
  90. bias-disable;
  91. };
  92. pin_cs {
  93. function = "gpio";
  94. pins = "gpio54";
  95. drive-strength = <2>;
  96. bias-disable;
  97. output-high;
  98. };
  99. };
  100. };
  101. &blsp_dma {
  102. status = "okay";
  103. };
  104. &blsp1_spi1 {
  105. pinctrl-0 = <&spi_0_pins>;
  106. pinctrl-names = "default";
  107. status = "okay";
  108. cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>;
  109. m25p80@0 {
  110. compatible = "jedec,spi-nor";
  111. reg = <0>;
  112. spi-max-frequency = <24000000>;
  113. partitions {
  114. compatible = "fixed-partitions";
  115. #address-cells = <1>;
  116. #size-cells = <1>;
  117. partition@0 {
  118. label = "0:SBL1";
  119. reg = <0x00000000 0x00040000>;
  120. read-only;
  121. };
  122. partition@40000 {
  123. label = "0:MIBIB";
  124. reg = <0x00040000 0x00020000>;
  125. read-only;
  126. };
  127. partition@60000 {
  128. label = "0:QSEE";
  129. reg = <0x00060000 0x00060000>;
  130. read-only;
  131. };
  132. partition@c0000 {
  133. label = "0:CDT";
  134. reg = <0x000c0000 0x00010000>;
  135. read-only;
  136. };
  137. partition@d0000 {
  138. label = "0:DDRPARAMS";
  139. reg = <0x000d0000 0x00010000>;
  140. read-only;
  141. };
  142. partition@e0000 {
  143. label = "0:APPSBLENV";
  144. reg = <0x000e0000 0x00010000>;
  145. read-only;
  146. };
  147. partition@f0000 {
  148. label = "0:APPSBL";
  149. reg = <0x000f0000 0x00080000>;
  150. read-only;
  151. };
  152. partition@170000 {
  153. label = "0:ART";
  154. reg = <0x00170000 0x00010000>;
  155. read-only;
  156. };
  157. partition@180000 {
  158. label = "userconfig";
  159. reg = <0x00180000 0x00080000>;
  160. read-only;
  161. };
  162. partition@200000 {
  163. compatible = "denx,fit";
  164. label = "firmware";
  165. reg = <0x200000 0x1e00000>;
  166. };
  167. };
  168. };
  169. };
  170. &blsp1_uart1 {
  171. pinctrl-0 = <&serial_pins>;
  172. pinctrl-names = "default";
  173. status = "okay";
  174. };
  175. &cryptobam {
  176. status = "okay";
  177. };
  178. &usb2_hs_phy {
  179. status = "okay";
  180. };
  181. &wifi0 {
  182. status = "okay";
  183. qcom,ath10k-calibration-variant = "EnGenius-EMR3500";
  184. };
  185. &wifi1 {
  186. status = "okay";
  187. qcom,ath10k-calibration-variant = "EnGenius-EMR3500";
  188. };