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