qcom-ipq4019-pa2200.dts 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
  2. /* Copyright (c) 2017-2020, Sven Eckelmann <[email protected]>
  3. * Copyright (c) 2018, Marek Lindner <[email protected]>
  4. */
  5. #include "qcom-ipq4019.dtsi"
  6. #include <dt-bindings/gpio/gpio.h>
  7. #include <dt-bindings/input/input.h>
  8. #include <dt-bindings/soc/qcom,tcsr.h>
  9. / {
  10. model = "Plasma Cloud PA2200";
  11. compatible = "plasmacloud,pa2200";
  12. soc {
  13. rng@22000 {
  14. status = "okay";
  15. };
  16. mdio@90000 {
  17. status = "okay";
  18. };
  19. ess-psgmii@98000 {
  20. status = "okay";
  21. };
  22. tcsr@1949000 {
  23. compatible = "qcom,tcsr";
  24. reg = <0x1949000 0x100>;
  25. qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
  26. };
  27. ess_tcsr@1953000 {
  28. compatible = "qcom,tcsr";
  29. reg = <0x1953000 0x1000>;
  30. qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
  31. };
  32. tcsr@1957000 {
  33. compatible = "qcom,tcsr";
  34. reg = <0x1957000 0x100>;
  35. qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
  36. };
  37. crypto@8e3a000 {
  38. status = "okay";
  39. };
  40. watchdog@b017000 {
  41. status = "okay";
  42. };
  43. ess-switch@c000000 {
  44. switch_lan_bmp = <0x10>;
  45. switch_wan_bmp = <0x20>;
  46. status = "okay";
  47. };
  48. edma@c080000 {
  49. status = "okay";
  50. };
  51. };
  52. keys {
  53. compatible = "gpio-keys";
  54. reset {
  55. label = "reset";
  56. gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
  57. linux,code = <KEY_RESTART >;
  58. };
  59. };
  60. aliases {
  61. led-boot = &led_power_orange;
  62. led-failsafe = &led_status_blue;
  63. led-running = &led_power_orange;
  64. led-upgrade = &led_status_blue;
  65. };
  66. leds {
  67. compatible = "gpio-leds";
  68. led_power_orange: power_orange {
  69. label = "orange:power";
  70. gpios = <&tlmm 43 GPIO_ACTIVE_LOW>;
  71. };
  72. 2g_blue {
  73. label = "blue:2g";
  74. gpios = <&tlmm 46 GPIO_ACTIVE_LOW>;
  75. linux,default-trigger = "phy1tpt";
  76. };
  77. 2g_green {
  78. label = "green:5g1";
  79. gpios = <&tlmm 47 GPIO_ACTIVE_LOW>;
  80. linux,default-trigger = "phy0tpt";
  81. };
  82. 5g2_green {
  83. label = "green:5g2";
  84. gpios = <&tlmm 48 GPIO_ACTIVE_LOW>;
  85. linux,default-trigger = "phy2tpt";
  86. };
  87. led_status_blue: status_blue {
  88. label = "blue:status";
  89. gpios = <&tlmm 50 GPIO_ACTIVE_LOW>;
  90. };
  91. };
  92. };
  93. &tlmm {
  94. serial_pins: serial_pinmux {
  95. mux {
  96. pins = "gpio16", "gpio17";
  97. function = "blsp_uart0";
  98. bias-disable;
  99. };
  100. };
  101. spi_0_pins: spi_0_pinmux {
  102. pin {
  103. function = "blsp_spi0";
  104. pins = "gpio13", "gpio14", "gpio15";
  105. drive-strength = <12>;
  106. bias-disable;
  107. };
  108. pin_cs {
  109. function = "gpio";
  110. pins = "gpio12";
  111. drive-strength = <2>;
  112. bias-disable;
  113. output-high;
  114. };
  115. };
  116. };
  117. &blsp_dma {
  118. status = "okay";
  119. };
  120. &blsp1_spi1 {
  121. pinctrl-0 = <&spi_0_pins>;
  122. pinctrl-names = "default";
  123. status = "okay";
  124. cs-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
  125. flash@0 {
  126. #address-cells = <1>;
  127. #size-cells = <1>;
  128. compatible = "jedec,spi-nor";
  129. reg = <0>;
  130. spi-max-frequency = <24000000>;
  131. /* partitions are passed via bootloader */
  132. };
  133. };
  134. &blsp1_uart1 {
  135. pinctrl-0 = <&serial_pins>;
  136. pinctrl-names = "default";
  137. status = "okay";
  138. };
  139. &cryptobam {
  140. status = "okay";
  141. };
  142. &gmac0 {
  143. qcom,phy_mdio_addr = <3>;
  144. qcom,poll_required = <1>;
  145. qcom,forced_speed = <1000>;
  146. qcom,forced_duplex = <1>;
  147. vlan_tag = <1 0x10>;
  148. };
  149. &pcie0 {
  150. status = "okay";
  151. perst-gpio = <&tlmm 38 GPIO_ACTIVE_LOW>;
  152. wake-gpio = <&tlmm 50 GPIO_ACTIVE_LOW>;
  153. bridge@0,0 {
  154. reg = <0x00000000 0 0 0 0>;
  155. #address-cells = <3>;
  156. #size-cells = <2>;
  157. ranges;
  158. wifi2: wifi@1,0 {
  159. compatible = "qcom,ath10k";
  160. status = "okay";
  161. reg = <0x00010000 0 0 0 0>;
  162. qcom,ath10k-calibration-variant = "PlasmaCloud-PA2200";
  163. ieee80211-freq-limit = <5170000 5350000>;
  164. };
  165. };
  166. };
  167. &wifi0 {
  168. status = "okay";
  169. qcom,ath10k-calibration-variant = "PlasmaCloud-PA2200";
  170. };
  171. &wifi1 {
  172. status = "okay";
  173. qcom,ath10k-calibration-variant = "PlasmaCloud-PA2200";
  174. ieee80211-freq-limit = <5470000 5875000>;
  175. };