1*a678adbfSDavid Heidelberg// SPDX-License-Identifier: GPL-2.0-only 2*a678adbfSDavid Heidelberg 3*a678adbfSDavid Heidelberg/dts-v1/; 4*a678adbfSDavid Heidelberg 5*a678adbfSDavid Heidelberg#include <dt-bindings/arm/qcom,ids.h> 6*a678adbfSDavid Heidelberg#include <dt-bindings/dma/qcom-gpi.h> 7*a678adbfSDavid Heidelberg#include <dt-bindings/input/linux-event-codes.h> 8*a678adbfSDavid Heidelberg#include <dt-bindings/interrupt-controller/irq.h> 9*a678adbfSDavid Heidelberg#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 10*a678adbfSDavid Heidelberg 11*a678adbfSDavid Heidelberg#include "sdm845.dtsi" 12*a678adbfSDavid Heidelberg#include "pm8998.dtsi" 13*a678adbfSDavid Heidelberg#include "pmi8998.dtsi" 14*a678adbfSDavid Heidelberg 15*a678adbfSDavid Heidelberg/delete-node/ &mpss_region; 16*a678adbfSDavid Heidelberg/delete-node/ &venus_mem; 17*a678adbfSDavid Heidelberg/delete-node/ &cdsp_mem; 18*a678adbfSDavid Heidelberg/delete-node/ &mba_region; 19*a678adbfSDavid Heidelberg/delete-node/ &slpi_mem; 20*a678adbfSDavid Heidelberg/delete-node/ &spss_mem; 21*a678adbfSDavid Heidelberg/delete-node/ &rmtfs_mem; 22*a678adbfSDavid Heidelberg 23*a678adbfSDavid Heidelberg/ { 24*a678adbfSDavid Heidelberg chassis-type = "handset"; 25*a678adbfSDavid Heidelberg qcom,board-id = <0x00021505 0>; 26*a678adbfSDavid Heidelberg qcom,msm-id = <QCOM_ID_SDM845 0x20001>; 27*a678adbfSDavid Heidelberg 28*a678adbfSDavid Heidelberg aliases { 29*a678adbfSDavid Heidelberg serial0 = &uart9; 30*a678adbfSDavid Heidelberg serial1 = &uart6; 31*a678adbfSDavid Heidelberg }; 32*a678adbfSDavid Heidelberg 33*a678adbfSDavid Heidelberg battery: battery { 34*a678adbfSDavid Heidelberg compatible = "simple-battery"; 35*a678adbfSDavid Heidelberg }; 36*a678adbfSDavid Heidelberg 37*a678adbfSDavid Heidelberg chosen { 38*a678adbfSDavid Heidelberg #address-cells = <2>; 39*a678adbfSDavid Heidelberg #size-cells = <2>; 40*a678adbfSDavid Heidelberg ranges; 41*a678adbfSDavid Heidelberg 42*a678adbfSDavid Heidelberg stdout-path = "serial0:115200n8"; 43*a678adbfSDavid Heidelberg 44*a678adbfSDavid Heidelberg /* Use display framebuffer as setup by bootloader */ 45*a678adbfSDavid Heidelberg framebuffer0: framebuffer-0 { 46*a678adbfSDavid Heidelberg compatible = "simple-framebuffer"; 47*a678adbfSDavid Heidelberg memory-region = <&cont_splash_mem>; 48*a678adbfSDavid Heidelberg 49*a678adbfSDavid Heidelberg format = "a8r8g8b8"; 50*a678adbfSDavid Heidelberg }; 51*a678adbfSDavid Heidelberg }; 52*a678adbfSDavid Heidelberg 53*a678adbfSDavid Heidelberg reserved-memory { 54*a678adbfSDavid Heidelberg cont_splash_mem: splash@9d400000 { 55*a678adbfSDavid Heidelberg reg = <0 0x9d400000 0 0x02400000>; 56*a678adbfSDavid Heidelberg no-map; 57*a678adbfSDavid Heidelberg }; 58*a678adbfSDavid Heidelberg 59*a678adbfSDavid Heidelberg mpss_region: memory@8e000000 { 60*a678adbfSDavid Heidelberg reg = <0 0x8e000000 0 0x9800000>; 61*a678adbfSDavid Heidelberg no-map; 62*a678adbfSDavid Heidelberg }; 63*a678adbfSDavid Heidelberg 64*a678adbfSDavid Heidelberg venus_mem: venus@97800000 { 65*a678adbfSDavid Heidelberg reg = <0 0x97800000 0 0x500000>; 66*a678adbfSDavid Heidelberg no-map; 67*a678adbfSDavid Heidelberg }; 68*a678adbfSDavid Heidelberg 69*a678adbfSDavid Heidelberg cdsp_mem: cdsp-mem@97D00000 { 70*a678adbfSDavid Heidelberg reg = <0 0x97D00000 0 0x800000>; 71*a678adbfSDavid Heidelberg no-map; 72*a678adbfSDavid Heidelberg }; 73*a678adbfSDavid Heidelberg 74*a678adbfSDavid Heidelberg mba_region: mba@98500000 { 75*a678adbfSDavid Heidelberg reg = <0 0x98500000 0 0x200000>; 76*a678adbfSDavid Heidelberg no-map; 77*a678adbfSDavid Heidelberg }; 78*a678adbfSDavid Heidelberg 79*a678adbfSDavid Heidelberg slpi_mem: slpi@98700000 { 80*a678adbfSDavid Heidelberg reg = <0 0x98700000 0 0x1400000>; 81*a678adbfSDavid Heidelberg no-map; 82*a678adbfSDavid Heidelberg }; 83*a678adbfSDavid Heidelberg 84*a678adbfSDavid Heidelberg spss_mem: spss@99B00000 { 85*a678adbfSDavid Heidelberg reg = <0 0x99B00000 0 0x100000>; 86*a678adbfSDavid Heidelberg no-map; 87*a678adbfSDavid Heidelberg }; 88*a678adbfSDavid Heidelberg 89*a678adbfSDavid Heidelberg rmtfs_mem: rmtfs-region@f2700000 { 90*a678adbfSDavid Heidelberg compatible = "qcom,rmtfs-mem"; 91*a678adbfSDavid Heidelberg reg = <0 0xf2700000 0 0x202000>; 92*a678adbfSDavid Heidelberg qcom,use-guard-pages; 93*a678adbfSDavid Heidelberg no-map; 94*a678adbfSDavid Heidelberg 95*a678adbfSDavid Heidelberg qcom,client-id = <1>; 96*a678adbfSDavid Heidelberg qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>; 97*a678adbfSDavid Heidelberg }; 98*a678adbfSDavid Heidelberg }; 99*a678adbfSDavid Heidelberg 100*a678adbfSDavid Heidelberg gpio-keys { 101*a678adbfSDavid Heidelberg compatible = "gpio-keys"; 102*a678adbfSDavid Heidelberg label = "Volume keys"; 103*a678adbfSDavid Heidelberg autorepeat; 104*a678adbfSDavid Heidelberg 105*a678adbfSDavid Heidelberg pinctrl-0 = <&volume_up_gpio>; 106*a678adbfSDavid Heidelberg pinctrl-names = "default"; 107*a678adbfSDavid Heidelberg 108*a678adbfSDavid Heidelberg key-vol-up { 109*a678adbfSDavid Heidelberg label = "Volume Up"; 110*a678adbfSDavid Heidelberg linux,code = <KEY_VOLUMEUP>; 111*a678adbfSDavid Heidelberg gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>; 112*a678adbfSDavid Heidelberg debounce-interval = <15>; 113*a678adbfSDavid Heidelberg }; 114*a678adbfSDavid Heidelberg }; 115*a678adbfSDavid Heidelberg 116*a678adbfSDavid Heidelberg vph_pwr: regulator-vph-pwr { 117*a678adbfSDavid Heidelberg compatible = "regulator-fixed"; 118*a678adbfSDavid Heidelberg regulator-name = "vph_pwr"; 119*a678adbfSDavid Heidelberg regulator-min-microvolt = <3700000>; 120*a678adbfSDavid Heidelberg regulator-max-microvolt = <3700000>; 121*a678adbfSDavid Heidelberg }; 122*a678adbfSDavid Heidelberg 123*a678adbfSDavid Heidelberg vreg_s4a_1p8: regulator-vreg-s4a-1p8 { 124*a678adbfSDavid Heidelberg compatible = "regulator-fixed"; 125*a678adbfSDavid Heidelberg regulator-name = "vreg_s4a_1p8"; 126*a678adbfSDavid Heidelberg 127*a678adbfSDavid Heidelberg regulator-min-microvolt = <1800000>; 128*a678adbfSDavid Heidelberg regulator-max-microvolt = <1800000>; 129*a678adbfSDavid Heidelberg regulator-always-on; 130*a678adbfSDavid Heidelberg regulator-boot-on; 131*a678adbfSDavid Heidelberg 132*a678adbfSDavid Heidelberg vin-supply = <&vph_pwr>; 133*a678adbfSDavid Heidelberg }; 134*a678adbfSDavid Heidelberg}; 135*a678adbfSDavid Heidelberg 136*a678adbfSDavid Heidelberg&adsp_pas { 137*a678adbfSDavid Heidelberg firmware-name = "qcom/sdm845/Google/blueline/adsp.mbn"; 138*a678adbfSDavid Heidelberg 139*a678adbfSDavid Heidelberg status = "okay"; 140*a678adbfSDavid Heidelberg}; 141*a678adbfSDavid Heidelberg 142*a678adbfSDavid Heidelberg&apps_rsc { 143*a678adbfSDavid Heidelberg regulators-0 { 144*a678adbfSDavid Heidelberg compatible = "qcom,pm8998-rpmh-regulators"; 145*a678adbfSDavid Heidelberg qcom,pmic-id = "a"; 146*a678adbfSDavid Heidelberg 147*a678adbfSDavid Heidelberg vdd-s1-supply = <&vph_pwr>; 148*a678adbfSDavid Heidelberg vdd-s2-supply = <&vph_pwr>; 149*a678adbfSDavid Heidelberg vdd-s3-supply = <&vph_pwr>; 150*a678adbfSDavid Heidelberg vdd-s4-supply = <&vph_pwr>; 151*a678adbfSDavid Heidelberg vdd-s5-supply = <&vph_pwr>; 152*a678adbfSDavid Heidelberg vdd-s6-supply = <&vph_pwr>; 153*a678adbfSDavid Heidelberg vdd-s7-supply = <&vph_pwr>; 154*a678adbfSDavid Heidelberg vdd-s8-supply = <&vph_pwr>; 155*a678adbfSDavid Heidelberg vdd-s9-supply = <&vph_pwr>; 156*a678adbfSDavid Heidelberg vdd-s10-supply = <&vph_pwr>; 157*a678adbfSDavid Heidelberg vdd-s11-supply = <&vph_pwr>; 158*a678adbfSDavid Heidelberg vdd-s12-supply = <&vph_pwr>; 159*a678adbfSDavid Heidelberg vdd-s13-supply = <&vph_pwr>; 160*a678adbfSDavid Heidelberg vdd-l1-l27-supply = <&vreg_s7a_1p025>; 161*a678adbfSDavid Heidelberg vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>; 162*a678adbfSDavid Heidelberg vdd-l3-l11-supply = <&vreg_s7a_1p025>; 163*a678adbfSDavid Heidelberg vdd-l4-l5-supply = <&vreg_s7a_1p025>; 164*a678adbfSDavid Heidelberg vdd-l6-supply = <&vph_pwr>; 165*a678adbfSDavid Heidelberg vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>; 166*a678adbfSDavid Heidelberg vdd-l9-supply = <&vreg_bob>; 167*a678adbfSDavid Heidelberg vdd-l10-l23-l25-supply = <&vreg_bob>; 168*a678adbfSDavid Heidelberg vdd-l13-l19-l21-supply = <&vreg_bob>; 169*a678adbfSDavid Heidelberg vdd-l16-l28-supply = <&vreg_bob>; 170*a678adbfSDavid Heidelberg vdd-l18-l22-supply = <&vreg_bob>; 171*a678adbfSDavid Heidelberg vdd-l20-l24-supply = <&vreg_bob>; 172*a678adbfSDavid Heidelberg vdd-l26-supply = <&vreg_s3a_1p35>; 173*a678adbfSDavid Heidelberg vin-lvs-1-2-supply = <&vreg_s4a_1p8>; 174*a678adbfSDavid Heidelberg 175*a678adbfSDavid Heidelberg vreg_s3a_1p35: smps3 { 176*a678adbfSDavid Heidelberg regulator-min-microvolt = <1352000>; 177*a678adbfSDavid Heidelberg regulator-max-microvolt = <1352000>; 178*a678adbfSDavid Heidelberg }; 179*a678adbfSDavid Heidelberg 180*a678adbfSDavid Heidelberg vreg_s5a_2p04: smps5 { 181*a678adbfSDavid Heidelberg regulator-min-microvolt = <1904000>; 182*a678adbfSDavid Heidelberg regulator-max-microvolt = <2040000>; 183*a678adbfSDavid Heidelberg }; 184*a678adbfSDavid Heidelberg 185*a678adbfSDavid Heidelberg vreg_s7a_1p025: smps7 { 186*a678adbfSDavid Heidelberg regulator-min-microvolt = <900000>; 187*a678adbfSDavid Heidelberg regulator-max-microvolt = <1028000>; 188*a678adbfSDavid Heidelberg }; 189*a678adbfSDavid Heidelberg 190*a678adbfSDavid Heidelberg vdda_mipi_dsi0_pll: 191*a678adbfSDavid Heidelberg vreg_l1a_0p875: ldo1 { 192*a678adbfSDavid Heidelberg regulator-min-microvolt = <880000>; 193*a678adbfSDavid Heidelberg regulator-max-microvolt = <880000>; 194*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 195*a678adbfSDavid Heidelberg regulator-boot-on; 196*a678adbfSDavid Heidelberg }; 197*a678adbfSDavid Heidelberg 198*a678adbfSDavid Heidelberg vreg_l5a_0p8: ldo5 { 199*a678adbfSDavid Heidelberg regulator-min-microvolt = <800000>; 200*a678adbfSDavid Heidelberg regulator-max-microvolt = <800000>; 201*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 202*a678adbfSDavid Heidelberg }; 203*a678adbfSDavid Heidelberg 204*a678adbfSDavid Heidelberg vreg_l12a_1p8: ldo12 { 205*a678adbfSDavid Heidelberg regulator-min-microvolt = <1800000>; 206*a678adbfSDavid Heidelberg regulator-max-microvolt = <1800000>; 207*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 208*a678adbfSDavid Heidelberg }; 209*a678adbfSDavid Heidelberg 210*a678adbfSDavid Heidelberg vreg_l7a_1p8: ldo7 { 211*a678adbfSDavid Heidelberg regulator-min-microvolt = <1800000>; 212*a678adbfSDavid Heidelberg regulator-max-microvolt = <1800000>; 213*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 214*a678adbfSDavid Heidelberg }; 215*a678adbfSDavid Heidelberg 216*a678adbfSDavid Heidelberg vreg_l13a_2p95: ldo13 { 217*a678adbfSDavid Heidelberg regulator-min-microvolt = <1800000>; 218*a678adbfSDavid Heidelberg regulator-max-microvolt = <2960000>; 219*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 220*a678adbfSDavid Heidelberg }; 221*a678adbfSDavid Heidelberg 222*a678adbfSDavid Heidelberg vreg_l14a_1p8: ldo14 { 223*a678adbfSDavid Heidelberg regulator-min-microvolt = <1800000>; 224*a678adbfSDavid Heidelberg regulator-max-microvolt = <1800000>; 225*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 226*a678adbfSDavid Heidelberg regulator-boot-on; 227*a678adbfSDavid Heidelberg /* 228*a678adbfSDavid Heidelberg * We can't properly bring the panel back if it gets turned off 229*a678adbfSDavid Heidelberg * so keep it's regulators always on for now. 230*a678adbfSDavid Heidelberg */ 231*a678adbfSDavid Heidelberg regulator-always-on; 232*a678adbfSDavid Heidelberg }; 233*a678adbfSDavid Heidelberg 234*a678adbfSDavid Heidelberg vreg_l17a_1p3: ldo17 { 235*a678adbfSDavid Heidelberg regulator-min-microvolt = <1304000>; 236*a678adbfSDavid Heidelberg regulator-max-microvolt = <1304000>; 237*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 238*a678adbfSDavid Heidelberg }; 239*a678adbfSDavid Heidelberg 240*a678adbfSDavid Heidelberg vreg_l19a_3p3: ldo19 { 241*a678adbfSDavid Heidelberg regulator-min-microvolt = <3300000>; 242*a678adbfSDavid Heidelberg regulator-max-microvolt = <3312000>; 243*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 244*a678adbfSDavid Heidelberg /* 245*a678adbfSDavid Heidelberg * The touchscreen needs this to be 3.3v, which is apparently 246*a678adbfSDavid Heidelberg * quite close to the hardware limit for this LDO (3.312v) 247*a678adbfSDavid Heidelberg * It must be kept in high power mode to prevent TS brownouts 248*a678adbfSDavid Heidelberg */ 249*a678adbfSDavid Heidelberg regulator-allowed-modes = <RPMH_REGULATOR_MODE_HPM>; 250*a678adbfSDavid Heidelberg }; 251*a678adbfSDavid Heidelberg 252*a678adbfSDavid Heidelberg vreg_l20a_2p95: ldo20 { 253*a678adbfSDavid Heidelberg regulator-min-microvolt = <2960000>; 254*a678adbfSDavid Heidelberg regulator-max-microvolt = <2968000>; 255*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 256*a678adbfSDavid Heidelberg }; 257*a678adbfSDavid Heidelberg 258*a678adbfSDavid Heidelberg vreg_l21a_2p95: ldo21 { 259*a678adbfSDavid Heidelberg regulator-min-microvolt = <2960000>; 260*a678adbfSDavid Heidelberg regulator-max-microvolt = <2968000>; 261*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 262*a678adbfSDavid Heidelberg }; 263*a678adbfSDavid Heidelberg 264*a678adbfSDavid Heidelberg vreg_l24a_3p075: ldo24 { 265*a678adbfSDavid Heidelberg regulator-min-microvolt = <3088000>; 266*a678adbfSDavid Heidelberg regulator-max-microvolt = <3088000>; 267*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 268*a678adbfSDavid Heidelberg }; 269*a678adbfSDavid Heidelberg 270*a678adbfSDavid Heidelberg vreg_l25a_3p3: ldo25 { 271*a678adbfSDavid Heidelberg regulator-min-microvolt = <3300000>; 272*a678adbfSDavid Heidelberg regulator-max-microvolt = <3312000>; 273*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 274*a678adbfSDavid Heidelberg }; 275*a678adbfSDavid Heidelberg 276*a678adbfSDavid Heidelberg vdda_mipi_dsi0_1p2: 277*a678adbfSDavid Heidelberg vreg_l26a_1p2: ldo26 { 278*a678adbfSDavid Heidelberg regulator-min-microvolt = <1200000>; 279*a678adbfSDavid Heidelberg regulator-max-microvolt = <1200000>; 280*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 281*a678adbfSDavid Heidelberg regulator-boot-on; 282*a678adbfSDavid Heidelberg }; 283*a678adbfSDavid Heidelberg 284*a678adbfSDavid Heidelberg vreg_l28a_3p0: ldo28 { 285*a678adbfSDavid Heidelberg regulator-min-microvolt = <2856000>; 286*a678adbfSDavid Heidelberg regulator-max-microvolt = <3008000>; 287*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 288*a678adbfSDavid Heidelberg regulator-boot-on; 289*a678adbfSDavid Heidelberg /* 290*a678adbfSDavid Heidelberg * We can't properly bring the panel back if it gets turned off 291*a678adbfSDavid Heidelberg * so keep it's regulators always on for now. 292*a678adbfSDavid Heidelberg */ 293*a678adbfSDavid Heidelberg regulator-always-on; 294*a678adbfSDavid Heidelberg }; 295*a678adbfSDavid Heidelberg }; 296*a678adbfSDavid Heidelberg 297*a678adbfSDavid Heidelberg regulators-1 { 298*a678adbfSDavid Heidelberg compatible = "qcom,pmi8998-rpmh-regulators"; 299*a678adbfSDavid Heidelberg qcom,pmic-id = "b"; 300*a678adbfSDavid Heidelberg 301*a678adbfSDavid Heidelberg vdd-bob-supply = <&vph_pwr>; 302*a678adbfSDavid Heidelberg 303*a678adbfSDavid Heidelberg vreg_bob: bob { 304*a678adbfSDavid Heidelberg regulator-min-microvolt = <3312000>; 305*a678adbfSDavid Heidelberg regulator-max-microvolt = <3600000>; 306*a678adbfSDavid Heidelberg regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 307*a678adbfSDavid Heidelberg regulator-allow-bypass; 308*a678adbfSDavid Heidelberg }; 309*a678adbfSDavid Heidelberg }; 310*a678adbfSDavid Heidelberg 311*a678adbfSDavid Heidelberg regulators-2 { 312*a678adbfSDavid Heidelberg compatible = "qcom,pm8005-rpmh-regulators"; 313*a678adbfSDavid Heidelberg qcom,pmic-id = "c"; 314*a678adbfSDavid Heidelberg 315*a678adbfSDavid Heidelberg vdd-s1-supply = <&vph_pwr>; 316*a678adbfSDavid Heidelberg vdd-s2-supply = <&vph_pwr>; 317*a678adbfSDavid Heidelberg vdd-s3-supply = <&vph_pwr>; 318*a678adbfSDavid Heidelberg vdd-s4-supply = <&vph_pwr>; 319*a678adbfSDavid Heidelberg 320*a678adbfSDavid Heidelberg vreg_s3c_0p6: smps3 { 321*a678adbfSDavid Heidelberg regulator-min-microvolt = <600000>; 322*a678adbfSDavid Heidelberg regulator-max-microvolt = <600000>; 323*a678adbfSDavid Heidelberg }; 324*a678adbfSDavid Heidelberg }; 325*a678adbfSDavid Heidelberg}; 326*a678adbfSDavid Heidelberg 327*a678adbfSDavid Heidelberg&cci { 328*a678adbfSDavid Heidelberg status = "okay"; 329*a678adbfSDavid Heidelberg}; 330*a678adbfSDavid Heidelberg 331*a678adbfSDavid Heidelberg&cci_i2c1 { 332*a678adbfSDavid Heidelberg /* actuator @0c */ 333*a678adbfSDavid Heidelberg 334*a678adbfSDavid Heidelberg /* front camera, imx355 @1a */ 335*a678adbfSDavid Heidelberg 336*a678adbfSDavid Heidelberg /* eeprom @50, at24 driver says 8K */ 337*a678adbfSDavid Heidelberg}; 338*a678adbfSDavid Heidelberg 339*a678adbfSDavid Heidelberg&cdsp_pas { 340*a678adbfSDavid Heidelberg firmware-name = "qcom/sdm845/Google/blueline/cdsp.mbn"; 341*a678adbfSDavid Heidelberg 342*a678adbfSDavid Heidelberg status = "okay"; 343*a678adbfSDavid Heidelberg}; 344*a678adbfSDavid Heidelberg 345*a678adbfSDavid Heidelberg&gcc { 346*a678adbfSDavid Heidelberg protected-clocks = <GCC_QSPI_CORE_CLK>, 347*a678adbfSDavid Heidelberg <GCC_QSPI_CORE_CLK_SRC>, 348*a678adbfSDavid Heidelberg <GCC_QSPI_CNOC_PERIPH_AHB_CLK>; 349*a678adbfSDavid Heidelberg}; 350*a678adbfSDavid Heidelberg 351*a678adbfSDavid Heidelberg&gpi_dma0 { 352*a678adbfSDavid Heidelberg status = "okay"; 353*a678adbfSDavid Heidelberg}; 354*a678adbfSDavid Heidelberg 355*a678adbfSDavid Heidelberg&gpi_dma1 { 356*a678adbfSDavid Heidelberg status = "okay"; 357*a678adbfSDavid Heidelberg}; 358*a678adbfSDavid Heidelberg 359*a678adbfSDavid Heidelberg&gpu { 360*a678adbfSDavid Heidelberg status = "okay"; 361*a678adbfSDavid Heidelberg}; 362*a678adbfSDavid Heidelberg 363*a678adbfSDavid Heidelberg&gpu_zap_shader { 364*a678adbfSDavid Heidelberg firmware-name = "qcom/sdm845/Google/blueline/a630_zap.mbn"; 365*a678adbfSDavid Heidelberg}; 366*a678adbfSDavid Heidelberg 367*a678adbfSDavid Heidelberg&i2c12 { 368*a678adbfSDavid Heidelberg /* Bottom spkr (right) CS35L36 @ 40 */ 369*a678adbfSDavid Heidelberg 370*a678adbfSDavid Heidelberg /* Top spkr (left) CS35L36 @ 41 */ 371*a678adbfSDavid Heidelberg}; 372*a678adbfSDavid Heidelberg 373*a678adbfSDavid Heidelberg&ipa { 374*a678adbfSDavid Heidelberg firmware-name = "qcom/sdm845/Google/blueline/ipa_fws.mbn"; 375*a678adbfSDavid Heidelberg memory-region = <&ipa_fw_mem>; 376*a678adbfSDavid Heidelberg 377*a678adbfSDavid Heidelberg status = "okay"; 378*a678adbfSDavid Heidelberg}; 379*a678adbfSDavid Heidelberg 380*a678adbfSDavid Heidelberg&mdss { 381*a678adbfSDavid Heidelberg status = "okay"; 382*a678adbfSDavid Heidelberg}; 383*a678adbfSDavid Heidelberg 384*a678adbfSDavid Heidelberg&mss_pil { 385*a678adbfSDavid Heidelberg firmware-name = "qcom/sdm845/Google/blueline/mba.mbn", 386*a678adbfSDavid Heidelberg "qcom/sdm845/Google/blueline/modem.mbn"; 387*a678adbfSDavid Heidelberg 388*a678adbfSDavid Heidelberg status = "okay"; 389*a678adbfSDavid Heidelberg}; 390*a678adbfSDavid Heidelberg 391*a678adbfSDavid Heidelberg&pm8998_gpios { 392*a678adbfSDavid Heidelberg volume_up_gpio: vol-up-active-state { 393*a678adbfSDavid Heidelberg pins = "gpio6"; 394*a678adbfSDavid Heidelberg function = "normal"; 395*a678adbfSDavid Heidelberg input-enable; 396*a678adbfSDavid Heidelberg bias-pull-up; 397*a678adbfSDavid Heidelberg qcom,drive-strength = <0>; 398*a678adbfSDavid Heidelberg }; 399*a678adbfSDavid Heidelberg}; 400*a678adbfSDavid Heidelberg 401*a678adbfSDavid Heidelberg&pm8998_resin { 402*a678adbfSDavid Heidelberg linux,code = <KEY_VOLUMEDOWN>; 403*a678adbfSDavid Heidelberg 404*a678adbfSDavid Heidelberg status = "okay"; 405*a678adbfSDavid Heidelberg}; 406*a678adbfSDavid Heidelberg 407*a678adbfSDavid Heidelberg&pmi8998_charger { 408*a678adbfSDavid Heidelberg monitored-battery = <&battery>; 409*a678adbfSDavid Heidelberg 410*a678adbfSDavid Heidelberg status = "okay"; 411*a678adbfSDavid Heidelberg}; 412*a678adbfSDavid Heidelberg 413*a678adbfSDavid Heidelberg&qupv3_id_0 { 414*a678adbfSDavid Heidelberg status = "okay"; 415*a678adbfSDavid Heidelberg}; 416*a678adbfSDavid Heidelberg 417*a678adbfSDavid Heidelberg&qupv3_id_1 { 418*a678adbfSDavid Heidelberg status = "okay"; 419*a678adbfSDavid Heidelberg}; 420*a678adbfSDavid Heidelberg 421*a678adbfSDavid Heidelberg&qup_uart9_rx { 422*a678adbfSDavid Heidelberg drive-strength = <2>; 423*a678adbfSDavid Heidelberg bias-pull-up; 424*a678adbfSDavid Heidelberg}; 425*a678adbfSDavid Heidelberg 426*a678adbfSDavid Heidelberg&qup_uart9_tx { 427*a678adbfSDavid Heidelberg drive-strength = <2>; 428*a678adbfSDavid Heidelberg bias-disable; 429*a678adbfSDavid Heidelberg}; 430*a678adbfSDavid Heidelberg 431*a678adbfSDavid Heidelberg&tlmm { 432*a678adbfSDavid Heidelberg gpio-reserved-ranges = < 0 4>, /* SPI (Intel MNH Pixel Visual Core) */ 433*a678adbfSDavid Heidelberg <81 4>; /* SPI (most likely Fingerprint Cards FPC1075) */ 434*a678adbfSDavid Heidelberg 435*a678adbfSDavid Heidelberg touchscreen_reset: ts-reset-state { 436*a678adbfSDavid Heidelberg pins = "gpio99"; 437*a678adbfSDavid Heidelberg function = "gpio"; 438*a678adbfSDavid Heidelberg drive-strength = <8>; 439*a678adbfSDavid Heidelberg bias-pull-up; 440*a678adbfSDavid Heidelberg }; 441*a678adbfSDavid Heidelberg 442*a678adbfSDavid Heidelberg touchscreen_pins: ts-pins-gpio-state { 443*a678adbfSDavid Heidelberg pins = "gpio125"; 444*a678adbfSDavid Heidelberg function = "gpio"; 445*a678adbfSDavid Heidelberg drive-strength = <2>; 446*a678adbfSDavid Heidelberg bias-disable; 447*a678adbfSDavid Heidelberg }; 448*a678adbfSDavid Heidelberg 449*a678adbfSDavid Heidelberg touchscreen_i2c_pins: qup-i2c2-gpio-state { 450*a678adbfSDavid Heidelberg pins = "gpio27", "gpio28"; 451*a678adbfSDavid Heidelberg function = "gpio"; 452*a678adbfSDavid Heidelberg drive-strength = <2>; 453*a678adbfSDavid Heidelberg bias-disable; 454*a678adbfSDavid Heidelberg }; 455*a678adbfSDavid Heidelberg}; 456*a678adbfSDavid Heidelberg 457*a678adbfSDavid Heidelberg&uart6 { 458*a678adbfSDavid Heidelberg pinctrl-0 = <&qup_uart6_4pin>; 459*a678adbfSDavid Heidelberg 460*a678adbfSDavid Heidelberg status = "okay"; 461*a678adbfSDavid Heidelberg 462*a678adbfSDavid Heidelberg bluetooth { 463*a678adbfSDavid Heidelberg compatible = "qcom,wcn3990-bt"; 464*a678adbfSDavid Heidelberg 465*a678adbfSDavid Heidelberg vddio-supply = <&vreg_s4a_1p8>; 466*a678adbfSDavid Heidelberg vddxo-supply = <&vreg_l7a_1p8>; 467*a678adbfSDavid Heidelberg vddrf-supply = <&vreg_l17a_1p3>; 468*a678adbfSDavid Heidelberg vddch0-supply = <&vreg_l25a_3p3>; 469*a678adbfSDavid Heidelberg max-speed = <3200000>; 470*a678adbfSDavid Heidelberg }; 471*a678adbfSDavid Heidelberg}; 472*a678adbfSDavid Heidelberg 473*a678adbfSDavid Heidelberg&uart9 { 474*a678adbfSDavid Heidelberg status = "okay"; 475*a678adbfSDavid Heidelberg}; 476*a678adbfSDavid Heidelberg 477*a678adbfSDavid Heidelberg&ufs_mem_hc { 478*a678adbfSDavid Heidelberg reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>; 479*a678adbfSDavid Heidelberg 480*a678adbfSDavid Heidelberg vcc-supply = <&vreg_l20a_2p95>; 481*a678adbfSDavid Heidelberg vcc-max-microamp = <800000>; 482*a678adbfSDavid Heidelberg 483*a678adbfSDavid Heidelberg status = "okay"; 484*a678adbfSDavid Heidelberg}; 485*a678adbfSDavid Heidelberg 486*a678adbfSDavid Heidelberg&ufs_mem_phy { 487*a678adbfSDavid Heidelberg vdda-phy-supply = <&vreg_l1a_0p875>; 488*a678adbfSDavid Heidelberg vdda-pll-supply = <&vreg_l26a_1p2>; 489*a678adbfSDavid Heidelberg 490*a678adbfSDavid Heidelberg status = "okay"; 491*a678adbfSDavid Heidelberg}; 492*a678adbfSDavid Heidelberg 493*a678adbfSDavid Heidelberg&usb_1 { 494*a678adbfSDavid Heidelberg status = "okay"; 495*a678adbfSDavid Heidelberg}; 496*a678adbfSDavid Heidelberg 497*a678adbfSDavid Heidelberg&usb_1_dwc3 { 498*a678adbfSDavid Heidelberg dr_mode = "peripheral"; 499*a678adbfSDavid Heidelberg}; 500*a678adbfSDavid Heidelberg 501*a678adbfSDavid Heidelberg&usb_1_hsphy { 502*a678adbfSDavid Heidelberg vdd-supply = <&vreg_l1a_0p875>; 503*a678adbfSDavid Heidelberg vdda-pll-supply = <&vreg_l12a_1p8>; 504*a678adbfSDavid Heidelberg vdda-phy-dpdm-supply = <&vreg_l24a_3p075>; 505*a678adbfSDavid Heidelberg 506*a678adbfSDavid Heidelberg qcom,imp-res-offset-value = <8>; 507*a678adbfSDavid Heidelberg qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>; 508*a678adbfSDavid Heidelberg qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>; 509*a678adbfSDavid Heidelberg qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>; 510*a678adbfSDavid Heidelberg 511*a678adbfSDavid Heidelberg status = "okay"; 512*a678adbfSDavid Heidelberg}; 513*a678adbfSDavid Heidelberg 514*a678adbfSDavid Heidelberg&usb_1_qmpphy { 515*a678adbfSDavid Heidelberg vdda-phy-supply = <&vreg_l26a_1p2>; 516*a678adbfSDavid Heidelberg vdda-pll-supply = <&vreg_l1a_0p875>; 517*a678adbfSDavid Heidelberg 518*a678adbfSDavid Heidelberg status = "okay"; 519*a678adbfSDavid Heidelberg}; 520*a678adbfSDavid Heidelberg 521*a678adbfSDavid Heidelberg&venus { 522*a678adbfSDavid Heidelberg firmware-name = "qcom/sdm845/Google/blueline/venus.mbn"; 523*a678adbfSDavid Heidelberg 524*a678adbfSDavid Heidelberg status = "okay"; 525*a678adbfSDavid Heidelberg}; 526*a678adbfSDavid Heidelberg 527*a678adbfSDavid Heidelberg&wifi { 528*a678adbfSDavid Heidelberg vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>; 529*a678adbfSDavid Heidelberg vdd-1.8-xo-supply = <&vreg_l7a_1p8>; 530*a678adbfSDavid Heidelberg vdd-1.3-rfa-supply = <&vreg_l17a_1p3>; 531*a678adbfSDavid Heidelberg vdd-3.3-ch0-supply = <&vreg_l25a_3p3>; 532*a678adbfSDavid Heidelberg 533*a678adbfSDavid Heidelberg qcom,snoc-host-cap-8bit-quirk; 534*a678adbfSDavid Heidelberg 535*a678adbfSDavid Heidelberg status = "okay"; 536*a678adbfSDavid Heidelberg}; 537