162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * SDM845 LG G7 / V35 (judyln / judyp) common device tree 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (c) 2022, The Linux Foundation. All rights reserved. 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 962306a36Sopenharmony_ci#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 1062306a36Sopenharmony_ci#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci#include "sdm845.dtsi" 1362306a36Sopenharmony_ci#include "pm8998.dtsi" 1462306a36Sopenharmony_ci#include "pmi8998.dtsi" 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci/delete-node/ &adsp_mem; 1762306a36Sopenharmony_ci/delete-node/ &cdsp_mem; 1862306a36Sopenharmony_ci/delete-node/ &gpu_mem; 1962306a36Sopenharmony_ci/delete-node/ &ipa_fw_mem; 2062306a36Sopenharmony_ci/delete-node/ &mba_region; 2162306a36Sopenharmony_ci/delete-node/ &mpss_region; 2262306a36Sopenharmony_ci/delete-node/ &qseecom_mem; 2362306a36Sopenharmony_ci/delete-node/ &rmtfs_mem; 2462306a36Sopenharmony_ci/delete-node/ &slpi_mem; 2562306a36Sopenharmony_ci/delete-node/ &spss_mem; 2662306a36Sopenharmony_ci/delete-node/ &venus_mem; 2762306a36Sopenharmony_ci/delete-node/ &wlan_msa_mem; 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci/ { 3062306a36Sopenharmony_ci chosen { 3162306a36Sopenharmony_ci #address-cells = <2>; 3262306a36Sopenharmony_ci #size-cells = <2>; 3362306a36Sopenharmony_ci ranges; 3462306a36Sopenharmony_ci }; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci reserved-memory { 3762306a36Sopenharmony_ci #address-cells = <2>; 3862306a36Sopenharmony_ci #size-cells = <2>; 3962306a36Sopenharmony_ci ranges; 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci qseecom_mem: memory@b2000000 { 4262306a36Sopenharmony_ci reg = <0 0xb2000000 0 0x1800000>; 4362306a36Sopenharmony_ci no-map; 4462306a36Sopenharmony_ci }; 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci gpu_mem: memory@8c415000 { 4762306a36Sopenharmony_ci reg = <0 0x8c415000 0 0x2000>; 4862306a36Sopenharmony_ci no-map; 4962306a36Sopenharmony_ci }; 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci ipa_fw_mem: memory@8c400000 { 5262306a36Sopenharmony_ci reg = <0 0x8c400000 0 0x10000>; 5362306a36Sopenharmony_ci no-map; 5462306a36Sopenharmony_ci }; 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci adsp_mem: memory@8c500000 { 5762306a36Sopenharmony_ci reg = <0 0x8c500000 0 0x1e00000>; 5862306a36Sopenharmony_ci no-map; 5962306a36Sopenharmony_ci }; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci wlan_msa_mem: memory@8e300000 { 6262306a36Sopenharmony_ci reg = <0 0x8e300000 0 0x100000>; 6362306a36Sopenharmony_ci no-map; 6462306a36Sopenharmony_ci }; 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci mpss_region: memory@8e400000 { 6762306a36Sopenharmony_ci reg = <0 0x8e400000 0 0x8900000>; 6862306a36Sopenharmony_ci no-map; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci venus_mem: memory@96d00000 { 7262306a36Sopenharmony_ci reg = <0 0x96d00000 0 0x500000>; 7362306a36Sopenharmony_ci no-map; 7462306a36Sopenharmony_ci }; 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci cdsp_mem: memory@97200000 { 7762306a36Sopenharmony_ci reg = <0 0x97200000 0 0x800000>; 7862306a36Sopenharmony_ci no-map; 7962306a36Sopenharmony_ci }; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci mba_region: memory@97a00000 { 8262306a36Sopenharmony_ci reg = <0 0x97a00000 0 0x200000>; 8362306a36Sopenharmony_ci no-map; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci slpi_mem: memory@97c00000 { 8762306a36Sopenharmony_ci reg = <0 0x97c00000 0 0x1400000>; 8862306a36Sopenharmony_ci no-map; 8962306a36Sopenharmony_ci }; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci spss_mem: memory@99000000 { 9262306a36Sopenharmony_ci reg = <0 0x99000000 0 0x100000>; 9362306a36Sopenharmony_ci no-map; 9462306a36Sopenharmony_ci }; 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci /* Framebuffer region */ 9762306a36Sopenharmony_ci memory@9d400000 { 9862306a36Sopenharmony_ci reg = <0x0 0x9d400000 0x0 0x2400000>; 9962306a36Sopenharmony_ci no-map; 10062306a36Sopenharmony_ci }; 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ci /* rmtfs lower guard */ 10362306a36Sopenharmony_ci memory@f0800000 { 10462306a36Sopenharmony_ci reg = <0 0xf0800000 0 0x1000>; 10562306a36Sopenharmony_ci no-map; 10662306a36Sopenharmony_ci }; 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_ci rmtfs_mem: memory@f0801000 { 10962306a36Sopenharmony_ci compatible = "qcom,rmtfs-mem"; 11062306a36Sopenharmony_ci reg = <0 0xf0801000 0 0x200000>; 11162306a36Sopenharmony_ci no-map; 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci qcom,client-id = <1>; 11462306a36Sopenharmony_ci qcom,vmid = <15>; 11562306a36Sopenharmony_ci }; 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ci /* rmtfs upper guard */ 11862306a36Sopenharmony_ci memory@f0a01000 { 11962306a36Sopenharmony_ci reg = <0 0xf0a01000 0 0x1000>; 12062306a36Sopenharmony_ci no-map; 12162306a36Sopenharmony_ci }; 12262306a36Sopenharmony_ci }; 12362306a36Sopenharmony_ci 12462306a36Sopenharmony_ci gpio-keys { 12562306a36Sopenharmony_ci compatible = "gpio-keys"; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci pinctrl-names = "default"; 12862306a36Sopenharmony_ci pinctrl-0 = <&vol_up_pin_a>; 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_ci label = "GPIO Buttons"; 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_ci key-vol-up { 13362306a36Sopenharmony_ci label = "Volume up"; 13462306a36Sopenharmony_ci linux,code = <KEY_VOLUMEUP>; 13562306a36Sopenharmony_ci gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>; 13662306a36Sopenharmony_ci }; 13762306a36Sopenharmony_ci }; 13862306a36Sopenharmony_ci 13962306a36Sopenharmony_ci vph_pwr: vph-pwr-regulator { 14062306a36Sopenharmony_ci compatible = "regulator-fixed"; 14162306a36Sopenharmony_ci regulator-name = "vph_pwr"; 14262306a36Sopenharmony_ci regulator-min-microvolt = <3700000>; 14362306a36Sopenharmony_ci regulator-max-microvolt = <3700000>; 14462306a36Sopenharmony_ci }; 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_ci /* 14762306a36Sopenharmony_ci * Apparently RPMh does not provide support for PM8998 S4 because it 14862306a36Sopenharmony_ci * is always-on; model it as a fixed regulator. 14962306a36Sopenharmony_ci */ 15062306a36Sopenharmony_ci vreg_s4a_1p8: pm8998-smps4-regulator { 15162306a36Sopenharmony_ci compatible = "regulator-fixed"; 15262306a36Sopenharmony_ci regulator-name = "vreg_s4a_1p8"; 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 15562306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci regulator-always-on; 15862306a36Sopenharmony_ci regulator-boot-on; 15962306a36Sopenharmony_ci 16062306a36Sopenharmony_ci vin-supply = <&vph_pwr>; 16162306a36Sopenharmony_ci }; 16262306a36Sopenharmony_ci}; 16362306a36Sopenharmony_ci 16462306a36Sopenharmony_ci&adsp_pas { 16562306a36Sopenharmony_ci status = "okay"; 16662306a36Sopenharmony_ci}; 16762306a36Sopenharmony_ci 16862306a36Sopenharmony_ci&apps_rsc { 16962306a36Sopenharmony_ci regulators-0 { 17062306a36Sopenharmony_ci compatible = "qcom,pm8998-rpmh-regulators"; 17162306a36Sopenharmony_ci qcom,pmic-id = "a"; 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ci vdd-s1-supply = <&vph_pwr>; 17462306a36Sopenharmony_ci vdd-s2-supply = <&vph_pwr>; 17562306a36Sopenharmony_ci vdd-s3-supply = <&vph_pwr>; 17662306a36Sopenharmony_ci vdd-s4-supply = <&vph_pwr>; 17762306a36Sopenharmony_ci vdd-s5-supply = <&vph_pwr>; 17862306a36Sopenharmony_ci vdd-s6-supply = <&vph_pwr>; 17962306a36Sopenharmony_ci vdd-s7-supply = <&vph_pwr>; 18062306a36Sopenharmony_ci vdd-s8-supply = <&vph_pwr>; 18162306a36Sopenharmony_ci vdd-s9-supply = <&vph_pwr>; 18262306a36Sopenharmony_ci vdd-s10-supply = <&vph_pwr>; 18362306a36Sopenharmony_ci vdd-s11-supply = <&vph_pwr>; 18462306a36Sopenharmony_ci vdd-s12-supply = <&vph_pwr>; 18562306a36Sopenharmony_ci vdd-s13-supply = <&vph_pwr>; 18662306a36Sopenharmony_ci vdd-l1-l27-supply = <&vreg_s7a_1p025>; 18762306a36Sopenharmony_ci vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>; 18862306a36Sopenharmony_ci vdd-l3-l11-supply = <&vreg_s7a_1p025>; 18962306a36Sopenharmony_ci vdd-l4-l5-supply = <&vreg_s7a_1p025>; 19062306a36Sopenharmony_ci vdd-l6-supply = <&vph_pwr>; 19162306a36Sopenharmony_ci vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>; 19262306a36Sopenharmony_ci vdd-l9-supply = <&vreg_bob>; 19362306a36Sopenharmony_ci vdd-l10-l23-l25-supply = <&vreg_bob>; 19462306a36Sopenharmony_ci vdd-l13-l19-l21-supply = <&vreg_bob>; 19562306a36Sopenharmony_ci vdd-l16-l28-supply = <&vreg_bob>; 19662306a36Sopenharmony_ci vdd-l18-l22-supply = <&vreg_bob>; 19762306a36Sopenharmony_ci vdd-l20-l24-supply = <&vreg_bob>; 19862306a36Sopenharmony_ci vdd-l26-supply = <&vreg_s3a_1p35>; 19962306a36Sopenharmony_ci vin-lvs-1-2-supply = <&vreg_s4a_1p8>; 20062306a36Sopenharmony_ci 20162306a36Sopenharmony_ci vreg_s2a_1p125: smps2 { 20262306a36Sopenharmony_ci regulator-min-microvolt = <1100000>; 20362306a36Sopenharmony_ci regulator-max-microvolt = <1100000>; 20462306a36Sopenharmony_ci }; 20562306a36Sopenharmony_ci 20662306a36Sopenharmony_ci vreg_s3a_1p35: smps3 { 20762306a36Sopenharmony_ci regulator-min-microvolt = <1352000>; 20862306a36Sopenharmony_ci regulator-max-microvolt = <1352000>; 20962306a36Sopenharmony_ci }; 21062306a36Sopenharmony_ci 21162306a36Sopenharmony_ci vreg_s5a_2p04: smps5 { 21262306a36Sopenharmony_ci regulator-min-microvolt = <1904000>; 21362306a36Sopenharmony_ci regulator-max-microvolt = <2040000>; 21462306a36Sopenharmony_ci }; 21562306a36Sopenharmony_ci 21662306a36Sopenharmony_ci vreg_s7a_1p025: smps7 { 21762306a36Sopenharmony_ci regulator-min-microvolt = <900000>; 21862306a36Sopenharmony_ci regulator-max-microvolt = <1028000>; 21962306a36Sopenharmony_ci }; 22062306a36Sopenharmony_ci 22162306a36Sopenharmony_ci vdd_qusb_hs0: 22262306a36Sopenharmony_ci vdda_hp_pcie_core: 22362306a36Sopenharmony_ci vdda_mipi_csi0_0p9: 22462306a36Sopenharmony_ci vdda_mipi_csi1_0p9: 22562306a36Sopenharmony_ci vdda_mipi_csi2_0p9: 22662306a36Sopenharmony_ci vdda_mipi_dsi0_pll: 22762306a36Sopenharmony_ci vdda_mipi_dsi1_pll: 22862306a36Sopenharmony_ci vdda_qlink_lv: 22962306a36Sopenharmony_ci vdda_qlink_lv_ck: 23062306a36Sopenharmony_ci vdda_qrefs_0p875: 23162306a36Sopenharmony_ci vdda_pcie_core: 23262306a36Sopenharmony_ci vdda_pll_cc_ebi01: 23362306a36Sopenharmony_ci vdda_pll_cc_ebi23: 23462306a36Sopenharmony_ci vdda_sp_sensor: 23562306a36Sopenharmony_ci vdda_ufs1_core: 23662306a36Sopenharmony_ci vdda_ufs2_core: 23762306a36Sopenharmony_ci vdda_usb1_ss_core: 23862306a36Sopenharmony_ci vdda_usb2_ss_core: 23962306a36Sopenharmony_ci vreg_l1a_0p875: ldo1 { 24062306a36Sopenharmony_ci regulator-min-microvolt = <880000>; 24162306a36Sopenharmony_ci regulator-max-microvolt = <880000>; 24262306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 24362306a36Sopenharmony_ci }; 24462306a36Sopenharmony_ci 24562306a36Sopenharmony_ci vddpx_10: 24662306a36Sopenharmony_ci vreg_l2a_1p2: ldo2 { 24762306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 24862306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 24962306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 25062306a36Sopenharmony_ci regulator-always-on; 25162306a36Sopenharmony_ci }; 25262306a36Sopenharmony_ci 25362306a36Sopenharmony_ci vreg_l3a_1p0: ldo3 { 25462306a36Sopenharmony_ci regulator-min-microvolt = <1000000>; 25562306a36Sopenharmony_ci regulator-max-microvolt = <1000000>; 25662306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 25762306a36Sopenharmony_ci }; 25862306a36Sopenharmony_ci 25962306a36Sopenharmony_ci vdd_wcss_cx: 26062306a36Sopenharmony_ci vdd_wcss_mx: 26162306a36Sopenharmony_ci vdda_wcss_pll: 26262306a36Sopenharmony_ci vreg_l5a_0p8: ldo5 { 26362306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 26462306a36Sopenharmony_ci regulator-max-microvolt = <800000>; 26562306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 26662306a36Sopenharmony_ci }; 26762306a36Sopenharmony_ci 26862306a36Sopenharmony_ci vddpx_13: 26962306a36Sopenharmony_ci vreg_l6a_1p8: ldo6 { 27062306a36Sopenharmony_ci regulator-min-microvolt = <1856000>; 27162306a36Sopenharmony_ci regulator-max-microvolt = <1856000>; 27262306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 27362306a36Sopenharmony_ci }; 27462306a36Sopenharmony_ci 27562306a36Sopenharmony_ci vreg_l7a_1p8: ldo7 { 27662306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 27762306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 27862306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 27962306a36Sopenharmony_ci }; 28062306a36Sopenharmony_ci 28162306a36Sopenharmony_ci vreg_l8a_1p2: ldo8 { 28262306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 28362306a36Sopenharmony_ci regulator-max-microvolt = <1248000>; 28462306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 28562306a36Sopenharmony_ci }; 28662306a36Sopenharmony_ci 28762306a36Sopenharmony_ci vreg_l9a_1p8: ldo9 { 28862306a36Sopenharmony_ci regulator-min-microvolt = <1704000>; 28962306a36Sopenharmony_ci regulator-max-microvolt = <2928000>; 29062306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 29162306a36Sopenharmony_ci }; 29262306a36Sopenharmony_ci 29362306a36Sopenharmony_ci vreg_l10a_1p8: ldo10 { 29462306a36Sopenharmony_ci regulator-min-microvolt = <1704000>; 29562306a36Sopenharmony_ci regulator-max-microvolt = <2928000>; 29662306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 29762306a36Sopenharmony_ci }; 29862306a36Sopenharmony_ci 29962306a36Sopenharmony_ci vreg_l11a_1p0: ldo11 { 30062306a36Sopenharmony_ci regulator-min-microvolt = <1000000>; 30162306a36Sopenharmony_ci regulator-max-microvolt = <1048000>; 30262306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 30362306a36Sopenharmony_ci }; 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ci vdd_qfprom: 30662306a36Sopenharmony_ci vdd_qfprom_sp: 30762306a36Sopenharmony_ci vdda_apc1_cs_1p8: 30862306a36Sopenharmony_ci vdda_gfx_cs_1p8: 30962306a36Sopenharmony_ci vdda_qrefs_1p8: 31062306a36Sopenharmony_ci vdda_qusb_hs0_1p8: 31162306a36Sopenharmony_ci vddpx_11: 31262306a36Sopenharmony_ci vreg_l12a_1p8: ldo12 { 31362306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 31462306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 31562306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 31662306a36Sopenharmony_ci }; 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ci vddpx_2: 31962306a36Sopenharmony_ci vreg_l13a_2p95: ldo13 { 32062306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 32162306a36Sopenharmony_ci regulator-max-microvolt = <2960000>; 32262306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 32362306a36Sopenharmony_ci }; 32462306a36Sopenharmony_ci 32562306a36Sopenharmony_ci vreg_l14a_1p88: ldo14 { 32662306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 32762306a36Sopenharmony_ci regulator-max-microvolt = <1880000>; 32862306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 32962306a36Sopenharmony_ci }; 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ci vreg_l15a_1p8: ldo15 { 33262306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 33362306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 33462306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 33562306a36Sopenharmony_ci }; 33662306a36Sopenharmony_ci 33762306a36Sopenharmony_ci vreg_l17a_1p3: ldo17 { 33862306a36Sopenharmony_ci regulator-min-microvolt = <1304000>; 33962306a36Sopenharmony_ci regulator-max-microvolt = <1304000>; 34062306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 34162306a36Sopenharmony_ci }; 34262306a36Sopenharmony_ci 34362306a36Sopenharmony_ci vreg_l18a_2p7: ldo18 { 34462306a36Sopenharmony_ci regulator-min-microvolt = <2704000>; 34562306a36Sopenharmony_ci regulator-max-microvolt = <2960000>; 34662306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 34762306a36Sopenharmony_ci }; 34862306a36Sopenharmony_ci 34962306a36Sopenharmony_ci vreg_l20a_2p95: ldo20 { 35062306a36Sopenharmony_ci regulator-min-microvolt = <2704000>; 35162306a36Sopenharmony_ci regulator-max-microvolt = <2960000>; 35262306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 35362306a36Sopenharmony_ci }; 35462306a36Sopenharmony_ci 35562306a36Sopenharmony_ci vreg_l21a_2p95: ldo21 { 35662306a36Sopenharmony_ci regulator-min-microvolt = <2704000>; 35762306a36Sopenharmony_ci regulator-max-microvolt = <2960000>; 35862306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 35962306a36Sopenharmony_ci }; 36062306a36Sopenharmony_ci 36162306a36Sopenharmony_ci vreg_l22a_2p85: ldo22 { 36262306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 36362306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 36462306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 36562306a36Sopenharmony_ci }; 36662306a36Sopenharmony_ci 36762306a36Sopenharmony_ci vreg_l23a_3p3: ldo23 { 36862306a36Sopenharmony_ci regulator-min-microvolt = <3000000>; 36962306a36Sopenharmony_ci regulator-max-microvolt = <3312000>; 37062306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 37162306a36Sopenharmony_ci }; 37262306a36Sopenharmony_ci 37362306a36Sopenharmony_ci vdda_qusb_hs0_3p1: 37462306a36Sopenharmony_ci vreg_l24a_3p075: ldo24 { 37562306a36Sopenharmony_ci regulator-min-microvolt = <3088000>; 37662306a36Sopenharmony_ci regulator-max-microvolt = <3088000>; 37762306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 37862306a36Sopenharmony_ci }; 37962306a36Sopenharmony_ci 38062306a36Sopenharmony_ci vreg_l25a_3p3: ldo25 { 38162306a36Sopenharmony_ci regulator-min-microvolt = <3000000>; 38262306a36Sopenharmony_ci regulator-max-microvolt = <3312000>; 38362306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 38462306a36Sopenharmony_ci }; 38562306a36Sopenharmony_ci 38662306a36Sopenharmony_ci vdda_hp_pcie_1p2: 38762306a36Sopenharmony_ci vdda_hv_ebi0: 38862306a36Sopenharmony_ci vdda_hv_ebi1: 38962306a36Sopenharmony_ci vdda_hv_ebi2: 39062306a36Sopenharmony_ci vdda_hv_ebi3: 39162306a36Sopenharmony_ci vdda_mipi_csi_1p25: 39262306a36Sopenharmony_ci vdda_mipi_dsi0_1p2: 39362306a36Sopenharmony_ci vdda_mipi_dsi1_1p2: 39462306a36Sopenharmony_ci vdda_pcie_1p2: 39562306a36Sopenharmony_ci vdda_ufs1_1p2: 39662306a36Sopenharmony_ci vdda_ufs2_1p2: 39762306a36Sopenharmony_ci vdda_usb1_ss_1p2: 39862306a36Sopenharmony_ci vdda_usb2_ss_1p2: 39962306a36Sopenharmony_ci vreg_l26a_1p2: ldo26 { 40062306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 40162306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 40262306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 40362306a36Sopenharmony_ci }; 40462306a36Sopenharmony_ci 40562306a36Sopenharmony_ci vreg_l28a_3p0: ldo28 { 40662306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 40762306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 40862306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 40962306a36Sopenharmony_ci }; 41062306a36Sopenharmony_ci 41162306a36Sopenharmony_ci vreg_lvs1a_1p8: lvs1 { 41262306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 41362306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 41462306a36Sopenharmony_ci }; 41562306a36Sopenharmony_ci 41662306a36Sopenharmony_ci vreg_lvs2a_1p8: lvs2 { 41762306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 41862306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 41962306a36Sopenharmony_ci }; 42062306a36Sopenharmony_ci }; 42162306a36Sopenharmony_ci 42262306a36Sopenharmony_ci regulators-1 { 42362306a36Sopenharmony_ci compatible = "qcom,pmi8998-rpmh-regulators"; 42462306a36Sopenharmony_ci qcom,pmic-id = "b"; 42562306a36Sopenharmony_ci 42662306a36Sopenharmony_ci vdd-bob-supply = <&vph_pwr>; 42762306a36Sopenharmony_ci 42862306a36Sopenharmony_ci vreg_bob: bob { 42962306a36Sopenharmony_ci regulator-min-microvolt = <3312000>; 43062306a36Sopenharmony_ci regulator-max-microvolt = <3600000>; 43162306a36Sopenharmony_ci regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 43262306a36Sopenharmony_ci regulator-allow-bypass; 43362306a36Sopenharmony_ci }; 43462306a36Sopenharmony_ci }; 43562306a36Sopenharmony_ci 43662306a36Sopenharmony_ci regulators-2 { 43762306a36Sopenharmony_ci compatible = "qcom,pm8005-rpmh-regulators"; 43862306a36Sopenharmony_ci qcom,pmic-id = "c"; 43962306a36Sopenharmony_ci 44062306a36Sopenharmony_ci vdd-s1-supply = <&vph_pwr>; 44162306a36Sopenharmony_ci vdd-s2-supply = <&vph_pwr>; 44262306a36Sopenharmony_ci vdd-s3-supply = <&vph_pwr>; 44362306a36Sopenharmony_ci vdd-s4-supply = <&vph_pwr>; 44462306a36Sopenharmony_ci 44562306a36Sopenharmony_ci vreg_s3c_0p6: smps3 { 44662306a36Sopenharmony_ci regulator-min-microvolt = <600000>; 44762306a36Sopenharmony_ci regulator-max-microvolt = <600000>; 44862306a36Sopenharmony_ci }; 44962306a36Sopenharmony_ci }; 45062306a36Sopenharmony_ci}; 45162306a36Sopenharmony_ci 45262306a36Sopenharmony_ci&cdsp_pas { 45362306a36Sopenharmony_ci status = "okay"; 45462306a36Sopenharmony_ci}; 45562306a36Sopenharmony_ci 45662306a36Sopenharmony_ci&dispcc { 45762306a36Sopenharmony_ci status = "disabled"; 45862306a36Sopenharmony_ci}; 45962306a36Sopenharmony_ci 46062306a36Sopenharmony_ci&gcc { 46162306a36Sopenharmony_ci protected-clocks = <GCC_QSPI_CORE_CLK>, 46262306a36Sopenharmony_ci <GCC_QSPI_CORE_CLK_SRC>, 46362306a36Sopenharmony_ci <GCC_QSPI_CNOC_PERIPH_AHB_CLK>, 46462306a36Sopenharmony_ci <GCC_LPASS_Q6_AXI_CLK>, 46562306a36Sopenharmony_ci <GCC_LPASS_SWAY_CLK>; 46662306a36Sopenharmony_ci}; 46762306a36Sopenharmony_ci 46862306a36Sopenharmony_ci&gpu { 46962306a36Sopenharmony_ci status = "okay"; 47062306a36Sopenharmony_ci 47162306a36Sopenharmony_ci zap-shader { 47262306a36Sopenharmony_ci memory-region = <&gpu_mem>; 47362306a36Sopenharmony_ci }; 47462306a36Sopenharmony_ci}; 47562306a36Sopenharmony_ci 47662306a36Sopenharmony_ci&ipa { 47762306a36Sopenharmony_ci qcom,gsi-loader = "modem"; 47862306a36Sopenharmony_ci status = "okay"; 47962306a36Sopenharmony_ci}; 48062306a36Sopenharmony_ci 48162306a36Sopenharmony_ci&mss_pil { 48262306a36Sopenharmony_ci status = "okay"; 48362306a36Sopenharmony_ci}; 48462306a36Sopenharmony_ci 48562306a36Sopenharmony_ci&pm8998_resin { 48662306a36Sopenharmony_ci linux,code = <KEY_VOLUMEDOWN>; 48762306a36Sopenharmony_ci status = "okay"; 48862306a36Sopenharmony_ci}; 48962306a36Sopenharmony_ci 49062306a36Sopenharmony_ci&sdhc_2 { 49162306a36Sopenharmony_ci status = "okay"; 49262306a36Sopenharmony_ci 49362306a36Sopenharmony_ci cd-gpios = <&tlmm 126 GPIO_ACTIVE_LOW>; 49462306a36Sopenharmony_ci 49562306a36Sopenharmony_ci pinctrl-names = "default"; 49662306a36Sopenharmony_ci pinctrl-0 = <&sdc2_clk &sdc2_cmd &sdc2_data &sd_card_det_n>; 49762306a36Sopenharmony_ci 49862306a36Sopenharmony_ci vmmc-supply = <&vreg_l21a_2p95>; 49962306a36Sopenharmony_ci vqmmc-supply = <&vddpx_2>; 50062306a36Sopenharmony_ci}; 50162306a36Sopenharmony_ci 50262306a36Sopenharmony_ci/* 50362306a36Sopenharmony_ci * UFS works partially and only with clk_ignore_unused. 50462306a36Sopenharmony_ci * Sometimes it crashes with I/O errors. 50562306a36Sopenharmony_ci */ 50662306a36Sopenharmony_ci&ufs_mem_hc { 50762306a36Sopenharmony_ci status = "okay"; 50862306a36Sopenharmony_ci 50962306a36Sopenharmony_ci reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>; 51062306a36Sopenharmony_ci 51162306a36Sopenharmony_ci vcc-supply = <&vreg_l20a_2p95>; 51262306a36Sopenharmony_ci vcc-max-microamp = <600000>; 51362306a36Sopenharmony_ci}; 51462306a36Sopenharmony_ci 51562306a36Sopenharmony_ci&ufs_mem_phy { 51662306a36Sopenharmony_ci status = "okay"; 51762306a36Sopenharmony_ci 51862306a36Sopenharmony_ci vdda-phy-supply = <&vdda_ufs1_core>; 51962306a36Sopenharmony_ci vdda-pll-supply = <&vdda_ufs1_1p2>; 52062306a36Sopenharmony_ci}; 52162306a36Sopenharmony_ci 52262306a36Sopenharmony_ci&usb_1 { 52362306a36Sopenharmony_ci status = "okay"; 52462306a36Sopenharmony_ci}; 52562306a36Sopenharmony_ci 52662306a36Sopenharmony_ci&usb_1_dwc3 { 52762306a36Sopenharmony_ci /* TODO: these devices have usb id pin */ 52862306a36Sopenharmony_ci dr_mode = "peripheral"; 52962306a36Sopenharmony_ci}; 53062306a36Sopenharmony_ci 53162306a36Sopenharmony_ci&usb_1_hsphy { 53262306a36Sopenharmony_ci status = "okay"; 53362306a36Sopenharmony_ci 53462306a36Sopenharmony_ci vdd-supply = <&vdda_usb1_ss_core>; 53562306a36Sopenharmony_ci vdda-pll-supply = <&vdda_qusb_hs0_1p8>; 53662306a36Sopenharmony_ci vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>; 53762306a36Sopenharmony_ci 53862306a36Sopenharmony_ci qcom,imp-res-offset-value = <8>; 53962306a36Sopenharmony_ci qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>; 54062306a36Sopenharmony_ci qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>; 54162306a36Sopenharmony_ci qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>; 54262306a36Sopenharmony_ci}; 54362306a36Sopenharmony_ci 54462306a36Sopenharmony_ci&usb_1_qmpphy { 54562306a36Sopenharmony_ci status = "okay"; 54662306a36Sopenharmony_ci 54762306a36Sopenharmony_ci vdda-phy-supply = <&vdda_usb1_ss_1p2>; 54862306a36Sopenharmony_ci vdda-pll-supply = <&vdda_usb1_ss_core>; 54962306a36Sopenharmony_ci}; 55062306a36Sopenharmony_ci 55162306a36Sopenharmony_ci/* PINCTRL - additions to nodes defined in sdm845.dtsi */ 55262306a36Sopenharmony_ci 55362306a36Sopenharmony_ci&tlmm { 55462306a36Sopenharmony_ci gpio-reserved-ranges = <28 4>, <81 4>; 55562306a36Sopenharmony_ci 55662306a36Sopenharmony_ci sdc2_clk: sdc2-clk-state { 55762306a36Sopenharmony_ci pins = "sdc2_clk"; 55862306a36Sopenharmony_ci bias-disable; 55962306a36Sopenharmony_ci 56062306a36Sopenharmony_ci /* 56162306a36Sopenharmony_ci * It seems that mmc_test reports errors if drive 56262306a36Sopenharmony_ci * strength is not 16 on clk, cmd, and data pins. 56362306a36Sopenharmony_ci * 56462306a36Sopenharmony_ci * TODO: copy-pasted from mtp, try other values 56562306a36Sopenharmony_ci * on these devices. 56662306a36Sopenharmony_ci */ 56762306a36Sopenharmony_ci drive-strength = <16>; 56862306a36Sopenharmony_ci }; 56962306a36Sopenharmony_ci 57062306a36Sopenharmony_ci sdc2_cmd: sdc2-cmd-state { 57162306a36Sopenharmony_ci pins = "sdc2_cmd"; 57262306a36Sopenharmony_ci bias-pull-up; 57362306a36Sopenharmony_ci drive-strength = <16>; 57462306a36Sopenharmony_ci }; 57562306a36Sopenharmony_ci 57662306a36Sopenharmony_ci sdc2_data: sdc2-data-state { 57762306a36Sopenharmony_ci pins = "sdc2_data"; 57862306a36Sopenharmony_ci bias-pull-up; 57962306a36Sopenharmony_ci drive-strength = <16>; 58062306a36Sopenharmony_ci }; 58162306a36Sopenharmony_ci 58262306a36Sopenharmony_ci sd_card_det_n: sd-card-det-n-state { 58362306a36Sopenharmony_ci pins = "gpio126"; 58462306a36Sopenharmony_ci function = "gpio"; 58562306a36Sopenharmony_ci bias-pull-up; 58662306a36Sopenharmony_ci }; 58762306a36Sopenharmony_ci}; 58862306a36Sopenharmony_ci 58962306a36Sopenharmony_ci&pm8998_gpios { 59062306a36Sopenharmony_ci vol_up_pin_a: vol-up-active-state { 59162306a36Sopenharmony_ci pins = "gpio6"; 59262306a36Sopenharmony_ci function = "normal"; 59362306a36Sopenharmony_ci input-enable; 59462306a36Sopenharmony_ci bias-pull-up; 59562306a36Sopenharmony_ci qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>; 59662306a36Sopenharmony_ci }; 59762306a36Sopenharmony_ci}; 598