msm8998-mtp.dts 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452
  1. // SPDX-License-Identifier: GPL-2.0
  2. /* Copyright (c) 2016, The Linux Foundation. All rights reserved. */
  3. /dts-v1/;
  4. #include "msm8998.dtsi"
  5. #include "pm8005.dtsi"
  6. #include "pm8998.dtsi"
  7. #include "pmi8998.dtsi"
  8. / {
  9. model = "Qualcomm Technologies, Inc. MSM8998 v1 MTP";
  10. compatible = "qcom,msm8998-mtp", "qcom,msm8998";
  11. qcom,board-id = <8 0>;
  12. aliases {
  13. serial0 = &blsp2_uart1;
  14. serial1 = &blsp1_uart3;
  15. };
  16. chosen {
  17. stdout-path = "serial0:115200n8";
  18. };
  19. vph_pwr: vph-pwr-regulator {
  20. compatible = "regulator-fixed";
  21. regulator-name = "vph_pwr";
  22. regulator-always-on;
  23. regulator-boot-on;
  24. };
  25. };
  26. &blsp1_uart3 {
  27. status = "okay";
  28. bluetooth {
  29. compatible = "qcom,wcn3990-bt";
  30. vddio-supply = <&vreg_s4a_1p8>;
  31. vddxo-supply = <&vreg_l7a_1p8>;
  32. vddrf-supply = <&vreg_l17a_1p3>;
  33. vddch0-supply = <&vreg_l25a_3p3>;
  34. max-speed = <3200000>;
  35. };
  36. };
  37. &blsp1_uart3_on {
  38. rx {
  39. /delete-property/ bias-disable;
  40. /*
  41. * Configure a pull-up on 45 (RX). This is needed to
  42. * avoid garbage data when the TX pin of the Bluetooth
  43. * module is in tri-state (module powered off or not
  44. * driving the signal yet).
  45. */
  46. bias-pull-up;
  47. };
  48. cts {
  49. /delete-property/ bias-disable;
  50. /*
  51. * Configure a pull-down on 47 (CTS) to match the pull
  52. * of the Bluetooth module.
  53. */
  54. bias-pull-down;
  55. };
  56. };
  57. &blsp2_uart1 {
  58. status = "okay";
  59. };
  60. &etf {
  61. status = "okay";
  62. };
  63. &etm1 {
  64. status = "okay";
  65. };
  66. &etm2 {
  67. status = "okay";
  68. };
  69. &etm3 {
  70. status = "okay";
  71. };
  72. &etm4 {
  73. status = "okay";
  74. };
  75. &etm5 {
  76. status = "okay";
  77. };
  78. &etm6 {
  79. status = "okay";
  80. };
  81. &etm7 {
  82. status = "okay";
  83. };
  84. &etm8 {
  85. status = "okay";
  86. };
  87. &etr {
  88. status = "okay";
  89. };
  90. &funnel1 {
  91. status = "okay";
  92. };
  93. &funnel2 {
  94. status = "okay";
  95. };
  96. &funnel3 {
  97. status = "okay";
  98. };
  99. &funnel4 {
  100. // FIXME: Figure out why clock late_initcall crashes the board with
  101. // this enabled.
  102. // status = "okay";
  103. };
  104. &funnel5 {
  105. // FIXME: Figure out why clock late_initcall crashes the board with
  106. // this enabled.
  107. // status = "okay";
  108. };
  109. &pcie0 {
  110. status = "okay";
  111. };
  112. &pcie_phy {
  113. status = "okay";
  114. };
  115. &pm8005_regulators {
  116. vdd_s1-supply = <&vph_pwr>;
  117. pm8005_s1: s1 { /* VDD_GFX supply */
  118. regulator-min-microvolt = <524000>;
  119. regulator-max-microvolt = <1100000>;
  120. regulator-enable-ramp-delay = <500>;
  121. /* Hack until we rig up the gpu consumer */
  122. regulator-always-on;
  123. };
  124. };
  125. &qusb2phy {
  126. status = "okay";
  127. vdda-pll-supply = <&vreg_l12a_1p8>;
  128. vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
  129. };
  130. &replicator1 {
  131. status = "okay";
  132. };
  133. &rpm_requests {
  134. pm8998-regulators {
  135. compatible = "qcom,rpm-pm8998-regulators";
  136. vdd_s1-supply = <&vph_pwr>;
  137. vdd_s2-supply = <&vph_pwr>;
  138. vdd_s3-supply = <&vph_pwr>;
  139. vdd_s4-supply = <&vph_pwr>;
  140. vdd_s5-supply = <&vph_pwr>;
  141. vdd_s6-supply = <&vph_pwr>;
  142. vdd_s7-supply = <&vph_pwr>;
  143. vdd_s8-supply = <&vph_pwr>;
  144. vdd_s9-supply = <&vph_pwr>;
  145. vdd_s10-supply = <&vph_pwr>;
  146. vdd_s11-supply = <&vph_pwr>;
  147. vdd_s12-supply = <&vph_pwr>;
  148. vdd_s13-supply = <&vph_pwr>;
  149. vdd_l1_l27-supply = <&vreg_s7a_1p025>;
  150. vdd_l2_l8_l17-supply = <&vreg_s3a_1p35>;
  151. vdd_l3_l11-supply = <&vreg_s7a_1p025>;
  152. vdd_l4_l5-supply = <&vreg_s7a_1p025>;
  153. vdd_l6-supply = <&vreg_s5a_2p04>;
  154. vdd_l7_l12_l14_l15-supply = <&vreg_s5a_2p04>;
  155. vdd_l9-supply = <&vreg_bob>;
  156. vdd_l10_l23_l25-supply = <&vreg_bob>;
  157. vdd_l13_l19_l21-supply = <&vreg_bob>;
  158. vdd_l16_l28-supply = <&vreg_bob>;
  159. vdd_l18_l22-supply = <&vreg_bob>;
  160. vdd_l20_l24-supply = <&vreg_bob>;
  161. vdd_l26-supply = <&vreg_s3a_1p35>;
  162. vdd_lvs1_lvs2-supply = <&vreg_s4a_1p8>;
  163. vreg_s3a_1p35: s3 {
  164. regulator-min-microvolt = <1352000>;
  165. regulator-max-microvolt = <1352000>;
  166. };
  167. vreg_s4a_1p8: s4 {
  168. regulator-min-microvolt = <1800000>;
  169. regulator-max-microvolt = <1800000>;
  170. regulator-allow-set-load;
  171. };
  172. vreg_s5a_2p04: s5 {
  173. regulator-min-microvolt = <1904000>;
  174. regulator-max-microvolt = <2040000>;
  175. };
  176. vreg_s7a_1p025: s7 {
  177. regulator-min-microvolt = <900000>;
  178. regulator-max-microvolt = <1028000>;
  179. };
  180. vreg_l1a_0p875: l1 {
  181. regulator-min-microvolt = <880000>;
  182. regulator-max-microvolt = <880000>;
  183. };
  184. vreg_l2a_1p2: l2 {
  185. regulator-min-microvolt = <1200000>;
  186. regulator-max-microvolt = <1200000>;
  187. };
  188. vreg_l3a_1p0: l3 {
  189. regulator-min-microvolt = <1000000>;
  190. regulator-max-microvolt = <1000000>;
  191. };
  192. vreg_l5a_0p8: l5 {
  193. regulator-min-microvolt = <800000>;
  194. regulator-max-microvolt = <800000>;
  195. };
  196. vreg_l6a_1p8: l6 {
  197. regulator-min-microvolt = <1808000>;
  198. regulator-max-microvolt = <1808000>;
  199. };
  200. vreg_l7a_1p8: l7 {
  201. regulator-min-microvolt = <1800000>;
  202. regulator-max-microvolt = <1800000>;
  203. };
  204. vreg_l8a_1p2: l8 {
  205. regulator-min-microvolt = <1200000>;
  206. regulator-max-microvolt = <1200000>;
  207. };
  208. vreg_l9a_1p8: l9 {
  209. regulator-min-microvolt = <1808000>;
  210. regulator-max-microvolt = <2960000>;
  211. };
  212. vreg_l10a_1p8: l10 {
  213. regulator-min-microvolt = <1808000>;
  214. regulator-max-microvolt = <2960000>;
  215. };
  216. vreg_l11a_1p0: l11 {
  217. regulator-min-microvolt = <1000000>;
  218. regulator-max-microvolt = <1000000>;
  219. };
  220. vreg_l12a_1p8: l12 {
  221. regulator-min-microvolt = <1800000>;
  222. regulator-max-microvolt = <1800000>;
  223. };
  224. vreg_l13a_2p95: l13 {
  225. regulator-min-microvolt = <1808000>;
  226. regulator-max-microvolt = <2960000>;
  227. };
  228. vreg_l14a_1p88: l14 {
  229. regulator-min-microvolt = <1880000>;
  230. regulator-max-microvolt = <1880000>;
  231. };
  232. vreg_l15a_1p8: l15 {
  233. regulator-min-microvolt = <1800000>;
  234. regulator-max-microvolt = <1800000>;
  235. };
  236. vreg_l16a_2p7: l16 {
  237. regulator-min-microvolt = <2704000>;
  238. regulator-max-microvolt = <2704000>;
  239. };
  240. vreg_l17a_1p3: l17 {
  241. regulator-min-microvolt = <1304000>;
  242. regulator-max-microvolt = <1304000>;
  243. };
  244. vreg_l18a_2p7: l18 {
  245. regulator-min-microvolt = <2704000>;
  246. regulator-max-microvolt = <2704000>;
  247. };
  248. vreg_l19a_3p0: l19 {
  249. regulator-min-microvolt = <3008000>;
  250. regulator-max-microvolt = <3008000>;
  251. };
  252. vreg_l20a_2p95: l20 {
  253. regulator-min-microvolt = <2960000>;
  254. regulator-max-microvolt = <2960000>;
  255. regulator-allow-set-load;
  256. };
  257. vreg_l21a_2p95: l21 {
  258. regulator-min-microvolt = <2960000>;
  259. regulator-max-microvolt = <2960000>;
  260. regulator-system-load = <800000>;
  261. regulator-allow-set-load;
  262. };
  263. vreg_l22a_2p85: l22 {
  264. regulator-min-microvolt = <2864000>;
  265. regulator-max-microvolt = <2864000>;
  266. };
  267. vreg_l23a_3p3: l23 {
  268. regulator-min-microvolt = <3312000>;
  269. regulator-max-microvolt = <3312000>;
  270. };
  271. vreg_l24a_3p075: l24 {
  272. regulator-min-microvolt = <3088000>;
  273. regulator-max-microvolt = <3088000>;
  274. };
  275. vreg_l25a_3p3: l25 {
  276. regulator-min-microvolt = <3104000>;
  277. regulator-max-microvolt = <3312000>;
  278. };
  279. vreg_l26a_1p2: l26 {
  280. regulator-min-microvolt = <1200000>;
  281. regulator-max-microvolt = <1200000>;
  282. regulator-allow-set-load;
  283. };
  284. vreg_l28_3p0: l28 {
  285. regulator-min-microvolt = <3008000>;
  286. regulator-max-microvolt = <3008000>;
  287. };
  288. vreg_lvs1a_1p8: lvs1 {
  289. regulator-min-microvolt = <1800000>;
  290. regulator-max-microvolt = <1800000>;
  291. };
  292. vreg_lvs2a_1p8: lvs2 {
  293. regulator-min-microvolt = <1800000>;
  294. regulator-max-microvolt = <1800000>;
  295. };
  296. };
  297. pmi8998-regulators {
  298. compatible = "qcom,rpm-pmi8998-regulators";
  299. vdd_bob-supply = <&vph_pwr>;
  300. vreg_bob: bob {
  301. regulator-min-microvolt = <3312000>;
  302. regulator-max-microvolt = <3600000>;
  303. };
  304. };
  305. };
  306. &remoteproc_adsp {
  307. status = "okay";
  308. };
  309. &remoteproc_mss {
  310. status = "okay";
  311. };
  312. &remoteproc_slpi {
  313. status = "okay";
  314. };
  315. &tlmm {
  316. gpio-reserved-ranges = <0 4>, <81 4>;
  317. };
  318. &sdhc2 {
  319. status = "okay";
  320. cd-gpios = <&tlmm 95 GPIO_ACTIVE_LOW>;
  321. vmmc-supply = <&vreg_l21a_2p95>;
  322. vqmmc-supply = <&vreg_l13a_2p95>;
  323. pinctrl-names = "default", "sleep";
  324. pinctrl-0 = <&sdc2_on &sdc2_cd>;
  325. pinctrl-1 = <&sdc2_off &sdc2_cd>;
  326. };
  327. &stm {
  328. status = "okay";
  329. };
  330. &ufshc {
  331. status = "okay";
  332. vcc-supply = <&vreg_l20a_2p95>;
  333. vccq-supply = <&vreg_l26a_1p2>;
  334. vccq2-supply = <&vreg_s4a_1p8>;
  335. vcc-max-microamp = <750000>;
  336. vccq-max-microamp = <560000>;
  337. vccq2-max-microamp = <750000>;
  338. };
  339. &ufsphy {
  340. status = "okay";
  341. vdda-phy-supply = <&vreg_l1a_0p875>;
  342. vdda-pll-supply = <&vreg_l2a_1p2>;
  343. vddp-ref-clk-supply = <&vreg_l26a_1p2>;
  344. };
  345. &usb3 {
  346. status = "okay";
  347. };
  348. &usb3_dwc3 {
  349. dr_mode = "host"; /* Force to host until we have Type-C hooked up */
  350. };
  351. &usb3phy {
  352. status = "okay";
  353. vdda-phy-supply = <&vreg_l1a_0p875>;
  354. vdda-pll-supply = <&vreg_l2a_1p2>;
  355. };
  356. &wifi {
  357. status = "okay";
  358. vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
  359. vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
  360. vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
  361. vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
  362. };