1 // SPDX-License-Identifier: BSD-3-Clause 2 /* 3 * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org> 4 */ 5 6 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 7 #include <dt-bindings/regulator/qcom,rpmh-regulator.h> 8 #include "sm8350.dtsi" 9 #include "pm8350.dtsi" 10 #include "pm8350b.dtsi" 11 #include "pm8350c.dtsi" 12 #include "pmk8350.dtsi" 13 #include "pmr735a.dtsi" 14 #include "pmr735b.dtsi" 15 16 / { 17 /* 18 * Yes, you are correct, there is NO MORE {msm,board,pmic}-id on SM8350! 19 * Adding it will cause the bootloader to go crazy and randomly crash 20 * shortly after closing UEFI boot services.. Perhaps that has something 21 * to do with the OS running inside a VM now..? 22 */ 23 24 chassis-type = "handset"; 25 26 chosen { 27 #address-cells = <2>; 28 #size-cells = <2>; 29 ranges; 30 31 framebuffer: framebuffer@e1000000 { 32 compatible = "simple-framebuffer"; 33 reg = <0 0xe1000000 0 0x2300000>; 34 35 /* The display, even though it's 4K, initializes at 1080-ish p */ 36 width = <1096>; 37 height = <2560>; 38 stride = <(1096 * 4)>; 39 format = "a8r8g8b8"; 40 /* 41 * That's (going to be) a lot of clocks, but it's necessary due 42 * to unused clk cleanup & no panel driver yet 43 */ 44 clocks = <&gcc GCC_DISP_HF_AXI_CLK>, 45 <&gcc GCC_DISP_SF_AXI_CLK>; 46 }; 47 }; 48 49 gpio-keys { 50 compatible = "gpio-keys"; 51 52 pinctrl-names = "default"; 53 pinctrl-0 = <&focus_n &snapshot_n &vol_down_n &g_assist_n>; 54 55 key-camera-focus { 56 label = "Camera Focus"; 57 linux,code = <KEY_CAMERA_FOCUS>; 58 gpios = <&pm8350b_gpios 8 GPIO_ACTIVE_LOW>; 59 debounce-interval = <15>; 60 linux,can-disable; 61 wakeup-source; 62 }; 63 64 key-camera-snapshot { 65 label = "Camera Snapshot"; 66 linux,code = <KEY_CAMERA>; 67 gpios = <&pm8350b_gpios 5 GPIO_ACTIVE_LOW>; 68 debounce-interval = <15>; 69 linux,can-disable; 70 wakeup-source; 71 }; 72 73 key-google-assist { 74 label = "Google Assistant Key"; 75 gpios = <&pm8350_gpios 9 GPIO_ACTIVE_LOW>; 76 linux,code = <KEY_LEFTMETA>; 77 debounce-interval = <15>; 78 linux,can-disable; 79 wakeup-source; 80 }; 81 82 key-vol-down { 83 label = "Volume Down"; 84 linux,code = <KEY_VOLUMEDOWN>; 85 gpios = <&pmk8350_gpios 3 GPIO_ACTIVE_LOW>; 86 debounce-interval = <15>; 87 linux,can-disable; 88 wakeup-source; 89 }; 90 }; 91 92 reserved-memory { 93 cont_splash_mem: memory@e1000000 { 94 reg = <0 0xe1000000 0 0x2300000>; 95 no-map; 96 }; 97 98 ramoops@ffc00000 { 99 compatible = "ramoops"; 100 reg = <0 0xffc00000 0 0x100000>; 101 console-size = <0x40000>; 102 record-size = <0x1000>; 103 no-map; 104 }; 105 }; 106 107 vph_pwr: vph-pwr-regulator { 108 compatible = "regulator-fixed"; 109 regulator-name = "vph_pwr"; 110 regulator-min-microvolt = <3700000>; 111 regulator-max-microvolt = <3700000>; 112 113 regulator-always-on; 114 regulator-boot-on; 115 }; 116 }; 117 118 &adsp { 119 status = "okay"; 120 firmware-name = "qcom/sm8350/Sony/sagami/adsp.mbn"; 121 }; 122 123 &apps_rsc { 124 regulators-0 { 125 compatible = "qcom,pm8350-rpmh-regulators"; 126 qcom,pmic-id = "b"; 127 128 vdd-s1-supply = <&vph_pwr>; 129 vdd-s2-supply = <&vph_pwr>; 130 vdd-s3-supply = <&vph_pwr>; 131 vdd-s4-supply = <&vph_pwr>; 132 vdd-s5-supply = <&vph_pwr>; 133 vdd-s6-supply = <&vph_pwr>; 134 vdd-s7-supply = <&vph_pwr>; 135 vdd-s8-supply = <&vph_pwr>; 136 vdd-s9-supply = <&vph_pwr>; 137 vdd-s10-supply = <&vph_pwr>; 138 vdd-s11-supply = <&vph_pwr>; 139 vdd-s12-supply = <&vph_pwr>; 140 141 vdd-l1-l4-supply = <&pm8350_s11>; 142 vdd-l2-l7-supply = <&vreg_bob>; 143 vdd-l3-l5-supply = <&vreg_bob>; 144 vdd-l6-l9-l10-supply = <&pm8350_s11>; 145 146 /* 147 * ARC regulators: 148 * S5 - mx.lvl 149 * S6 - gfx.lvl 150 * S9 - mxc.lvl 151 */ 152 153 pm8350_s10: smps10 { 154 regulator-name = "pm8350_s10"; 155 regulator-min-microvolt = <1800000>; 156 regulator-max-microvolt = <1800000>; 157 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 158 }; 159 160 pm8350_s11: smps11 { 161 regulator-name = "pm8350_s11"; 162 regulator-min-microvolt = <752000>; 163 regulator-max-microvolt = <1000000>; 164 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 165 }; 166 167 pm8350_s12: smps12 { 168 regulator-name = "pm8350_s12"; 169 regulator-min-microvolt = <1224000>; 170 regulator-max-microvolt = <1360000>; 171 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 172 }; 173 174 pm8350_l1: ldo1 { 175 regulator-name = "pm8350_l1"; 176 regulator-min-microvolt = <912000>; 177 regulator-max-microvolt = <920000>; 178 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 179 }; 180 181 pm8350_l2: ldo2 { 182 regulator-name = "pm8350_l2"; 183 regulator-min-microvolt = <3072000>; 184 regulator-max-microvolt = <3072000>; 185 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 186 }; 187 188 pm8350_l3: ldo3 { 189 regulator-name = "pm8350_l3"; 190 regulator-min-microvolt = <904000>; 191 regulator-max-microvolt = <904000>; 192 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 193 }; 194 195 /* L4 - lmx.lvl (ARC) */ 196 197 pm8350_l5: ldo5 { 198 regulator-name = "pm8350_l5"; 199 regulator-min-microvolt = <880000>; 200 regulator-max-microvolt = <888000>; 201 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 202 regulator-allow-set-load; 203 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 204 RPMH_REGULATOR_MODE_HPM>; 205 }; 206 207 pm8350_l6: ldo6 { 208 regulator-name = "pm8350_l6"; 209 regulator-min-microvolt = <1200000>; 210 regulator-max-microvolt = <1208000>; 211 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 212 regulator-allow-set-load; 213 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 214 RPMH_REGULATOR_MODE_HPM>; 215 }; 216 217 pm8350_l7: ldo7 { 218 regulator-name = "pm8350_l7"; 219 regulator-min-microvolt = <2400000>; 220 regulator-max-microvolt = <3008000>; 221 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 222 regulator-allow-set-load; 223 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 224 RPMH_REGULATOR_MODE_HPM>; 225 }; 226 227 /* L8 - lcx.lvl (ARC) */ 228 229 pm8350_l9: ldo9 { 230 regulator-name = "pm8350_l9"; 231 regulator-min-microvolt = <1200000>; 232 regulator-max-microvolt = <1200000>; 233 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 234 regulator-allow-set-load; 235 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 236 RPMH_REGULATOR_MODE_HPM>; 237 }; 238 }; 239 240 regulators-1 { 241 compatible = "qcom,pm8350c-rpmh-regulators"; 242 qcom,pmic-id = "c"; 243 244 vdd-s1-supply = <&vph_pwr>; 245 vdd-s2-supply = <&vph_pwr>; 246 vdd-s3-supply = <&vph_pwr>; 247 vdd-s4-supply = <&vph_pwr>; 248 vdd-s5-supply = <&vph_pwr>; 249 vdd-s6-supply = <&vph_pwr>; 250 vdd-s7-supply = <&vph_pwr>; 251 vdd-s8-supply = <&vph_pwr>; 252 vdd-s9-supply = <&vph_pwr>; 253 vdd-s10-supply = <&vph_pwr>; 254 255 vdd-l1-l12-supply = <&pm8350c_s1>; 256 vdd-l2-l8-supply = <&pm8350c_s1>; 257 vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>; 258 vdd-l6-l9-l11-supply = <&vreg_bob>; 259 vdd-l10-supply = <&pm8350_s12>; 260 261 vdd-bob-supply = <&vph_pwr>; 262 263 pm8350c_s1: smps1 { 264 regulator-name = "pm8350c_s1"; 265 regulator-min-microvolt = <1800000>; 266 regulator-max-microvolt = <1952000>; 267 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 268 }; 269 270 /* S2 - ebi.lvl (ARC) */ 271 272 pm8350c_s3: smps3 { 273 regulator-name = "pm8350c_s3"; 274 regulator-min-microvolt = <300000>; 275 regulator-max-microvolt = <704000>; 276 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 277 }; 278 279 /* 280 * ARC regulators: 281 * S4 - mss.lvl 282 * S6 - cx.lvl 283 * S8 - mmcx.lvl 284 */ 285 286 pm8350c_s10: smps10 { 287 regulator-name = "pm8350c_s10"; 288 regulator-min-microvolt = <1048000>; 289 regulator-max-microvolt = <1128000>; 290 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 291 }; 292 293 pm8350c_l1: ldo1 { 294 regulator-name = "pm8350c_l1"; 295 regulator-min-microvolt = <1800000>; 296 regulator-max-microvolt = <1800000>; 297 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 298 }; 299 300 pm8350c_l2: ldo2 { 301 regulator-name = "pm8350c_l2"; 302 regulator-min-microvolt = <1800000>; 303 regulator-max-microvolt = <1800000>; 304 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 305 }; 306 307 pm8350c_l3: ldo3 { 308 regulator-name = "pm8350c_l3"; 309 regulator-min-microvolt = <3304000>; 310 regulator-max-microvolt = <3304000>; 311 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 312 }; 313 314 pm8350c_l4: ldo4 { 315 regulator-name = "pm8350c_l4"; 316 regulator-min-microvolt = <1704000>; 317 regulator-max-microvolt = <3000000>; 318 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 319 }; 320 321 pm8350c_l5: ldo5 { 322 regulator-name = "pm8350c_l5"; 323 regulator-min-microvolt = <1704000>; 324 regulator-max-microvolt = <3000000>; 325 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 326 }; 327 328 pm8350c_l6: ldo6 { 329 regulator-name = "pm8350c_l6"; 330 regulator-min-microvolt = <1800000>; 331 regulator-max-microvolt = <2960000>; 332 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 333 }; 334 335 pm8350c_l7: ldo7 { 336 regulator-name = "pm8350c_l7"; 337 regulator-min-microvolt = <3008000>; 338 regulator-max-microvolt = <3008000>; 339 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 340 }; 341 342 pm8350c_l8: ldo8 { 343 regulator-name = "pm8350c_l8"; 344 regulator-min-microvolt = <1800000>; 345 regulator-max-microvolt = <1800000>; 346 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 347 }; 348 349 pm8350c_l9: ldo9 { 350 regulator-name = "pm8350c_l9"; 351 regulator-min-microvolt = <2960000>; 352 /* Originally max = 3008000 but SDHCI expects 2960000 */ 353 regulator-max-microvolt = <2960000>; 354 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 355 }; 356 357 pm8350c_l10: ldo10 { 358 regulator-name = "pm8350c_l10"; 359 regulator-min-microvolt = <1200000>; 360 regulator-max-microvolt = <1200000>; 361 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 362 }; 363 364 pm8350c_l11: ldo11 { 365 regulator-name = "pm8350c_l11"; 366 regulator-min-microvolt = <2400000>; 367 regulator-max-microvolt = <3008000>; 368 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 369 }; 370 371 pm8350c_l12: ldo12 { 372 regulator-name = "pm8350c_l12"; 373 regulator-min-microvolt = <1800000>; 374 regulator-max-microvolt = <2000000>; 375 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 376 }; 377 378 pm8350c_l13: ldo13 { 379 regulator-name = "pm8350c_l13"; 380 regulator-min-microvolt = <3000000>; 381 regulator-max-microvolt = <3000000>; 382 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 383 }; 384 385 vreg_bob: bob { 386 regulator-name = "vreg_bob"; 387 regulator-min-microvolt = <3400000>; 388 regulator-max-microvolt = <3960000>; 389 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 390 }; 391 }; 392 393 /* TODO: Add pm8350b (just one ldo) once the driver part is in */ 394 395 regulators-2 { 396 compatible = "qcom,pmr735a-rpmh-regulators"; 397 qcom,pmic-id = "e"; 398 399 vdd-s1-supply = <&vph_pwr>; 400 vdd-s2-supply = <&vph_pwr>; 401 vdd-s3-supply = <&vph_pwr>; 402 403 vdd-l1-l2-supply = <&pmr735a_s2>; 404 vdd-l3-supply = <&pmr735a_s1>; 405 vdd-l4-supply = <&pm8350c_s1>; 406 vdd-l5-l6-supply = <&pm8350c_s1>; 407 vdd-l7-bob-supply = <&vreg_bob>; 408 409 pmr735a_s1: smps1 { 410 regulator-name = "pmr735a_s1"; 411 regulator-min-microvolt = <1200000>; 412 regulator-max-microvolt = <1280000>; 413 }; 414 415 pmr735a_s2: smps2 { 416 regulator-name = "pmr735a_s2"; 417 regulator-min-microvolt = <500000>; 418 regulator-max-microvolt = <976000>; 419 }; 420 421 pmr735a_s3: smps3 { 422 regulator-name = "pmr735a_s3"; 423 regulator-min-microvolt = <2208000>; 424 regulator-max-microvolt = <2352000>; 425 }; 426 427 pmr735a_l1: ldo1 { 428 regulator-name = "pmr735a_l1"; 429 regulator-min-microvolt = <912000>; 430 regulator-max-microvolt = <912000>; 431 }; 432 433 pmr735a_l2: ldo2 { 434 regulator-name = "pmr735a_l2"; 435 regulator-min-microvolt = <1200000>; 436 regulator-max-microvolt = <1200000>; 437 }; 438 439 pmr735a_l3: ldo3 { 440 regulator-name = "pmr735a_l3"; 441 regulator-min-microvolt = <1200000>; 442 regulator-max-microvolt = <1200000>; 443 }; 444 445 pmr735a_l4: ldo4 { 446 regulator-name = "pmr735a_l4"; 447 regulator-min-microvolt = <1776000>; 448 regulator-max-microvolt = <1872000>; 449 }; 450 451 pmr735a_l5: ldo5 { 452 regulator-name = "pmr735a_l5"; 453 regulator-min-microvolt = <800000>; 454 regulator-max-microvolt = <800000>; 455 }; 456 457 pmr735a_l6: ldo6 { 458 regulator-name = "pmr735a_l6"; 459 regulator-min-microvolt = <480000>; 460 regulator-max-microvolt = <904000>; 461 }; 462 463 pmr735a_l7: ldo7 { 464 regulator-name = "pmr735a_l7"; 465 regulator-min-microvolt = <2800000>; 466 regulator-max-microvolt = <2800000>; 467 }; 468 }; 469 }; 470 471 &cdsp { 472 status = "okay"; 473 firmware-name = "qcom/sm8350/Sony/sagami/cdsp.mbn"; 474 }; 475 476 &i2c1 { 477 status = "okay"; 478 clock-frequency = <1000000>; 479 480 /* Some subset of SONY IMX663 camera sensor @ 38 */ 481 }; 482 483 &i2c4 { 484 status = "okay"; 485 clock-frequency = <400000>; 486 487 /* Samsung Touchscreen (needs I2C GPI DMA) @ 48 */ 488 }; 489 490 &i2c11 { 491 status = "okay"; 492 clock-frequency = <1000000>; 493 494 cs35l41_l: speaker-amp@40 { 495 compatible = "cirrus,cs35l41"; 496 reg = <0x40>; 497 interrupt-parent = <&tlmm>; 498 interrupts = <36 IRQ_TYPE_LEVEL_LOW>; 499 reset-gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>; 500 cirrus,boost-peak-milliamp = <4000>; 501 cirrus,boost-ind-nanohenry = <1000>; 502 cirrus,boost-cap-microfarad = <15>; 503 cirrus,asp-sdout-hiz = <3>; 504 cirrus,gpio2-src-select = <2>; 505 cirrus,gpio2-output-enable; 506 #sound-dai-cells = <1>; 507 }; 508 509 cs35l41_r: speaker-amp@41 { 510 compatible = "cirrus,cs35l41"; 511 reg = <0x41>; 512 interrupt-parent = <&tlmm>; 513 interrupts = <36 IRQ_TYPE_LEVEL_LOW>; 514 reset-gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>; 515 cirrus,boost-peak-milliamp = <4000>; 516 cirrus,boost-ind-nanohenry = <1000>; 517 cirrus,boost-cap-microfarad = <15>; 518 cirrus,asp-sdout-hiz = <3>; 519 cirrus,gpio2-src-select = <2>; 520 cirrus,gpio2-output-enable; 521 #sound-dai-cells = <1>; 522 }; 523 }; 524 525 &i2c12 { 526 status = "okay"; 527 /* Clock frequency was not specified downstream, let's park it to 100 KHz */ 528 clock-frequency = <100000>; 529 530 /* AMS TCS3490 RGB+IR color sensor @ 72 */ 531 }; 532 533 &i2c13 { 534 status = "okay"; 535 /* Clock frequency was not specified downstream, let's park it to 100 KHz */ 536 clock-frequency = <100000>; 537 538 /* Qualcomm PM8008i/PM8008j (?) @ 8, 9, c, d */ 539 }; 540 541 &i2c15 { 542 status = "okay"; 543 clock-frequency = <400000>; 544 545 /* NXP SN1X0 NFC @ 28 */ 546 }; 547 548 &i2c17 { 549 status = "okay"; 550 clock-frequency = <1000000>; 551 552 /* Cirrus Logic CS40L25A boosted haptics driver @ 40 */ 553 }; 554 555 &ipa { 556 qcom,gsi-loader = "self"; 557 memory-region = <&pil_ipa_fw_mem>; 558 firmware-name = "qcom/sm8350/Sony/sagami/ipa_fws.mbn"; 559 status = "okay"; 560 }; 561 562 &mpss { 563 status = "okay"; 564 firmware-name = "qcom/sm8350/Sony/sagami/modem.mbn"; 565 }; 566 567 &pm8350_gpios { 568 gpio-line-names = "ASSIGN1_THERM", /* GPIO_1 */ 569 "LCD_ID", 570 "SDR_MMW_THERM", 571 "RF_ID", 572 "NC", 573 "FP_LDO_EN", 574 "SP_ARI_PWR_ALARM", 575 "NC", 576 "G_ASSIST_N", 577 "PM8350_OPTION"; /* GPIO_10 */ 578 579 g_assist_n: g-assist-n-state { 580 pins = "gpio9"; 581 function = "normal"; 582 power-source = <1>; 583 bias-pull-up; 584 input-enable; 585 }; 586 }; 587 588 &pm8350b_gpios { 589 snapshot_n: snapshot-n-state { 590 pins = "gpio5"; 591 function = "normal"; 592 power-source = <0>; 593 bias-pull-up; 594 input-enable; 595 }; 596 597 focus_n: focus-n-state { 598 pins = "gpio8"; 599 function = "normal"; 600 power-source = <0>; 601 input-enable; 602 bias-pull-up; 603 }; 604 }; 605 606 &pmk8350_gpios { 607 gpio-line-names = "NC", /* GPIO_1 */ 608 "NC", 609 "VOL_DOWN_N", 610 "PMK8350_OPTION"; 611 612 vol_down_n: vol-down-n-state { 613 pins = "gpio3"; 614 function = "normal"; 615 power-source = <0>; 616 bias-pull-up; 617 input-enable; 618 }; 619 }; 620 621 &pmk8350_rtc { 622 status = "okay"; 623 }; 624 625 &pon_pwrkey { 626 status = "okay"; 627 }; 628 629 &pon_resin { 630 status = "okay"; 631 linux,code = <KEY_VOLUMEUP>; 632 }; 633 634 &qupv3_id_0 { 635 status = "okay"; 636 }; 637 638 &qupv3_id_1 { 639 status = "okay"; 640 }; 641 642 &qupv3_id_2 { 643 status = "okay"; 644 }; 645 646 &sdhc_2 { 647 cd-gpios = <&tlmm 92 GPIO_ACTIVE_HIGH>; 648 pinctrl-names = "default", "sleep"; 649 pinctrl-0 = <&sdc2_default_state &sdc2_card_det_active>; 650 pinctrl-1 = <&sdc2_sleep_state &sdc2_card_det_sleep>; 651 vmmc-supply = <&pm8350c_l9>; 652 vqmmc-supply = <&pm8350c_l6>; 653 no-sdio; 654 no-mmc; 655 status = "okay"; 656 }; 657 658 &slpi { 659 status = "okay"; 660 firmware-name = "qcom/sm8350/Sony/sagami/slpi.mbn"; 661 }; 662 663 &spi14 { 664 status = "okay"; 665 666 /* NXP SN1X0 NFC Secure Element @ 0 */ 667 }; 668 669 &tlmm { 670 gpio-reserved-ranges = <44 4>; 671 gpio-line-names = "APPS_I2C_0_SDA", /* GPIO_0 */ 672 "APPS_I2C_0_SCL", 673 "UWIDEC_PWR_EN", 674 "HAP_RST_N", 675 "NC", 676 "NC", 677 "PM8008_1_RESET_N", 678 "NC", 679 "OIS_TELE_I2C_SDA", 680 "OIS_TELE_I2C_SCL", 681 "PM8350_OPTION", /* GPIO_10 */ 682 "NC", 683 "APPS_I2C_1_SDA", 684 "APPS_I2C_1_SCL", 685 "NC", 686 "NC", 687 "CAM1_RESET_N", 688 "LEO_CAM0_RESET_N", 689 "DEBUG_UART_TX", 690 "DEBUG_UART_RX", 691 "TS_I2C_SDA", /* GPIO_20 */ 692 "TS_I2C_SCL", 693 "TS_RESET_N", 694 "TS_INT_N", 695 "DISP_RESET_N", 696 "SW_SERVICE", 697 "DISP_ERR_FG", 698 "TX_GTR_THRES_IN", 699 "NC", 700 "NC", 701 "NC", /* GPIO_30 */ 702 "NC", 703 "NC", 704 "NC", 705 "NC", 706 "NC", 707 "SPK_AMP_INT_N", 708 "SPK_AMP_RESET_N", 709 "FP_INT_N", 710 "FP_RESET_N", 711 "NC", /* GPIO_40 */ 712 "NC", 713 "DEBUG_GPIO0", 714 "FORCE_USB_BOOT", 715 "FP_SPI_MISO", 716 "FP_SPI_MOSI", 717 "FP_SPI_CLK", 718 "FP_SPI_CS_N", 719 "SPK_AMP_I2C_SDA", 720 "SPK_AMP_I2C_SCL", 721 "NC", /* GPIO_50 */ 722 "HAP_INT_N", 723 "CAMSENSOR_I2C_SDA", 724 "CAMSENSOR_I2C_SCL", 725 "SBU_SW_OE", 726 "SBU_SW_SEL", 727 "NFC_ESE_SPI_MISO", 728 "NFC_ESE_SPI_MOSI", 729 "NFC_ESE_SPI_CLK", 730 "NFC_ESE_SPI_CS", 731 "NFC_I2C_SDA", /* GPIO_60 */ 732 "NFC_I2C_SCL", 733 "NFC_EN", 734 "NFC_CLK_REQ", 735 "HST_WLAN_EN", 736 "HST_BT_EN", 737 "HW_ID_0", 738 "HW_ID_1", 739 "HST_BT_UART_CTS", 740 "HST_BT_UART_RFR", 741 "HST_BT_UART_TX", /* GPIO_70 */ 742 "HST_BT_UART_RX", 743 "HAP_I2C_SDA", 744 "HAP_I2C_SCL", 745 "RF_LCD_ID_EN", 746 "RF_ID_EXTENSION", 747 "NC", 748 "NC", 749 "NC", 750 "NC", 751 "HALL_INT_N", /* GPIO_80 */ 752 "USB_CC_DIR", 753 "DISP_VSYNC", 754 "NC", 755 "NC", 756 "CAM_SOF_TELE", 757 "NFC_DWL_REQ", 758 "NFC_IRQ", 759 "WCD_RST_N", 760 "ALS_PROX_INT_N", 761 "NC", /* GPIO_90 */ 762 "NC", 763 "TRAY_DET", 764 "UDON_SWITCH_SEL", 765 "PCIE0_RESET_N", 766 "PCIE0_CLK_REQ_N", 767 "PCIE0_WAKE_N", 768 "CAM_SOF", 769 "RF_ID_EXTENSION_2", 770 "RGBC_IR_INT", 771 "CAM_MCLK0", /* GPIO_100 */ 772 "CAM_MCLK1", 773 "CAM_MCLK2", 774 "CAM_MCLK3", 775 "NC", 776 "NC", 777 "CAM2_RESET_N", 778 "CCI_I2C0_SDA", 779 "CCI_I2C0_SCL", 780 "CCI_I2C1_SDA", 781 "CCI_I2C1_SCL", /* GPIO_110 */ 782 "CCI_I2C2_SDA", 783 "CCI_I2C2_SCL", 784 "CCI_I2C3_SDA", 785 "CCI_I2C3_SCL", 786 "NC", 787 "PM8008_1_IRQ", 788 "CAM3_RESET_N", 789 "IMU1_INT", 790 "EXT_VD0_XVS", 791 "NC", /* GPIO_120 */ 792 "NC", 793 "NC", 794 "NC", 795 "NC", 796 "HAP_I2S_CLK", 797 "HAP_I2S_DOUT", 798 "HAP_TRG1", 799 "HAP_I2S_SYNC", 800 "HST_BT_WLAN_SLIMBUS_CLK", 801 "HST_BT_WLAN_SLIMBUS_DAT0", /* GPIO_130 */ 802 "NC", 803 "UIM2_DETECT_EN", 804 "UIM2_DATA", 805 "UIM2_CLK", 806 "UIM2_RESET", 807 "UIM2_PRESENT", 808 "UIM1_DATA", 809 "UIM1_CLK", 810 "UIM1_RESET", 811 "TRAY_DET", /* GPIO_140 */ 812 "SM_RFFE0_CLK", 813 "SM_RFFE0_DATA", 814 "SM_RFFE1_CLK", 815 "SM_RFFE1_DATA", 816 "SM_MSS_GRFC4", 817 "SM_MSS_GRFC5", 818 "SM_MSS_GRFC6", 819 "SM_MSS_GRFC7", 820 "SM_RFFE4_CLK", 821 "SM_RFFE4_DATA", /* GPIO_150 */ 822 "WLAN_COEX_UART1_RX", 823 "WLAN_COEX_UART1_TX", 824 "HST_SW_CTRL", 825 "DISP_VDDR_EN", 826 "NC", 827 "NC", 828 "PA_INDICATOR_OR", 829 "NC", 830 "QLINK0_REQ", 831 "QLINK0_EN", /* GPIO_160 */ 832 "QLINK0_WMSS_RESET_N", 833 "NC", 834 "NC", 835 "NC", 836 "PM8008_2_IRQ", 837 "TELEC_PWR_EN", 838 "PM8008_2_RESET_N", 839 "WCD_SWR_TX_CLK", 840 "WCD_SWR_TX_DATA0", 841 "WCD_SWR_TX_DATA1", /* GPIO_170 */ 842 "WCD_SWR_RX_CLK", 843 "WCD_SWR_RX_DATA0", 844 "WCD_SWR_RX_DATA1", 845 "SM_DMIC1_CLK", 846 "SM_DMIC1_DATA", 847 "SM_DMIC2_CLK", 848 "SM_DMIC2_DATA", 849 "SPK_AMP_I2S_CLK", 850 "SPK_AMP_I2S_WS", 851 "SPK_AMP_I2S_ASP_DIN", /* GPIO_180 */ 852 "SPK_AMP_I2S_ASP_DOUT", 853 "WCD_SWR_TX_DATA2", 854 "NC", 855 "NC", 856 "NC", 857 "NC", 858 "IMU_SPI_MISO", 859 "IMU_SPI_MOSI", 860 "IMU_SPI_CLK", 861 "IMU_SPI_CS_N", /* GPIO_190 */ 862 "MAG_I2C_SDA", 863 "MAG_I2C_SCL", 864 "SENSOR_I2C_SDA", 865 "SENSOR_I2C_SCL", 866 "NC", 867 "NC", 868 "NC", 869 "NC", 870 "HST_BLE_UART_TX", 871 "HST_BLE_UART_RX", /* GPIO_200 */ 872 "HST_WLAN_UART_TX", 873 "HST_WLAN_UART_RX"; 874 875 ts_int_default: ts-int-default-state { 876 pins = "gpio23"; 877 function = "gpio"; 878 drive-strength = <2>; 879 bias-disable; 880 }; 881 882 sdc2_card_det_active: sd-card-det-active-state { 883 pins = "gpio92"; 884 function = "gpio"; 885 drive-strength = <2>; 886 bias-pull-up; 887 }; 888 889 sdc2_card_det_sleep: sd-card-det-sleep-state { 890 pins = "gpio92"; 891 function = "gpio"; 892 drive-strength = <2>; 893 bias-disable; 894 }; 895 }; 896 897 /* BIG WARNING! DO NOT TOUCH UFS, YOUR DEVICE WILL DIE! */ 898 &ufs_mem_hc { status = "disabled"; }; 899 &ufs_mem_phy { status = "disabled"; }; 900 901 &usb_1 { 902 status = "okay"; 903 }; 904 905 &usb_1_dwc3 { 906 dr_mode = "peripheral"; 907 }; 908 909 &usb_1_hsphy { 910 status = "okay"; 911 912 vdda-pll-supply = <&pm8350_l5>; 913 vdda18-supply = <&pm8350c_l1>; 914 vdda33-supply = <&pm8350_l2>; 915 }; 916 917 &usb_1_qmpphy { 918 status = "okay"; 919 920 vdda-phy-supply = <&pm8350_l6>; 921 vdda-pll-supply = <&pm8350_l1>; 922 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.