1249666e3SCaleb Connolly// SPDX-License-Identifier: BSD-3-Clause 2249666e3SCaleb Connolly/* 3249666e3SCaleb Connolly * Copyright (c) 2023, Luca Weiss <luca.weiss@fairphone.com> 4*f68b5d16SCasey Connolly * Copyright (c) 2024, Casey Connolly <casey.connolly@linaro.org> 5249666e3SCaleb Connolly */ 6249666e3SCaleb Connolly 7249666e3SCaleb Connolly/dts-v1/; 8249666e3SCaleb Connolly 9249666e3SCaleb Connolly#define PM7250B_SID 8 10249666e3SCaleb Connolly#define PM7250B_SID1 9 11249666e3SCaleb Connolly 12249666e3SCaleb Connolly#include <dt-bindings/iio/qcom,spmi-adc7-pm7325.h> 13249666e3SCaleb Connolly#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h> 14249666e3SCaleb Connolly#include <dt-bindings/leds/common.h> 15249666e3SCaleb Connolly#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 16249666e3SCaleb Connolly#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 17249666e3SCaleb Connolly#include "sc7280.dtsi" 18249666e3SCaleb Connolly#include "pm7250b.dtsi" 19249666e3SCaleb Connolly#include "pm7325.dtsi" 20249666e3SCaleb Connolly#include "pm8350c.dtsi" /* PM7350C */ 21249666e3SCaleb Connolly#include "pmk8350.dtsi" /* PMK7325 */ 22249666e3SCaleb Connolly 23249666e3SCaleb Connolly/delete-node/ &rmtfs_mem; 24249666e3SCaleb Connolly 25249666e3SCaleb Connolly/ { 26249666e3SCaleb Connolly model = "SHIFT SHIFTphone 8"; 27249666e3SCaleb Connolly compatible = "shift,otter", "qcom,qcm6490"; 28249666e3SCaleb Connolly chassis-type = "handset"; 29249666e3SCaleb Connolly 30249666e3SCaleb Connolly aliases { 31249666e3SCaleb Connolly serial0 = &uart5; 32249666e3SCaleb Connolly serial1 = &uart7; 33249666e3SCaleb Connolly }; 34249666e3SCaleb Connolly 35249666e3SCaleb Connolly chosen { 36249666e3SCaleb Connolly #address-cells = <2>; 37249666e3SCaleb Connolly #size-cells = <2>; 38249666e3SCaleb Connolly ranges; 39249666e3SCaleb Connolly 40249666e3SCaleb Connolly stdout-path = "serial0:115200n8"; 41249666e3SCaleb Connolly 42249666e3SCaleb Connolly framebuffer0: framebuffer@a000000 { 43249666e3SCaleb Connolly compatible = "simple-framebuffer"; 44249666e3SCaleb Connolly reg = <0x0 0xe1000000 0x0 (2400 * 1080 * 4)>; 45249666e3SCaleb Connolly width = <1080>; 46249666e3SCaleb Connolly height = <2400>; 47249666e3SCaleb Connolly stride = <(1080 * 4)>; 48249666e3SCaleb Connolly format = "a8r8g8b8"; 49249666e3SCaleb Connolly clocks = <&gcc GCC_DISP_HF_AXI_CLK>; 50249666e3SCaleb Connolly }; 51249666e3SCaleb Connolly }; 52249666e3SCaleb Connolly 53249666e3SCaleb Connolly gpio-keys { 54249666e3SCaleb Connolly compatible = "gpio-keys"; 55249666e3SCaleb Connolly 56249666e3SCaleb Connolly pinctrl-0 = <&volume_down_default>; 57249666e3SCaleb Connolly pinctrl-names = "default"; 58249666e3SCaleb Connolly 59249666e3SCaleb Connolly key-volume-up { 60249666e3SCaleb Connolly label = "Volume up"; 61249666e3SCaleb Connolly gpios = <&pm7325_gpios 6 GPIO_ACTIVE_LOW>; 62249666e3SCaleb Connolly linux,code = <KEY_VOLUMEUP>; 63249666e3SCaleb Connolly debounce-interval = <15>; 64249666e3SCaleb Connolly }; 65249666e3SCaleb Connolly }; 66249666e3SCaleb Connolly 67249666e3SCaleb Connolly pmic-glink { 68249666e3SCaleb Connolly compatible = "qcom,qcm6490-pmic-glink", "qcom,pmic-glink"; 69249666e3SCaleb Connolly 70249666e3SCaleb Connolly #address-cells = <1>; 71249666e3SCaleb Connolly #size-cells = <0>; 72249666e3SCaleb Connolly 73249666e3SCaleb Connolly connector@0 { 74249666e3SCaleb Connolly compatible = "usb-c-connector"; 75249666e3SCaleb Connolly reg = <0>; 76249666e3SCaleb Connolly power-role = "dual"; 77249666e3SCaleb Connolly data-role = "dual"; 78249666e3SCaleb Connolly 79249666e3SCaleb Connolly ports { 80249666e3SCaleb Connolly #address-cells = <1>; 81249666e3SCaleb Connolly #size-cells = <0>; 82249666e3SCaleb Connolly 83249666e3SCaleb Connolly port@0 { 84249666e3SCaleb Connolly reg = <0>; 85249666e3SCaleb Connolly 86249666e3SCaleb Connolly pmic_glink_hs_in: endpoint { 87249666e3SCaleb Connolly remote-endpoint = <&usb_1_dwc3_hs>; 88249666e3SCaleb Connolly }; 89249666e3SCaleb Connolly }; 90249666e3SCaleb Connolly 91249666e3SCaleb Connolly port@1 { 92249666e3SCaleb Connolly reg = <1>; 93249666e3SCaleb Connolly 94249666e3SCaleb Connolly pmic_glink_ss_in: endpoint { 95249666e3SCaleb Connolly remote-endpoint = <&usb_dp_qmpphy_out>; 96249666e3SCaleb Connolly }; 97249666e3SCaleb Connolly }; 98249666e3SCaleb Connolly 99249666e3SCaleb Connolly port@2 { 100249666e3SCaleb Connolly reg = <2>; 101249666e3SCaleb Connolly 102249666e3SCaleb Connolly pmic_glink_sbu: endpoint { 103249666e3SCaleb Connolly remote-endpoint = <&fsa4480_sbu_mux>; 104249666e3SCaleb Connolly }; 105249666e3SCaleb Connolly }; 106249666e3SCaleb Connolly }; 107249666e3SCaleb Connolly }; 108249666e3SCaleb Connolly }; 109249666e3SCaleb Connolly 110249666e3SCaleb Connolly reserved-memory { 111249666e3SCaleb Connolly cont_splash_mem: cont-splash@e1000000 { 112249666e3SCaleb Connolly reg = <0x0 0xe1000000 0x0 0x2300000>; 113249666e3SCaleb Connolly no-map; 114249666e3SCaleb Connolly }; 115249666e3SCaleb Connolly 116249666e3SCaleb Connolly cdsp_mem: cdsp@88f00000 { 117249666e3SCaleb Connolly reg = <0x0 0x88f00000 0x0 0x1e00000>; 118249666e3SCaleb Connolly no-map; 119249666e3SCaleb Connolly }; 120249666e3SCaleb Connolly 121249666e3SCaleb Connolly rmtfs_mem: rmtfs@f8500000 { 122249666e3SCaleb Connolly compatible = "qcom,rmtfs-mem"; 123249666e3SCaleb Connolly reg = <0x0 0xf8500000 0x0 0x600000>; 124249666e3SCaleb Connolly no-map; 125249666e3SCaleb Connolly 126249666e3SCaleb Connolly qcom,client-id = <1>; 127249666e3SCaleb Connolly qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>, <QCOM_SCM_VMID_NAV>; 128249666e3SCaleb Connolly }; 129249666e3SCaleb Connolly }; 130249666e3SCaleb Connolly 131249666e3SCaleb Connolly thermal-zones { 132249666e3SCaleb Connolly camera-thermal { 133249666e3SCaleb Connolly polling-delay-passive = <0>; 134249666e3SCaleb Connolly polling-delay = <0>; 135249666e3SCaleb Connolly thermal-sensors = <&pmk8350_adc_tm 2>; 136249666e3SCaleb Connolly 137249666e3SCaleb Connolly trips { 138249666e3SCaleb Connolly active-config0 { 139249666e3SCaleb Connolly temperature = <125000>; 140249666e3SCaleb Connolly hysteresis = <1000>; 141249666e3SCaleb Connolly type = "passive"; 142249666e3SCaleb Connolly }; 143249666e3SCaleb Connolly }; 144249666e3SCaleb Connolly }; 145249666e3SCaleb Connolly 146249666e3SCaleb Connolly chg-skin-thermal { 147249666e3SCaleb Connolly polling-delay-passive = <0>; 148249666e3SCaleb Connolly polling-delay = <0>; 149249666e3SCaleb Connolly thermal-sensors = <&pm7250b_adc_tm 0>; 150249666e3SCaleb Connolly 151249666e3SCaleb Connolly trips { 152249666e3SCaleb Connolly active-config0 { 153249666e3SCaleb Connolly temperature = <125000>; 154249666e3SCaleb Connolly hysteresis = <1000>; 155249666e3SCaleb Connolly type = "passive"; 156249666e3SCaleb Connolly }; 157249666e3SCaleb Connolly }; 158249666e3SCaleb Connolly }; 159249666e3SCaleb Connolly 160249666e3SCaleb Connolly conn-thermal { 161249666e3SCaleb Connolly polling-delay-passive = <0>; 162249666e3SCaleb Connolly polling-delay = <0>; 163249666e3SCaleb Connolly thermal-sensors = <&pm7250b_adc_tm 1>; 164249666e3SCaleb Connolly 165249666e3SCaleb Connolly trips { 166249666e3SCaleb Connolly active-config0 { 167249666e3SCaleb Connolly temperature = <125000>; 168249666e3SCaleb Connolly hysteresis = <1000>; 169249666e3SCaleb Connolly type = "passive"; 170249666e3SCaleb Connolly }; 171249666e3SCaleb Connolly }; 172249666e3SCaleb Connolly }; 173249666e3SCaleb Connolly 174249666e3SCaleb Connolly quiet-thermal { 175249666e3SCaleb Connolly polling-delay-passive = <0>; 176249666e3SCaleb Connolly polling-delay = <0>; 177249666e3SCaleb Connolly thermal-sensors = <&pmk8350_adc_tm 1>; 178249666e3SCaleb Connolly 179249666e3SCaleb Connolly trips { 180249666e3SCaleb Connolly active-config0 { 181249666e3SCaleb Connolly temperature = <125000>; 182249666e3SCaleb Connolly hysteresis = <1000>; 183249666e3SCaleb Connolly type = "passive"; 184249666e3SCaleb Connolly }; 185249666e3SCaleb Connolly }; 186249666e3SCaleb Connolly }; 187249666e3SCaleb Connolly 188249666e3SCaleb Connolly rear-cam-thermal { 189249666e3SCaleb Connolly polling-delay-passive = <0>; 190249666e3SCaleb Connolly polling-delay = <0>; 191249666e3SCaleb Connolly thermal-sensors = <&pmk8350_adc_tm 4>; 192249666e3SCaleb Connolly 193249666e3SCaleb Connolly trips { 194249666e3SCaleb Connolly active-config0 { 195249666e3SCaleb Connolly temperature = <125000>; 196249666e3SCaleb Connolly hysteresis = <1000>; 197249666e3SCaleb Connolly type = "passive"; 198249666e3SCaleb Connolly }; 199249666e3SCaleb Connolly }; 200249666e3SCaleb Connolly }; 201249666e3SCaleb Connolly 202249666e3SCaleb Connolly sdm-skin-thermal { 203249666e3SCaleb Connolly polling-delay-passive = <0>; 204249666e3SCaleb Connolly polling-delay = <0>; 205249666e3SCaleb Connolly thermal-sensors = <&pmk8350_adc_tm 3>; 206249666e3SCaleb Connolly 207249666e3SCaleb Connolly trips { 208249666e3SCaleb Connolly active-config0 { 209249666e3SCaleb Connolly temperature = <125000>; 210249666e3SCaleb Connolly hysteresis = <1000>; 211249666e3SCaleb Connolly type = "passive"; 212249666e3SCaleb Connolly }; 213249666e3SCaleb Connolly }; 214249666e3SCaleb Connolly }; 215249666e3SCaleb Connolly 216249666e3SCaleb Connolly xo-thermal { 217249666e3SCaleb Connolly polling-delay-passive = <0>; 218249666e3SCaleb Connolly polling-delay = <0>; 219249666e3SCaleb Connolly thermal-sensors = <&pmk8350_adc_tm 0>; 220249666e3SCaleb Connolly 221249666e3SCaleb Connolly trips { 222249666e3SCaleb Connolly active-config0 { 223249666e3SCaleb Connolly temperature = <125000>; 224249666e3SCaleb Connolly hysteresis = <1000>; 225249666e3SCaleb Connolly type = "passive"; 226249666e3SCaleb Connolly }; 227249666e3SCaleb Connolly }; 228249666e3SCaleb Connolly }; 229249666e3SCaleb Connolly }; 230249666e3SCaleb Connolly}; 231249666e3SCaleb Connolly 232249666e3SCaleb Connolly&apps_rsc { 233249666e3SCaleb Connolly regulators-0 { 234249666e3SCaleb Connolly compatible = "qcom,pm7325-rpmh-regulators"; 235249666e3SCaleb Connolly qcom,pmic-id = "b"; 236249666e3SCaleb Connolly 237249666e3SCaleb Connolly vreg_s1b: smps1 { 238e160c41bSLuca Weiss regulator-name = "vreg_s1b"; 239249666e3SCaleb Connolly regulator-min-microvolt = <1840000>; 240249666e3SCaleb Connolly regulator-max-microvolt = <2040000>; 241249666e3SCaleb Connolly }; 242249666e3SCaleb Connolly 243249666e3SCaleb Connolly vreg_s7b: smps7 { 244e160c41bSLuca Weiss regulator-name = "vreg_s7b"; 245249666e3SCaleb Connolly regulator-min-microvolt = <535000>; 246249666e3SCaleb Connolly regulator-max-microvolt = <1120000>; 247249666e3SCaleb Connolly }; 248249666e3SCaleb Connolly 249249666e3SCaleb Connolly vreg_s8b: smps8 { 250e160c41bSLuca Weiss regulator-name = "vreg_s8b"; 251249666e3SCaleb Connolly regulator-min-microvolt = <1200000>; 252249666e3SCaleb Connolly regulator-max-microvolt = <1500000>; 253249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_RET>; 254249666e3SCaleb Connolly }; 255249666e3SCaleb Connolly 256249666e3SCaleb Connolly vreg_l1b: ldo1 { 257e160c41bSLuca Weiss regulator-name = "vreg_l1b"; 258249666e3SCaleb Connolly regulator-min-microvolt = <825000>; 259249666e3SCaleb Connolly regulator-max-microvolt = <925000>; 260249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 261249666e3SCaleb Connolly }; 262249666e3SCaleb Connolly 263249666e3SCaleb Connolly vreg_l2b: ldo2 { 264e160c41bSLuca Weiss regulator-name = "vreg_l2b"; 265249666e3SCaleb Connolly regulator-min-microvolt = <2700000>; 266249666e3SCaleb Connolly regulator-max-microvolt = <3544000>; 267249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 268249666e3SCaleb Connolly }; 269249666e3SCaleb Connolly 270249666e3SCaleb Connolly vreg_l3b: ldo3 { 271e160c41bSLuca Weiss regulator-name = "vreg_l3b"; 272249666e3SCaleb Connolly regulator-min-microvolt = <312000>; 273249666e3SCaleb Connolly regulator-max-microvolt = <910000>; 274249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 275249666e3SCaleb Connolly }; 276249666e3SCaleb Connolly 277249666e3SCaleb Connolly vreg_l6b: ldo6 { 278e160c41bSLuca Weiss regulator-name = "vreg_l6b"; 279249666e3SCaleb Connolly regulator-min-microvolt = <1140000>; 280249666e3SCaleb Connolly regulator-max-microvolt = <1260000>; 281249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 282249666e3SCaleb Connolly }; 283249666e3SCaleb Connolly 284249666e3SCaleb Connolly vreg_l7b: ldo7 { 285e160c41bSLuca Weiss regulator-name = "vreg_l7b"; 286249666e3SCaleb Connolly /* Constrained for UFS VCC, at least until UFS driver scales voltage */ 287249666e3SCaleb Connolly regulator-min-microvolt = <2952000>; 288249666e3SCaleb Connolly regulator-max-microvolt = <2952000>; 289249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 290249666e3SCaleb Connolly }; 291249666e3SCaleb Connolly 292249666e3SCaleb Connolly vreg_l8b: ldo8 { 293e160c41bSLuca Weiss regulator-name = "vreg_l8b"; 294249666e3SCaleb Connolly regulator-min-microvolt = <870000>; 295249666e3SCaleb Connolly regulator-max-microvolt = <970000>; 296249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 297249666e3SCaleb Connolly }; 298249666e3SCaleb Connolly 299249666e3SCaleb Connolly vreg_l9b: ldo9 { 300e160c41bSLuca Weiss regulator-name = "vreg_l9b"; 301249666e3SCaleb Connolly regulator-min-microvolt = <1200000>; 302249666e3SCaleb Connolly regulator-max-microvolt = <1304000>; 303249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 304249666e3SCaleb Connolly }; 305249666e3SCaleb Connolly 306249666e3SCaleb Connolly vreg_l11b: ldo11 { 307e160c41bSLuca Weiss regulator-name = "vreg_l11b"; 308249666e3SCaleb Connolly regulator-min-microvolt = <1504000>; 309249666e3SCaleb Connolly regulator-max-microvolt = <2000000>; 310249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 311249666e3SCaleb Connolly }; 312249666e3SCaleb Connolly 313249666e3SCaleb Connolly vreg_l12b: ldo12 { 314e160c41bSLuca Weiss regulator-name = "vreg_l12b"; 315249666e3SCaleb Connolly regulator-min-microvolt = <751000>; 316249666e3SCaleb Connolly regulator-max-microvolt = <824000>; 317249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 318249666e3SCaleb Connolly }; 319249666e3SCaleb Connolly 320249666e3SCaleb Connolly vreg_l13b: ldo13 { 321e160c41bSLuca Weiss regulator-name = "vreg_l13b"; 322249666e3SCaleb Connolly regulator-min-microvolt = <530000>; 323249666e3SCaleb Connolly regulator-max-microvolt = <824000>; 324249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 325249666e3SCaleb Connolly }; 326249666e3SCaleb Connolly 327249666e3SCaleb Connolly vreg_l14b: ldo14 { 328e160c41bSLuca Weiss regulator-name = "vreg_l14b"; 329249666e3SCaleb Connolly regulator-min-microvolt = <1080000>; 330249666e3SCaleb Connolly regulator-max-microvolt = <1304000>; 331249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 332249666e3SCaleb Connolly }; 333249666e3SCaleb Connolly 334249666e3SCaleb Connolly vreg_l15b: ldo15 { 335e160c41bSLuca Weiss regulator-name = "vreg_l15b"; 336249666e3SCaleb Connolly regulator-min-microvolt = <765000>; 337249666e3SCaleb Connolly regulator-max-microvolt = <1020000>; 338249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 339249666e3SCaleb Connolly }; 340249666e3SCaleb Connolly 341249666e3SCaleb Connolly vreg_l16b: ldo16 { 342e160c41bSLuca Weiss regulator-name = "vreg_l16b"; 343249666e3SCaleb Connolly regulator-min-microvolt = <1100000>; 344249666e3SCaleb Connolly regulator-max-microvolt = <1300000>; 345249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 346249666e3SCaleb Connolly }; 347249666e3SCaleb Connolly 348249666e3SCaleb Connolly vreg_l17b: ldo17 { 349e160c41bSLuca Weiss regulator-name = "vreg_l17b"; 350249666e3SCaleb Connolly regulator-min-microvolt = <1700000>; 351249666e3SCaleb Connolly regulator-max-microvolt = <1900000>; 352249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 353249666e3SCaleb Connolly }; 354249666e3SCaleb Connolly 355249666e3SCaleb Connolly vreg_l18b: ldo18 { 356e160c41bSLuca Weiss regulator-name = "vreg_l18b"; 357249666e3SCaleb Connolly regulator-min-microvolt = <1800000>; 358249666e3SCaleb Connolly regulator-max-microvolt = <2000000>; 359249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 360249666e3SCaleb Connolly }; 361249666e3SCaleb Connolly 362249666e3SCaleb Connolly vreg_l19b: ldo19 { 363e160c41bSLuca Weiss regulator-name = "vreg_l19b"; 364249666e3SCaleb Connolly regulator-min-microvolt = <1800000>; 365249666e3SCaleb Connolly regulator-max-microvolt = <2000000>; 366249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 367249666e3SCaleb Connolly }; 368249666e3SCaleb Connolly }; 369249666e3SCaleb Connolly 370249666e3SCaleb Connolly regulators-1 { 371249666e3SCaleb Connolly compatible = "qcom,pm8350c-rpmh-regulators"; 372249666e3SCaleb Connolly qcom,pmic-id = "c"; 373249666e3SCaleb Connolly 374249666e3SCaleb Connolly vreg_s1c: smps1 { 375e160c41bSLuca Weiss regulator-name = "vreg_s1c"; 376249666e3SCaleb Connolly regulator-min-microvolt = <2190000>; 377249666e3SCaleb Connolly regulator-max-microvolt = <2210000>; 378249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 379249666e3SCaleb Connolly }; 380249666e3SCaleb Connolly 381249666e3SCaleb Connolly vreg_s9c: smps9 { 382e160c41bSLuca Weiss regulator-name = "vreg_s9c"; 383249666e3SCaleb Connolly regulator-min-microvolt = <1010000>; 384249666e3SCaleb Connolly regulator-max-microvolt = <1170000>; 385249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 386249666e3SCaleb Connolly }; 387249666e3SCaleb Connolly 388249666e3SCaleb Connolly vreg_l1c: ldo1 { 389e160c41bSLuca Weiss regulator-name = "vreg_l1c"; 390249666e3SCaleb Connolly regulator-min-microvolt = <1800000>; 391249666e3SCaleb Connolly regulator-max-microvolt = <1980000>; 392249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 393249666e3SCaleb Connolly }; 394249666e3SCaleb Connolly 395249666e3SCaleb Connolly vreg_l2c: ldo2 { 396e160c41bSLuca Weiss regulator-name = "vreg_l2c"; 397249666e3SCaleb Connolly regulator-min-microvolt = <1800000>; 398249666e3SCaleb Connolly regulator-max-microvolt = <1950000>; 399249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 400249666e3SCaleb Connolly }; 401249666e3SCaleb Connolly 402249666e3SCaleb Connolly vreg_l3c: ldo3 { 403e160c41bSLuca Weiss regulator-name = "vreg_l3c"; 404249666e3SCaleb Connolly regulator-min-microvolt = <3000000>; 405249666e3SCaleb Connolly regulator-max-microvolt = <3400000>; 406249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 407249666e3SCaleb Connolly }; 408249666e3SCaleb Connolly 409249666e3SCaleb Connolly vreg_l4c: ldo4 { 410e160c41bSLuca Weiss regulator-name = "vreg_l4c"; 411249666e3SCaleb Connolly regulator-min-microvolt = <1620000>; 412249666e3SCaleb Connolly regulator-max-microvolt = <3300000>; 413249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 414249666e3SCaleb Connolly }; 415249666e3SCaleb Connolly 416249666e3SCaleb Connolly vreg_l5c: ldo5 { 417e160c41bSLuca Weiss regulator-name = "vreg_l5c"; 418249666e3SCaleb Connolly regulator-min-microvolt = <1620000>; 419249666e3SCaleb Connolly regulator-max-microvolt = <3300000>; 420249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 421249666e3SCaleb Connolly }; 422249666e3SCaleb Connolly 423249666e3SCaleb Connolly vreg_l6c: ldo6 { 424e160c41bSLuca Weiss regulator-name = "vreg_l6c"; 425249666e3SCaleb Connolly regulator-min-microvolt = <1650000>; 426249666e3SCaleb Connolly regulator-max-microvolt = <3544000>; 427249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 428249666e3SCaleb Connolly }; 429249666e3SCaleb Connolly 430249666e3SCaleb Connolly vreg_l7c: ldo7 { 431e160c41bSLuca Weiss regulator-name = "vreg_l7c"; 432249666e3SCaleb Connolly regulator-min-microvolt = <3000000>; 433249666e3SCaleb Connolly regulator-max-microvolt = <3544000>; 434249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 435249666e3SCaleb Connolly }; 436249666e3SCaleb Connolly 437249666e3SCaleb Connolly vreg_l8c: ldo8 { 438e160c41bSLuca Weiss regulator-name = "vreg_l8c"; 439249666e3SCaleb Connolly regulator-min-microvolt = <1620000>; 440249666e3SCaleb Connolly regulator-max-microvolt = <2000000>; 441249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 442249666e3SCaleb Connolly }; 443249666e3SCaleb Connolly 444249666e3SCaleb Connolly vreg_l9c: ldo9 { 445e160c41bSLuca Weiss regulator-name = "vreg_l9c"; 446249666e3SCaleb Connolly regulator-min-microvolt = <2700000>; 447249666e3SCaleb Connolly regulator-max-microvolt = <3544000>; 448249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 449249666e3SCaleb Connolly }; 450249666e3SCaleb Connolly 451249666e3SCaleb Connolly vreg_l10c: ldo10 { 452e160c41bSLuca Weiss regulator-name = "vreg_l10c"; 453249666e3SCaleb Connolly regulator-min-microvolt = <720000>; 454249666e3SCaleb Connolly regulator-max-microvolt = <1050000>; 455249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 456249666e3SCaleb Connolly }; 457249666e3SCaleb Connolly 458249666e3SCaleb Connolly vreg_l11c: ldo11 { 459e160c41bSLuca Weiss regulator-name = "vreg_l11c"; 460249666e3SCaleb Connolly regulator-min-microvolt = <2800000>; 461249666e3SCaleb Connolly regulator-max-microvolt = <3544000>; 462249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 463249666e3SCaleb Connolly }; 464249666e3SCaleb Connolly 465249666e3SCaleb Connolly vreg_l12c: ldo12 { 466e160c41bSLuca Weiss regulator-name = "vreg_l12c"; 467249666e3SCaleb Connolly regulator-min-microvolt = <1650000>; 468249666e3SCaleb Connolly regulator-max-microvolt = <2000000>; 469249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 470249666e3SCaleb Connolly }; 471249666e3SCaleb Connolly 472249666e3SCaleb Connolly vreg_l13c: ldo13 { 473e160c41bSLuca Weiss regulator-name = "vreg_l13c"; 474249666e3SCaleb Connolly regulator-min-microvolt = <2700000>; 475249666e3SCaleb Connolly regulator-max-microvolt = <3544000>; 476249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 477249666e3SCaleb Connolly }; 478249666e3SCaleb Connolly 479249666e3SCaleb Connolly vreg_bob: bob { 480e160c41bSLuca Weiss regulator-name = "vreg_bob"; 481249666e3SCaleb Connolly regulator-min-microvolt = <3008000>; 482249666e3SCaleb Connolly regulator-max-microvolt = <3960000>; 483249666e3SCaleb Connolly regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 484249666e3SCaleb Connolly }; 485249666e3SCaleb Connolly }; 486249666e3SCaleb Connolly}; 487249666e3SCaleb Connolly 488249666e3SCaleb Connolly&gcc { 489249666e3SCaleb Connolly protected-clocks = <GCC_CFG_NOC_LPASS_CLK>, 490249666e3SCaleb Connolly <GCC_EDP_CLKREF_EN>, 491249666e3SCaleb Connolly <GCC_MSS_CFG_AHB_CLK>, 492249666e3SCaleb Connolly <GCC_MSS_GPLL0_MAIN_DIV_CLK_SRC>, 493249666e3SCaleb Connolly <GCC_MSS_OFFLINE_AXI_CLK>, 494249666e3SCaleb Connolly <GCC_MSS_Q6SS_BOOT_CLK_SRC>, 495249666e3SCaleb Connolly <GCC_MSS_Q6_MEMNOC_AXI_CLK>, 496249666e3SCaleb Connolly <GCC_MSS_SNOC_AXI_CLK>, 497249666e3SCaleb Connolly <GCC_QSPI_CNOC_PERIPH_AHB_CLK>, 498249666e3SCaleb Connolly <GCC_QSPI_CORE_CLK>, 499249666e3SCaleb Connolly <GCC_QSPI_CORE_CLK_SRC>, 500249666e3SCaleb Connolly <GCC_SEC_CTRL_CLK_SRC>, 501249666e3SCaleb Connolly <GCC_WPSS_AHB_BDG_MST_CLK>, 502249666e3SCaleb Connolly <GCC_WPSS_AHB_CLK>, 503249666e3SCaleb Connolly <GCC_WPSS_RSCP_CLK>; 504249666e3SCaleb Connolly}; 505249666e3SCaleb Connolly 506249666e3SCaleb Connolly&gpi_dma0 { 507249666e3SCaleb Connolly status = "okay"; 508249666e3SCaleb Connolly}; 509249666e3SCaleb Connolly 510249666e3SCaleb Connolly&gpi_dma1 { 511249666e3SCaleb Connolly status = "okay"; 512249666e3SCaleb Connolly}; 513249666e3SCaleb Connolly 514249666e3SCaleb Connolly&gpu { 515249666e3SCaleb Connolly status = "okay"; 516249666e3SCaleb Connolly}; 517249666e3SCaleb Connolly 518249666e3SCaleb Connolly&gpu_zap_shader { 519249666e3SCaleb Connolly firmware-name = "qcom/qcm6490/SHIFT/otter/a660_zap.mbn"; 520249666e3SCaleb Connolly}; 521249666e3SCaleb Connolly 522249666e3SCaleb Connolly&i2c1 { 523249666e3SCaleb Connolly status = "okay"; 524249666e3SCaleb Connolly 525249666e3SCaleb Connolly /* PM8008 PMIC @ 8 and 9 */ 526249666e3SCaleb Connolly /* rtc6226 FM receiver @ 64 */ 527249666e3SCaleb Connolly 528249666e3SCaleb Connolly typec-mux@42 { 529249666e3SCaleb Connolly compatible = "fcs,fsa4480"; 530249666e3SCaleb Connolly reg = <0x42>; 531249666e3SCaleb Connolly 532249666e3SCaleb Connolly vcc-supply = <&vreg_bob>; 533249666e3SCaleb Connolly 534249666e3SCaleb Connolly mode-switch; 535249666e3SCaleb Connolly orientation-switch; 536249666e3SCaleb Connolly 537249666e3SCaleb Connolly port { 538249666e3SCaleb Connolly fsa4480_sbu_mux: endpoint { 539249666e3SCaleb Connolly remote-endpoint = <&pmic_glink_sbu>; 540249666e3SCaleb Connolly }; 541249666e3SCaleb Connolly }; 542249666e3SCaleb Connolly }; 543249666e3SCaleb Connolly}; 544249666e3SCaleb Connolly 545249666e3SCaleb Connolly&i2c4 { 546249666e3SCaleb Connolly status = "okay"; 547249666e3SCaleb Connolly 548249666e3SCaleb Connolly /* tas2563 audio codec @ 4d */ 549249666e3SCaleb Connolly}; 550249666e3SCaleb Connolly 551249666e3SCaleb Connolly&i2c9 { 552249666e3SCaleb Connolly status = "okay"; 553249666e3SCaleb Connolly 554249666e3SCaleb Connolly /* TMS(?) NFC @ 28 */ 555249666e3SCaleb Connolly /* Ti drv2624 haptics @ 5a */ 556249666e3SCaleb Connolly}; 557249666e3SCaleb Connolly 558249666e3SCaleb Connolly&i2c13 { 559249666e3SCaleb Connolly status = "okay"; 560249666e3SCaleb Connolly 561249666e3SCaleb Connolly /* focaltech FT3658U @ 38 */ 562249666e3SCaleb Connolly}; 563249666e3SCaleb Connolly 564249666e3SCaleb Connolly&ipa { 565249666e3SCaleb Connolly qcom,gsi-loader = "self"; 566249666e3SCaleb Connolly memory-region = <&ipa_fw_mem>; 567249666e3SCaleb Connolly firmware-name = "qcom/qcm6490/SHIFT/otter/ipa_fws.mbn"; 568249666e3SCaleb Connolly status = "okay"; 569249666e3SCaleb Connolly}; 570249666e3SCaleb Connolly 571249666e3SCaleb Connolly&pm7250b_adc { 572249666e3SCaleb Connolly channel@4d { 573249666e3SCaleb Connolly reg = <ADC5_AMUX_THM1_100K_PU>; 574249666e3SCaleb Connolly qcom,ratiometric; 575249666e3SCaleb Connolly qcom,hw-settle-time = <200>; 576249666e3SCaleb Connolly qcom,pre-scaling = <1 1>; 577249666e3SCaleb Connolly label = "charger_skin_therm"; 578249666e3SCaleb Connolly }; 579249666e3SCaleb Connolly 580249666e3SCaleb Connolly channel@4f { 581249666e3SCaleb Connolly reg = <ADC5_AMUX_THM3_100K_PU>; 582249666e3SCaleb Connolly qcom,ratiometric; 583249666e3SCaleb Connolly qcom,hw-settle-time = <200>; 584249666e3SCaleb Connolly qcom,pre-scaling = <1 1>; 585249666e3SCaleb Connolly label = "conn_therm"; 586249666e3SCaleb Connolly }; 587249666e3SCaleb Connolly}; 588249666e3SCaleb Connolly 589249666e3SCaleb Connolly&pm7250b_adc_tm { 590249666e3SCaleb Connolly status = "okay"; 591249666e3SCaleb Connolly 592249666e3SCaleb Connolly charger-skin-therm@0 { 593249666e3SCaleb Connolly reg = <0>; 594249666e3SCaleb Connolly io-channels = <&pm7250b_adc ADC5_AMUX_THM1_100K_PU>; 595249666e3SCaleb Connolly qcom,ratiometric; 596249666e3SCaleb Connolly qcom,hw-settle-time-us = <200>; 597249666e3SCaleb Connolly }; 598249666e3SCaleb Connolly 599249666e3SCaleb Connolly conn-therm@1 { 600249666e3SCaleb Connolly reg = <1>; 601249666e3SCaleb Connolly io-channels = <&pm7250b_adc ADC5_AMUX_THM3_100K_PU>; 602249666e3SCaleb Connolly qcom,ratiometric; 603249666e3SCaleb Connolly qcom,hw-settle-time-us = <200>; 604249666e3SCaleb Connolly }; 605249666e3SCaleb Connolly}; 606249666e3SCaleb Connolly 607249666e3SCaleb Connolly&pm7325_gpios { 608249666e3SCaleb Connolly volume_down_default: volume-down-default-state { 609249666e3SCaleb Connolly pins = "gpio6"; 610249666e3SCaleb Connolly function = PMIC_GPIO_FUNC_NORMAL; 611249666e3SCaleb Connolly power-source = <1>; 612249666e3SCaleb Connolly bias-pull-up; 613249666e3SCaleb Connolly input-enable; 614249666e3SCaleb Connolly }; 615249666e3SCaleb Connolly}; 616249666e3SCaleb Connolly 617249666e3SCaleb Connolly&pmk8350_adc_tm { 618249666e3SCaleb Connolly status = "okay"; 619249666e3SCaleb Connolly 620249666e3SCaleb Connolly xo-therm@0 { 621249666e3SCaleb Connolly reg = <0>; 622249666e3SCaleb Connolly io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>; 623249666e3SCaleb Connolly qcom,ratiometric; 624249666e3SCaleb Connolly qcom,hw-settle-time-us = <200>; 625249666e3SCaleb Connolly }; 626249666e3SCaleb Connolly 627249666e3SCaleb Connolly quiet-therm@1 { 628249666e3SCaleb Connolly reg = <1>; 629249666e3SCaleb Connolly io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM1_100K_PU>; 630249666e3SCaleb Connolly qcom,ratiometric; 631249666e3SCaleb Connolly qcom,hw-settle-time-us = <200>; 632249666e3SCaleb Connolly }; 633249666e3SCaleb Connolly 634249666e3SCaleb Connolly cam-flash-therm@2 { 635249666e3SCaleb Connolly reg = <2>; 636249666e3SCaleb Connolly io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM2_100K_PU>; 637249666e3SCaleb Connolly qcom,ratiometric; 638249666e3SCaleb Connolly qcom,hw-settle-time-us = <200>; 639249666e3SCaleb Connolly }; 640249666e3SCaleb Connolly 641249666e3SCaleb Connolly sdm-skin-therm@3 { 642249666e3SCaleb Connolly reg = <3>; 643249666e3SCaleb Connolly io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM3_100K_PU>; 644249666e3SCaleb Connolly qcom,ratiometric; 645249666e3SCaleb Connolly qcom,hw-settle-time-us = <200>; 646249666e3SCaleb Connolly }; 647249666e3SCaleb Connolly 648249666e3SCaleb Connolly wide-rfc-therm@4 { 649249666e3SCaleb Connolly reg = <4>; 650249666e3SCaleb Connolly io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM4_100K_PU>; 651249666e3SCaleb Connolly qcom,ratiometric; 652249666e3SCaleb Connolly qcom,hw-settle-time-us = <200>; 653249666e3SCaleb Connolly }; 654249666e3SCaleb Connolly}; 655249666e3SCaleb Connolly 656249666e3SCaleb Connolly&pmk8350_rtc { 657249666e3SCaleb Connolly status = "okay"; 658249666e3SCaleb Connolly}; 659249666e3SCaleb Connolly 660249666e3SCaleb Connolly&pmk8350_vadc { 661249666e3SCaleb Connolly status = "okay"; 662249666e3SCaleb Connolly 663249666e3SCaleb Connolly channel@44 { 664249666e3SCaleb Connolly reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>; 665249666e3SCaleb Connolly qcom,ratiometric; 666249666e3SCaleb Connolly qcom,hw-settle-time = <200>; 667249666e3SCaleb Connolly qcom,pre-scaling = <1 1>; 668249666e3SCaleb Connolly label = "pmk8350_xo_therm"; 669249666e3SCaleb Connolly }; 670249666e3SCaleb Connolly 671249666e3SCaleb Connolly channel@144 { 672249666e3SCaleb Connolly reg = <PM7325_ADC7_AMUX_THM1_100K_PU>; 673249666e3SCaleb Connolly qcom,ratiometric; 674249666e3SCaleb Connolly qcom,hw-settle-time = <200>; 675249666e3SCaleb Connolly qcom,pre-scaling = <1 1>; 676249666e3SCaleb Connolly label = "pm7325_quiet_therm"; 677249666e3SCaleb Connolly }; 678249666e3SCaleb Connolly 679249666e3SCaleb Connolly channel@145 { 680249666e3SCaleb Connolly reg = <PM7325_ADC7_AMUX_THM2_100K_PU>; 681249666e3SCaleb Connolly qcom,ratiometric; 682249666e3SCaleb Connolly qcom,hw-settle-time = <200>; 683249666e3SCaleb Connolly qcom,pre-scaling = <1 1>; 684249666e3SCaleb Connolly label = "pm7325_cam_flash_therm"; 685249666e3SCaleb Connolly }; 686249666e3SCaleb Connolly 687249666e3SCaleb Connolly channel@146 { 688249666e3SCaleb Connolly reg = <PM7325_ADC7_AMUX_THM3_100K_PU>; 689249666e3SCaleb Connolly qcom,ratiometric; 690249666e3SCaleb Connolly qcom,hw-settle-time = <200>; 691249666e3SCaleb Connolly qcom,pre-scaling = <1 1>; 692249666e3SCaleb Connolly label = "pm7325_sdm_skin_therm"; 693249666e3SCaleb Connolly }; 694249666e3SCaleb Connolly 695249666e3SCaleb Connolly channel@147 { 696249666e3SCaleb Connolly reg = <PM7325_ADC7_AMUX_THM4_100K_PU>; 697249666e3SCaleb Connolly qcom,ratiometric; 698249666e3SCaleb Connolly qcom,hw-settle-time = <200>; 699249666e3SCaleb Connolly qcom,pre-scaling = <1 1>; 700249666e3SCaleb Connolly label = "pm7325_wide_rfc_therm"; 701249666e3SCaleb Connolly }; 702249666e3SCaleb Connolly}; 703249666e3SCaleb Connolly 704249666e3SCaleb Connolly&pon_pwrkey { 705249666e3SCaleb Connolly status = "okay"; 706249666e3SCaleb Connolly}; 707249666e3SCaleb Connolly 708249666e3SCaleb Connolly&pon_resin { 709249666e3SCaleb Connolly linux,code = <KEY_VOLUMEDOWN>; 710249666e3SCaleb Connolly status = "okay"; 711249666e3SCaleb Connolly}; 712249666e3SCaleb Connolly 713249666e3SCaleb Connolly&qup_spi13_cs { 714249666e3SCaleb Connolly drive-strength = <6>; 715249666e3SCaleb Connolly bias-disable; 716249666e3SCaleb Connolly}; 717249666e3SCaleb Connolly 718249666e3SCaleb Connolly&qup_spi13_data_clk { 719249666e3SCaleb Connolly drive-strength = <6>; 720249666e3SCaleb Connolly bias-disable; 721249666e3SCaleb Connolly}; 722249666e3SCaleb Connolly 723249666e3SCaleb Connolly&qup_uart5_rx { 724249666e3SCaleb Connolly drive-strength = <2>; 725249666e3SCaleb Connolly bias-disable; 726249666e3SCaleb Connolly}; 727249666e3SCaleb Connolly 728249666e3SCaleb Connolly&qup_uart5_tx { 729249666e3SCaleb Connolly drive-strength = <2>; 730249666e3SCaleb Connolly bias-disable; 731249666e3SCaleb Connolly}; 732249666e3SCaleb Connolly 733249666e3SCaleb Connolly&qupv3_id_0 { 734249666e3SCaleb Connolly status = "okay"; 735249666e3SCaleb Connolly}; 736249666e3SCaleb Connolly 737249666e3SCaleb Connolly&qupv3_id_1 { 738249666e3SCaleb Connolly status = "okay"; 739249666e3SCaleb Connolly}; 740249666e3SCaleb Connolly 741249666e3SCaleb Connolly&remoteproc_adsp { 742249666e3SCaleb Connolly firmware-name = "qcom/qcm6490/SHIFT/otter/adsp.mbn"; 743249666e3SCaleb Connolly status = "okay"; 744249666e3SCaleb Connolly}; 745249666e3SCaleb Connolly 746249666e3SCaleb Connolly&remoteproc_cdsp { 747249666e3SCaleb Connolly firmware-name = "qcom/qcm6490/SHIFT/otter/cdsp.mbn"; 748249666e3SCaleb Connolly status = "okay"; 749249666e3SCaleb Connolly}; 750249666e3SCaleb Connolly 751249666e3SCaleb Connolly&remoteproc_mpss { 752249666e3SCaleb Connolly firmware-name = "qcom/qcm6490/SHIFT/otter/modem.mbn"; 753249666e3SCaleb Connolly status = "okay"; 754249666e3SCaleb Connolly}; 755249666e3SCaleb Connolly 756249666e3SCaleb Connolly&remoteproc_wpss { 757249666e3SCaleb Connolly firmware-name = "qcom/qcm6490/SHIFT/otter/wpss.mbn"; 758249666e3SCaleb Connolly status = "okay"; 759249666e3SCaleb Connolly}; 760249666e3SCaleb Connolly 761249666e3SCaleb Connolly&sdc2_clk { 762249666e3SCaleb Connolly drive-strength = <16>; 763249666e3SCaleb Connolly bias-disable; 764249666e3SCaleb Connolly}; 765249666e3SCaleb Connolly 766249666e3SCaleb Connolly&sdc2_cmd { 767249666e3SCaleb Connolly drive-strength = <10>; 768249666e3SCaleb Connolly bias-pull-up; 769249666e3SCaleb Connolly}; 770249666e3SCaleb Connolly 771249666e3SCaleb Connolly&sdc2_data { 772249666e3SCaleb Connolly drive-strength = <10>; 773249666e3SCaleb Connolly bias-pull-up; 774249666e3SCaleb Connolly}; 775249666e3SCaleb Connolly 776249666e3SCaleb Connolly&sdhc_2 { 777249666e3SCaleb Connolly vmmc-supply = <&vreg_l9c>; 778249666e3SCaleb Connolly vqmmc-supply = <&vreg_l6c>; 779249666e3SCaleb Connolly 780249666e3SCaleb Connolly pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, <&sdc2_data>; 781249666e3SCaleb Connolly pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_cmd_sleep>, <&sdc2_data_sleep>; 782249666e3SCaleb Connolly 783249666e3SCaleb Connolly status = "okay"; 784249666e3SCaleb Connolly}; 785249666e3SCaleb Connolly 786249666e3SCaleb Connolly&tlmm { 787249666e3SCaleb Connolly /* 788249666e3SCaleb Connolly * 48-52: protected by XPU, not sure why. 789249666e3SCaleb Connolly */ 790249666e3SCaleb Connolly gpio-reserved-ranges = <48 4>; 791249666e3SCaleb Connolly 792249666e3SCaleb Connolly bluetooth_enable_default: bluetooth-enable-default-state { 793249666e3SCaleb Connolly pins = "gpio85"; 794249666e3SCaleb Connolly function = "gpio"; 795249666e3SCaleb Connolly output-low; 796249666e3SCaleb Connolly bias-disable; 797249666e3SCaleb Connolly }; 798249666e3SCaleb Connolly 799249666e3SCaleb Connolly qup_uart7_sleep_cts: qup-uart7-sleep-cts-state { 800249666e3SCaleb Connolly pins = "gpio28"; 801249666e3SCaleb Connolly function = "gpio"; 802249666e3SCaleb Connolly /* 803249666e3SCaleb Connolly * Configure a bias-bus-hold on CTS to lower power 804249666e3SCaleb Connolly * usage when Bluetooth is turned off. Bus hold will 805249666e3SCaleb Connolly * maintain a low power state regardless of whether 806249666e3SCaleb Connolly * the Bluetooth module drives the pin in either 807249666e3SCaleb Connolly * direction or leaves the pin fully unpowered. 808249666e3SCaleb Connolly */ 809249666e3SCaleb Connolly bias-bus-hold; 810249666e3SCaleb Connolly }; 811249666e3SCaleb Connolly 812249666e3SCaleb Connolly qup_uart7_sleep_rts: qup-uart7-sleep-rts-state { 813249666e3SCaleb Connolly pins = "gpio29"; 814249666e3SCaleb Connolly function = "gpio"; 815249666e3SCaleb Connolly /* 816249666e3SCaleb Connolly * Configure pull-down on RTS. As RTS is active low 817249666e3SCaleb Connolly * signal, pull it low to indicate the BT SoC that it 818249666e3SCaleb Connolly * can wakeup the system anytime from suspend state by 819249666e3SCaleb Connolly * pulling RX low (by sending wakeup bytes). 820249666e3SCaleb Connolly */ 821249666e3SCaleb Connolly bias-pull-down; 822249666e3SCaleb Connolly }; 823249666e3SCaleb Connolly 824249666e3SCaleb Connolly qup_uart7_sleep_tx: qup-uart7-sleep-tx-state { 825249666e3SCaleb Connolly pins = "gpio30"; 826249666e3SCaleb Connolly function = "gpio"; 827249666e3SCaleb Connolly /* 828249666e3SCaleb Connolly * Configure pull-up on TX when it isn't actively driven 829249666e3SCaleb Connolly * to prevent BT SoC from receiving garbage during sleep. 830249666e3SCaleb Connolly */ 831249666e3SCaleb Connolly bias-pull-up; 832249666e3SCaleb Connolly }; 833249666e3SCaleb Connolly 834249666e3SCaleb Connolly qup_uart7_sleep_rx: qup-uart7-sleep-rx-state { 835249666e3SCaleb Connolly pins = "gpio31"; 836249666e3SCaleb Connolly function = "gpio"; 837249666e3SCaleb Connolly /* 838249666e3SCaleb Connolly * Configure a pull-up on RX. This is needed to avoid 839249666e3SCaleb Connolly * garbage data when the TX pin of the Bluetooth module 840249666e3SCaleb Connolly * is floating which may cause spurious wakeups. 841249666e3SCaleb Connolly */ 842249666e3SCaleb Connolly bias-pull-up; 843249666e3SCaleb Connolly }; 844249666e3SCaleb Connolly 845249666e3SCaleb Connolly sw_ctrl_default: sw-ctrl-default-state { 846249666e3SCaleb Connolly pins = "gpio86"; 847249666e3SCaleb Connolly function = "gpio"; 848249666e3SCaleb Connolly bias-pull-down; 849249666e3SCaleb Connolly }; 850249666e3SCaleb Connolly}; 851249666e3SCaleb Connolly 852249666e3SCaleb Connolly&uart5 { 853249666e3SCaleb Connolly compatible = "qcom,geni-debug-uart"; 854249666e3SCaleb Connolly status = "okay"; 855249666e3SCaleb Connolly}; 856249666e3SCaleb Connolly 857249666e3SCaleb Connolly&uart7 { 858249666e3SCaleb Connolly /delete-property/interrupts; 859249666e3SCaleb Connolly interrupts-extended = <&intc GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>, 860249666e3SCaleb Connolly <&tlmm 31 IRQ_TYPE_EDGE_FALLING>; 861249666e3SCaleb Connolly 862249666e3SCaleb Connolly pinctrl-1 = <&qup_uart7_sleep_cts>, <&qup_uart7_sleep_rts>, <&qup_uart7_sleep_tx>, <&qup_uart7_sleep_rx>; 863249666e3SCaleb Connolly pinctrl-names = "default", "sleep"; 864249666e3SCaleb Connolly 865249666e3SCaleb Connolly status = "okay"; 866249666e3SCaleb Connolly 867249666e3SCaleb Connolly bluetooth: bluetooth { 868249666e3SCaleb Connolly compatible = "qcom,wcn6750-bt"; 869249666e3SCaleb Connolly 870249666e3SCaleb Connolly pinctrl-0 = <&bluetooth_enable_default>, <&sw_ctrl_default>; 871249666e3SCaleb Connolly pinctrl-names = "default"; 872249666e3SCaleb Connolly 873249666e3SCaleb Connolly enable-gpios = <&tlmm 85 GPIO_ACTIVE_HIGH>; 874249666e3SCaleb Connolly swctrl-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>; 875249666e3SCaleb Connolly 876249666e3SCaleb Connolly vddio-supply = <&vreg_l19b>; 877249666e3SCaleb Connolly vddaon-supply = <&vreg_s7b>; 878249666e3SCaleb Connolly vddbtcxmx-supply = <&vreg_s7b>; 879249666e3SCaleb Connolly vddrfacmn-supply = <&vreg_s7b>; 880249666e3SCaleb Connolly vddrfa0p8-supply = <&vreg_s7b>; 881249666e3SCaleb Connolly vddrfa1p7-supply = <&vreg_s1b>; 882249666e3SCaleb Connolly vddrfa1p2-supply = <&vreg_s8b>; 883249666e3SCaleb Connolly vddrfa2p2-supply = <&vreg_s1c>; 884249666e3SCaleb Connolly vddasd-supply = <&vreg_l11c>; 885249666e3SCaleb Connolly 886249666e3SCaleb Connolly max-speed = <3200000>; 887249666e3SCaleb Connolly }; 888249666e3SCaleb Connolly}; 889249666e3SCaleb Connolly 890249666e3SCaleb Connolly&ufs_mem_hc { 891249666e3SCaleb Connolly reset-gpios = <&tlmm 175 GPIO_ACTIVE_LOW>; 892249666e3SCaleb Connolly 893249666e3SCaleb Connolly vcc-supply = <&vreg_l7b>; 894249666e3SCaleb Connolly vcc-max-microamp = <800000>; 895249666e3SCaleb Connolly /* 896249666e3SCaleb Connolly * Technically l9b enables an eLDO (supplied by s1b) which then powers 897249666e3SCaleb Connolly * VCCQ2 of the UFS. 898249666e3SCaleb Connolly */ 899249666e3SCaleb Connolly vccq-supply = <&vreg_l9b>; 900249666e3SCaleb Connolly vccq-max-microamp = <900000>; 901249666e3SCaleb Connolly 902249666e3SCaleb Connolly status = "okay"; 903249666e3SCaleb Connolly}; 904249666e3SCaleb Connolly 905249666e3SCaleb Connolly&ufs_mem_phy { 906249666e3SCaleb Connolly vdda-phy-supply = <&vreg_l10c>; 907249666e3SCaleb Connolly vdda-pll-supply = <&vreg_l6b>; 908249666e3SCaleb Connolly 909249666e3SCaleb Connolly status = "okay"; 910249666e3SCaleb Connolly}; 911249666e3SCaleb Connolly 912249666e3SCaleb Connolly&usb_1 { 913249666e3SCaleb Connolly status = "okay"; 914249666e3SCaleb Connolly}; 915249666e3SCaleb Connolly 916249666e3SCaleb Connolly&usb_1_dwc3 { 917249666e3SCaleb Connolly dr_mode = "otg"; 918249666e3SCaleb Connolly usb-role-switch; 919249666e3SCaleb Connolly}; 920249666e3SCaleb Connolly 921249666e3SCaleb Connolly&usb_1_dwc3_hs { 922249666e3SCaleb Connolly remote-endpoint = <&pmic_glink_hs_in>; 923249666e3SCaleb Connolly}; 924249666e3SCaleb Connolly 925249666e3SCaleb Connolly&usb_dp_qmpphy_out { 926249666e3SCaleb Connolly remote-endpoint = <&pmic_glink_ss_in>; 927249666e3SCaleb Connolly}; 928249666e3SCaleb Connolly 929249666e3SCaleb Connolly&usb_1_hsphy { 930249666e3SCaleb Connolly vdda-pll-supply = <&vreg_l10c>; 931249666e3SCaleb Connolly vdda18-supply = <&vreg_l1c>; 932249666e3SCaleb Connolly vdda33-supply = <&vreg_l2b>; 933249666e3SCaleb Connolly 934249666e3SCaleb Connolly qcom,hs-crossover-voltage-microvolt = <28000>; 935249666e3SCaleb Connolly qcom,hs-output-impedance-micro-ohms = <2600000>; 936249666e3SCaleb Connolly qcom,hs-rise-fall-time-bp = <5430>; 937249666e3SCaleb Connolly qcom,hs-disconnect-bp = <1743>; 938249666e3SCaleb Connolly qcom,hs-amplitude-bp = <2430>; 939249666e3SCaleb Connolly 940249666e3SCaleb Connolly qcom,pre-emphasis-amplitude-bp = <20000>; 941249666e3SCaleb Connolly qcom,pre-emphasis-duration-bp = <20000>; 942249666e3SCaleb Connolly 943249666e3SCaleb Connolly qcom,squelch-detector-bp = <(-2090)>; 944249666e3SCaleb Connolly 945249666e3SCaleb Connolly status = "okay"; 946249666e3SCaleb Connolly}; 947249666e3SCaleb Connolly 948249666e3SCaleb Connolly&usb_1_qmpphy { 949249666e3SCaleb Connolly vdda-phy-supply = <&vreg_l6b>; 950249666e3SCaleb Connolly vdda-pll-supply = <&vreg_l1b>; 951249666e3SCaleb Connolly 952249666e3SCaleb Connolly status = "okay"; 953249666e3SCaleb Connolly}; 954249666e3SCaleb Connolly 955249666e3SCaleb Connolly&wifi { 956cfbcd6d4SKrzysztof Kozlowski qcom,calibration-variant = "SHIFTphone_8"; 957249666e3SCaleb Connolly 958249666e3SCaleb Connolly status = "okay"; 959249666e3SCaleb Connolly}; 960