sdm845-mtp.dts 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * SDM845 MTP board device tree source
  4. *
  5. * Copyright (c) 2018, The Linux Foundation. All rights reserved.
  6. */
  7. /dts-v1/;
  8. #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
  9. #include "sdm845.dtsi"
  10. / {
  11. model = "Qualcomm Technologies, Inc. SDM845 MTP";
  12. compatible = "qcom,sdm845-mtp";
  13. aliases {
  14. serial0 = &uart9;
  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-min-microvolt = <3700000>;
  23. regulator-max-microvolt = <3700000>;
  24. };
  25. /*
  26. * Apparently RPMh does not provide support for PM8998 S4 because it
  27. * is always-on; model it as a fixed regulator.
  28. */
  29. vreg_s4a_1p8: pm8998-smps4 {
  30. compatible = "regulator-fixed";
  31. regulator-name = "vreg_s4a_1p8";
  32. regulator-min-microvolt = <1800000>;
  33. regulator-max-microvolt = <1800000>;
  34. regulator-always-on;
  35. regulator-boot-on;
  36. vin-supply = <&vph_pwr>;
  37. };
  38. };
  39. &apps_rsc {
  40. pm8998-rpmh-regulators {
  41. compatible = "qcom,pm8998-rpmh-regulators";
  42. qcom,pmic-id = "a";
  43. vdd-s1-supply = <&vph_pwr>;
  44. vdd-s2-supply = <&vph_pwr>;
  45. vdd-s3-supply = <&vph_pwr>;
  46. vdd-s4-supply = <&vph_pwr>;
  47. vdd-s5-supply = <&vph_pwr>;
  48. vdd-s6-supply = <&vph_pwr>;
  49. vdd-s7-supply = <&vph_pwr>;
  50. vdd-s8-supply = <&vph_pwr>;
  51. vdd-s9-supply = <&vph_pwr>;
  52. vdd-s10-supply = <&vph_pwr>;
  53. vdd-s11-supply = <&vph_pwr>;
  54. vdd-s12-supply = <&vph_pwr>;
  55. vdd-s13-supply = <&vph_pwr>;
  56. vdd-l1-l27-supply = <&vreg_s7a_1p025>;
  57. vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
  58. vdd-l3-l11-supply = <&vreg_s7a_1p025>;
  59. vdd-l4-l5-supply = <&vreg_s7a_1p025>;
  60. vdd-l6-supply = <&vph_pwr>;
  61. vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
  62. vdd-l9-supply = <&vreg_bob>;
  63. vdd-l10-l23-l25-supply = <&vreg_bob>;
  64. vdd-l13-l19-l21-supply = <&vreg_bob>;
  65. vdd-l16-l28-supply = <&vreg_bob>;
  66. vdd-l18-l22-supply = <&vreg_bob>;
  67. vdd-l20-l24-supply = <&vreg_bob>;
  68. vdd-l26-supply = <&vreg_s3a_1p35>;
  69. vin-lvs-1-2-supply = <&vreg_s4a_1p8>;
  70. vreg_s2a_1p125: smps2 {
  71. regulator-min-microvolt = <1100000>;
  72. regulator-max-microvolt = <1100000>;
  73. };
  74. vreg_s3a_1p35: smps3 {
  75. regulator-min-microvolt = <1352000>;
  76. regulator-max-microvolt = <1352000>;
  77. };
  78. vreg_s5a_2p04: smps5 {
  79. regulator-min-microvolt = <1904000>;
  80. regulator-max-microvolt = <2040000>;
  81. };
  82. vreg_s7a_1p025: smps7 {
  83. regulator-min-microvolt = <900000>;
  84. regulator-max-microvolt = <1028000>;
  85. };
  86. vdd_qusb_hs0:
  87. vdda_hp_pcie_core:
  88. vdda_mipi_csi0_0p9:
  89. vdda_mipi_csi1_0p9:
  90. vdda_mipi_csi2_0p9:
  91. vdda_mipi_dsi0_pll:
  92. vdda_mipi_dsi1_pll:
  93. vdda_qlink_lv:
  94. vdda_qlink_lv_ck:
  95. vdda_qrefs_0p875:
  96. vdda_pcie_core:
  97. vdda_pll_cc_ebi01:
  98. vdda_pll_cc_ebi23:
  99. vdda_sp_sensor:
  100. vdda_ufs1_core:
  101. vdda_ufs2_core:
  102. vdda_usb1_ss_core:
  103. vdda_usb2_ss_core:
  104. vreg_l1a_0p875: ldo1 {
  105. regulator-min-microvolt = <880000>;
  106. regulator-max-microvolt = <880000>;
  107. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  108. };
  109. vddpx_10:
  110. vreg_l2a_1p2: ldo2 {
  111. regulator-min-microvolt = <1200000>;
  112. regulator-max-microvolt = <1200000>;
  113. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  114. regulator-always-on;
  115. };
  116. vreg_l3a_1p0: ldo3 {
  117. regulator-min-microvolt = <1000000>;
  118. regulator-max-microvolt = <1000000>;
  119. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  120. };
  121. vdd_wcss_cx:
  122. vdd_wcss_mx:
  123. vdda_wcss_pll:
  124. vreg_l5a_0p8: ldo5 {
  125. regulator-min-microvolt = <800000>;
  126. regulator-max-microvolt = <800000>;
  127. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  128. };
  129. vddpx_13:
  130. vreg_l6a_1p8: ldo6 {
  131. regulator-min-microvolt = <1856000>;
  132. regulator-max-microvolt = <1856000>;
  133. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  134. };
  135. vreg_l7a_1p8: ldo7 {
  136. regulator-min-microvolt = <1800000>;
  137. regulator-max-microvolt = <1800000>;
  138. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  139. };
  140. vreg_l8a_1p2: ldo8 {
  141. regulator-min-microvolt = <1200000>;
  142. regulator-max-microvolt = <1248000>;
  143. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  144. };
  145. vreg_l9a_1p8: ldo9 {
  146. regulator-min-microvolt = <1704000>;
  147. regulator-max-microvolt = <2928000>;
  148. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  149. };
  150. vreg_l10a_1p8: ldo10 {
  151. regulator-min-microvolt = <1704000>;
  152. regulator-max-microvolt = <2928000>;
  153. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  154. };
  155. vreg_l11a_1p0: ldo11 {
  156. regulator-min-microvolt = <1000000>;
  157. regulator-max-microvolt = <1048000>;
  158. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  159. };
  160. vdd_qfprom:
  161. vdd_qfprom_sp:
  162. vdda_apc1_cs_1p8:
  163. vdda_gfx_cs_1p8:
  164. vdda_qrefs_1p8:
  165. vdda_qusb_hs0_1p8:
  166. vddpx_11:
  167. vreg_l12a_1p8: ldo12 {
  168. regulator-min-microvolt = <1800000>;
  169. regulator-max-microvolt = <1800000>;
  170. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  171. };
  172. vddpx_2:
  173. vreg_l13a_2p95: ldo13 {
  174. regulator-min-microvolt = <1800000>;
  175. regulator-max-microvolt = <2960000>;
  176. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  177. };
  178. vreg_l14a_1p88: ldo14 {
  179. regulator-min-microvolt = <1800000>;
  180. regulator-max-microvolt = <1800000>;
  181. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  182. };
  183. vreg_l15a_1p8: ldo15 {
  184. regulator-min-microvolt = <1800000>;
  185. regulator-max-microvolt = <1800000>;
  186. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  187. };
  188. vreg_l16a_2p7: ldo16 {
  189. regulator-min-microvolt = <2704000>;
  190. regulator-max-microvolt = <2704000>;
  191. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  192. };
  193. vreg_l17a_1p3: ldo17 {
  194. regulator-min-microvolt = <1304000>;
  195. regulator-max-microvolt = <1304000>;
  196. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  197. };
  198. vreg_l18a_2p7: ldo18 {
  199. regulator-min-microvolt = <2704000>;
  200. regulator-max-microvolt = <2960000>;
  201. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  202. };
  203. vreg_l19a_3p0: ldo19 {
  204. regulator-min-microvolt = <2856000>;
  205. regulator-max-microvolt = <3104000>;
  206. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  207. };
  208. vreg_l20a_2p95: ldo20 {
  209. regulator-min-microvolt = <2704000>;
  210. regulator-max-microvolt = <2960000>;
  211. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  212. };
  213. vreg_l21a_2p95: ldo21 {
  214. regulator-min-microvolt = <2704000>;
  215. regulator-max-microvolt = <2960000>;
  216. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  217. };
  218. vreg_l22a_2p85: ldo22 {
  219. regulator-min-microvolt = <2864000>;
  220. regulator-max-microvolt = <3312000>;
  221. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  222. };
  223. vreg_l23a_3p3: ldo23 {
  224. regulator-min-microvolt = <3000000>;
  225. regulator-max-microvolt = <3312000>;
  226. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  227. };
  228. vdda_qusb_hs0_3p1:
  229. vreg_l24a_3p075: ldo24 {
  230. regulator-min-microvolt = <3088000>;
  231. regulator-max-microvolt = <3088000>;
  232. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  233. };
  234. vreg_l25a_3p3: ldo25 {
  235. regulator-min-microvolt = <3300000>;
  236. regulator-max-microvolt = <3312000>;
  237. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  238. };
  239. vdda_hp_pcie_1p2:
  240. vdda_hv_ebi0:
  241. vdda_hv_ebi1:
  242. vdda_hv_ebi2:
  243. vdda_hv_ebi3:
  244. vdda_mipi_csi_1p25:
  245. vdda_mipi_dsi0_1p2:
  246. vdda_mipi_dsi1_1p2:
  247. vdda_pcie_1p2:
  248. vdda_ufs1_1p2:
  249. vdda_ufs2_1p2:
  250. vdda_usb1_ss_1p2:
  251. vdda_usb2_ss_1p2:
  252. vreg_l26a_1p2: ldo26 {
  253. regulator-min-microvolt = <1200000>;
  254. regulator-max-microvolt = <1200000>;
  255. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  256. };
  257. vreg_l28a_3p0: ldo28 {
  258. regulator-min-microvolt = <2856000>;
  259. regulator-max-microvolt = <3008000>;
  260. regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  261. };
  262. vreg_lvs1a_1p8: lvs1 {
  263. regulator-min-microvolt = <1800000>;
  264. regulator-max-microvolt = <1800000>;
  265. };
  266. vreg_lvs2a_1p8: lvs2 {
  267. regulator-min-microvolt = <1800000>;
  268. regulator-max-microvolt = <1800000>;
  269. };
  270. };
  271. pmi8998-rpmh-regulators {
  272. compatible = "qcom,pmi8998-rpmh-regulators";
  273. qcom,pmic-id = "b";
  274. vdd-bob-supply = <&vph_pwr>;
  275. vreg_bob: bob {
  276. regulator-min-microvolt = <3312000>;
  277. regulator-max-microvolt = <3600000>;
  278. regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
  279. regulator-allow-bypass;
  280. };
  281. };
  282. pm8005-rpmh-regulators {
  283. compatible = "qcom,pm8005-rpmh-regulators";
  284. qcom,pmic-id = "c";
  285. vdd-s1-supply = <&vph_pwr>;
  286. vdd-s2-supply = <&vph_pwr>;
  287. vdd-s3-supply = <&vph_pwr>;
  288. vdd-s4-supply = <&vph_pwr>;
  289. vreg_s3c_0p6: smps3 {
  290. regulator-min-microvolt = <600000>;
  291. regulator-max-microvolt = <600000>;
  292. };
  293. };
  294. };
  295. &gcc {
  296. protected-clocks = <GCC_QSPI_CORE_CLK>,
  297. <GCC_QSPI_CORE_CLK_SRC>,
  298. <GCC_QSPI_CNOC_PERIPH_AHB_CLK>;
  299. };
  300. &i2c10 {
  301. status = "okay";
  302. clock-frequency = <400000>;
  303. };
  304. &qupv3_id_1 {
  305. status = "okay";
  306. };
  307. &tlmm {
  308. gpio-reserved-ranges = <0 4>, <81 4>;
  309. };
  310. &uart9 {
  311. status = "okay";
  312. };
  313. &usb_1 {
  314. status = "okay";
  315. };
  316. &usb_1_dwc3 {
  317. /* Until we have Type C hooked up we'll force this as host. */
  318. dr_mode = "host";
  319. };
  320. &usb_1_hsphy {
  321. status = "okay";
  322. vdd-supply = <&vdda_usb1_ss_core>;
  323. vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
  324. vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
  325. qcom,imp-res-offset-value = <8>;
  326. qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
  327. qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
  328. qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
  329. };
  330. &usb_1_qmpphy {
  331. status = "okay";
  332. vdda-phy-supply = <&vdda_usb1_ss_1p2>;
  333. vdda-pll-supply = <&vdda_usb1_ss_core>;
  334. };
  335. &usb_2 {
  336. status = "okay";
  337. };
  338. &usb_2_dwc3 {
  339. /*
  340. * Though the USB block on SDM845 can support host, there's no vbus
  341. * signal for this port on MTP. Thus (unless you have a non-compliant
  342. * hub that works without vbus) the only sensible thing is to force
  343. * peripheral mode.
  344. */
  345. dr_mode = "peripheral";
  346. };
  347. &usb_2_hsphy {
  348. status = "okay";
  349. vdd-supply = <&vdda_usb2_ss_core>;
  350. vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
  351. vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
  352. qcom,imp-res-offset-value = <8>;
  353. qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_22_8_MA>;
  354. };
  355. &usb_2_qmpphy {
  356. status = "okay";
  357. vdda-phy-supply = <&vdda_usb2_ss_1p2>;
  358. vdda-pll-supply = <&vdda_usb2_ss_core>;
  359. };
  360. /* PINCTRL - additions to nodes defined in sdm845.dtsi */
  361. &qup_i2c10_default {
  362. pinconf {
  363. pins = "gpio55", "gpio56";
  364. drive-strength = <2>;
  365. bias-disable;
  366. };
  367. };
  368. &qup_uart9_default {
  369. pinconf-tx {
  370. pins = "gpio4";
  371. drive-strength = <2>;
  372. bias-disable;
  373. };
  374. pinconf-rx {
  375. pins = "gpio5";
  376. drive-strength = <2>;
  377. bias-pull-up;
  378. };
  379. };