qcom-ipq4019-gl-b1300.dts 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  1. /* Copyright (c) 2015, The Linux Foundation. All rights reserved.
  2. *
  3. * Permission to use, copy, modify, and/or distribute this software for any
  4. * purpose with or without fee is hereby granted, provided that the above
  5. * copyright notice and this permission notice appear in all copies.
  6. *
  7. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
  8. * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  9. * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
  10. * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  11. * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
  12. * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  13. * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  14. *
  15. */
  16. #include "qcom-ipq4019.dtsi"
  17. #include <dt-bindings/gpio/gpio.h>
  18. #include <dt-bindings/input/input.h>
  19. #include <dt-bindings/soc/qcom,tcsr.h>
  20. / {
  21. model = "GL.iNet GL-B1300";
  22. compatible = "glinet,gl-b1300", "qcom,ipq4019";
  23. memory {
  24. device_type = "memory";
  25. reg = <0x80000000 0x10000000>;
  26. };
  27. reserved-memory {
  28. #address-cells = <0x1>;
  29. #size-cells = <0x1>;
  30. ranges;
  31. apps_bl@87000000 {
  32. reg = <0x87000000 0x400000>;
  33. no-map;
  34. };
  35. sbl@87400000 {
  36. reg = <0x87400000 0x100000>;
  37. no-map;
  38. };
  39. cnss_debug@87500000 {
  40. reg = <0x87500000 0x600000>;
  41. no-map;
  42. };
  43. cpu_context_dump@87b00000 {
  44. reg = <0x87b00000 0x080000>;
  45. no-map;
  46. };
  47. tz_apps@87b80000 {
  48. reg = <0x87b80000 0x280000>;
  49. no-map;
  50. };
  51. smem@87e00000 {
  52. reg = <0x87e00000 0x080000>;
  53. no-map;
  54. };
  55. tz@87e80000 {
  56. reg = <0x87e80000 0x180000>;
  57. no-map;
  58. };
  59. };
  60. soc {
  61. tcsr@194b000 {
  62. /* select hostmode */
  63. compatible = "qcom,tcsr";
  64. reg = <0x194b000 0x100>;
  65. qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
  66. status = "ok";
  67. };
  68. ess_tcsr@1953000 {
  69. compatible = "qcom,tcsr";
  70. reg = <0x1953000 0x1000>;
  71. qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
  72. };
  73. tcsr@1949000 {
  74. compatible = "qcom,tcsr";
  75. reg = <0x1949000 0x100>;
  76. qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
  77. };
  78. tcsr@1957000 {
  79. compatible = "qcom,tcsr";
  80. reg = <0x1957000 0x100>;
  81. qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
  82. };
  83. pinctrl@1000000 {
  84. serial_pins: serial_pinmux {
  85. mux {
  86. pins = "gpio60", "gpio61";
  87. function = "blsp_uart0";
  88. bias-disable;
  89. };
  90. };
  91. spi_0_pins: spi_0_pinmux {
  92. pinmux {
  93. function = "blsp_spi0";
  94. pins = "gpio55", "gpio56", "gpio57";
  95. };
  96. pinmux_cs {
  97. function = "gpio";
  98. pins = "gpio54";
  99. };
  100. pinconf {
  101. pins = "gpio55", "gpio56", "gpio57";
  102. drive-strength = <12>;
  103. bias-disable;
  104. };
  105. pinconf_cs {
  106. pins = "gpio54";
  107. drive-strength = <2>;
  108. bias-disable;
  109. output-high;
  110. };
  111. };
  112. };
  113. blsp_dma: dma@7884000 {
  114. status = "ok";
  115. };
  116. spi_0: spi@78b5000 {
  117. pinctrl-0 = <&spi_0_pins>;
  118. pinctrl-names = "default";
  119. status = "ok";
  120. cs-gpios = <&tlmm 54 0>;
  121. };
  122. serial@78af000 {
  123. pinctrl-0 = <&serial_pins>;
  124. pinctrl-names = "default";
  125. status = "ok";
  126. };
  127. cryptobam: dma@8e04000 {
  128. status = "ok";
  129. };
  130. crypto@8e3a000 {
  131. status = "ok";
  132. };
  133. watchdog@b017000 {
  134. status = "ok";
  135. };
  136. usb3_ss_phy: ssphy@9a000 {
  137. status = "ok";
  138. };
  139. usb3_hs_phy: hsphy@a6000 {
  140. status = "ok";
  141. };
  142. usb3: usb3@8af8800 {
  143. status = "ok";
  144. };
  145. usb2_hs_phy: hsphy@a8000 {
  146. status = "ok";
  147. };
  148. usb2: usb2@60f8800 {
  149. status = "ok";
  150. };
  151. mdio@90000 {
  152. status = "okay";
  153. };
  154. ess-switch@c000000 {
  155. status = "okay";
  156. };
  157. ess-psgmii@98000 {
  158. status = "okay";
  159. };
  160. edma@c080000 {
  161. status = "okay";
  162. };
  163. wifi@a000000 {
  164. status = "okay";
  165. };
  166. wifi@a800000 {
  167. status = "okay";
  168. };
  169. };
  170. gpio-keys {
  171. compatible = "gpio-keys";
  172. wps {
  173. label = "wps";
  174. gpios = <&tlmm 5 GPIO_ACTIVE_LOW>;
  175. linux,code = <KEY_WPS_BUTTON>;
  176. };
  177. reset {
  178. label = "reset";
  179. gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
  180. linux,code = <KEY_RESTART>;
  181. };
  182. };
  183. gpio-leds {
  184. compatible = "gpio-leds";
  185. power {
  186. label = "gl-b1300:green:power";
  187. gpios = <&tlmm 4 GPIO_ACTIVE_HIGH>;
  188. default-state = "on";
  189. };
  190. mesh {
  191. label = "gl-b1300:green:mesh";
  192. gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>;
  193. };
  194. wlan {
  195. label = "gl-b1300:green:wlan";
  196. gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
  197. };
  198. };
  199. };
  200. &spi_0 {
  201. mx25l25635f@0 {
  202. compatible = "mx25l25635f", "jedec,spi-nor";
  203. #address-cells = <1>;
  204. #size-cells = <1>;
  205. reg = <0>;
  206. spi-max-frequency = <24000000>;
  207. SBL1@0 {
  208. label = "SBL1";
  209. reg = <0x0 0x40000>;
  210. read-only;
  211. };
  212. MIBIB@40000 {
  213. label = "MIBIB";
  214. reg = <0x40000 0x20000>;
  215. read-only;
  216. };
  217. QSEE@60000 {
  218. label = "QSEE";
  219. reg = <0x60000 0x60000>;
  220. read-only;
  221. };
  222. CDT@c0000 {
  223. label = "CDT";
  224. reg = <0xc0000 0x10000>;
  225. read-only;
  226. };
  227. DDRPARAMS@d0000 {
  228. label = "DDRPARAMS";
  229. reg = <0xd0000 0x10000>;
  230. read-only;
  231. };
  232. APPSBLENV@e0000 {
  233. label = "APPSBLENV";
  234. reg = <0xe0000 0x10000>;
  235. read-only;
  236. };
  237. APPSBL@f0000 {
  238. label = "APPSBL";
  239. reg = <0xf0000 0x80000>;
  240. read-only;
  241. };
  242. ART@170000 {
  243. label = "ART";
  244. reg = <0x170000 0x10000>;
  245. read-only;
  246. };
  247. kernel@180000 {
  248. label = "kernel";
  249. reg = <0x180000 0x400000>;
  250. };
  251. rootfs@580000 {
  252. label = "rootfs";
  253. reg = <0x580000 0x1a80000>;
  254. };
  255. firmware@180000 {
  256. label = "firmware";
  257. reg = <0x180000 0x1e80000>;
  258. };
  259. };
  260. };
  261. &gmac0 {
  262. qcom,phy_mdio_addr = <4>;
  263. qcom,poll_required = <1>;
  264. qcom,forced_speed = <1000>;
  265. qcom,forced_duplex = <1>;
  266. vlan_tag = <2 0x20>;
  267. };
  268. &gmac1 {
  269. qcom,phy_mdio_addr = <3>;
  270. qcom,poll_required = <1>;
  271. qcom,forced_speed = <1000>;
  272. qcom,forced_duplex = <1>;
  273. vlan_tag = <1 0x10>;
  274. };