#include #include #include #include &vendor { kona_qrd_batterydata: qcom,battery-data { qcom,batt-id-range-pct = <15>; }; }; &soc { gpio_keys { compatible = "gpio-keys"; label = "gpio-keys"; pinctrl-names = "default"; pinctrl-0 = <&key_vol_up_default>; vol_up { label = "volume_up"; gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>; linux,input-type = <1>; linux,code = ; gpio-key,wakeup; debounce-interval = <15>; linux,can-disable; }; }; }; &qupv3_se12_2uart { status = "ok"; }; &qupv3_se6_4uart { status = "ok"; }; &pcie2 { status = "ok"; qcom,boot-option = <0x2>; qcom,core-preset = <0x77777777>; }; &ufsphy_mem { compatible = "qcom,ufs-phy-qmp-v4-kona"; vdda-phy-supply = <&pm8150_l5>; vdda-pll-supply = <&pm8150_l9>; vdda-phy-max-microamp = <89900>; vdda-pll-max-microamp = <18800>; status = "ok"; }; &ufshc_mem { vdd-hba-supply = <&ufs_phy_gdsc>; vcc-supply = <&pm8150_l17>; vccq-supply = <&pm8150_l6>; vccq2-supply = <&pm8150_s4>; vcc-max-microamp = <800000>; vccq-max-microamp = <800000>; vccq2-max-microamp = <800000>; qcom,vddp-ref-clk-supply = <&pm8150_l6>; qcom,vddp-ref-clk-max-microamp = <100>; qcom,vccq-parent-supply = <&pm8150a_s8>; qcom,vccq-parent-max-microamp = <210000>; status = "ok"; }; &sdhc_2 { vdd-supply = <&pm8150a_l9>; qcom,vdd-voltage-level = <2950000 2960000>; qcom,vdd-current-level = <200 800000>; vdd-io-supply = <&pm8150a_l6>; qcom,vdd-io-voltage-level = <1808000 2960000>; qcom,vdd-io-current-level = <200 22000>; pinctrl-names = "default", "sleep"; pinctrl-0 = <&sdc2_on>; pinctrl-1 = <&sdc2_off>; cd-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>; status = "ok"; }; &pm8150l_gpios { lt9611_rst_pin_out { lt9611_rst_pin_out_default: lt9611_rst_pin_out_default { pins = "gpio5"; function = "normal"; output-enable; input-disable; bias-pull-down; power-source = <0>; }; }; rb5_fan_controller_pin_init: rb5_fan_controller_pin_init { pins = "gpio10"; function = "normal"; output-enable; input-disable; bias-pull-down; power-source = <0>; }; }; &L11C { regulator-always-on; }; &vreg_hap_boost { status = "ok"; }; &pm8150b_pdphy { #io-channel-cells = <1>; io-channels = <&pm8150b_charger PSY_IIO_PD_ACTIVE>, <&pm8150b_charger PSY_IIO_TYPEC_CC_ORIENTATION>, <&pm8150b_charger PSY_IIO_CONNECTOR_TYPE>, <&pm8150b_charger PSY_IIO_TYPEC_POWER_ROLE>, <&pm8150b_charger PSY_IIO_PD_USB_SUSPEND_SUPPORTED>, <&pm8150b_charger PSY_IIO_TYPEC_SRC_RP>, <&pm8150b_charger PSY_IIO_PD_IN_HARD_RESET>, <&pm8150b_charger PSY_IIO_PD_CURRENT_MAX>, <&pm8150b_charger PSY_IIO_PR_SWAP>, <&pm8150b_charger PSY_IIO_PD_VOLTAGE_MIN>, <&pm8150b_charger PSY_IIO_PD_VOLTAGE_MAX>, <&pm8150b_charger PSY_IIO_USB_REAL_TYPE>, <&pm8150b_charger PSY_IIO_TYPEC_MODE>, <&pm8150b_charger PSY_IIO_PE_START>; io-channel-names = "pd_active", "typec_cc_orientation", "connector_type", "typec_power_role", "pd_usb_suspend_supported", "typec_src_rp", "pd_in_hard_reset", "pr_current_max", "pr_swap", "pd_voltage_min", "pd_voltage_max", "real_type", "typec_mode", "pe_start"; }; &pm8150b_haptics { qcom,vmax-mv = <1697>; qcom,play-rate-us = <5882>; vdd-supply = <&vreg_hap_boost>; wf_0 { /* CLICK */ qcom,wf-play-rate-us = <5882>; qcom,wf-vmax-mv = <1697>; }; wf_1 { /* DOUBLE CLICK */ qcom,wf-play-rate-us = <5882>; qcom,wf-vmax-mv = <1697>; }; wf_2 { /* TICK */ qcom,wf-play-rate-us = <5882>; qcom,wf-vmax-mv = <1697>; }; wf_3 { /* THUD */ qcom,wf-play-rate-us = <5882>; qcom,wf-vmax-mv = <1697>; }; wf_4 { /* POP */ qcom,wf-play-rate-us = <5882>; qcom,wf-vmax-mv = <1697>; }; wf_5 { /* HEAVY CLICK */ qcom,wf-play-rate-us = <5882>; qcom,wf-vmax-mv = <1697>; }; }; &qupv3_se15_i2c { #address-cells = <1>; #size-cells = <0>; status = "ok"; redriver: redriver@1c { compatible = "onnn,redriver"; reg = <0x1c>; set-aux = <1>; eq = /bits/ 8 < /* Parameters for USB */ 0x4 0x4 0x4 0x4 /* Parameters for DP */ 0x6 0x4 0x4 0x6>; flat-gain = /bits/ 8 < /* Parameters for USB */ 0x3 0x1 0x1 0x3 /* Parameters for DP */ 0x2 0x1 0x1 0x2>; output-comp = /bits/ 8 < /* Parameters for USB */ 0x3 0x3 0x3 0x3 /* Parameters for DP */ 0x3 0x3 0x3 0x3>; loss-match = /bits/ 8 < /* Parameters for USB */ 0x1 0x3 0x3 0x1 /* Parameters for DP */ 0x3 0x3 0x3 0x3>; }; #include "smb1390.dtsi" }; &usb0 { ssusb_redriver = <&redriver>; }; &usb1 { qcom,default-mode-host; }; &smb1390 { pinctrl-names = "default"; pinctrl-0 = <&smb_stat_default>; status = "ok"; }; &smb1390_charger { io-channels = <&pm8150b_vadc ADC5_AMUX_THM2>; io-channel-names = "cp_die_temp"; qcom,parallel-output-mode = <2>; qcom,min-ilim-ua = <750000>; qcom,parallel-input-mode = <1>; status = "ok"; }; &smb1390_slave { status = "ok"; }; &smb1390_slave_charger { status = "ok"; }; &pm8150b_charger { #io-channel-cells = <1>; qcom,sec-charger-config = <1>; qcom,auto-recharge-soc = <98>; io-channels = <&pm8150b_vadc ADC5_USB_IN_V_16>, <&pm8150b_vadc ADC5_USB_IN_I>, <&pm8150b_vadc ADC5_SBUx>, <&pm8150b_vadc ADC5_VPH_PWR>, <&pm8150b_vadc ADC5_DIE_TEMP>, <&pm8150b_vadc ADC5_MID_CHG_DIV6>, <&pm8150b_vadc ADC5_CHG_TEMP>; io-channel-names = "usb_in_voltage", "usb_in_current", "sbux_res", "vph_voltage", "die_temp", "mid_voltage", "chg_temp"; qcom,batteryless-platform; qcom,lpd-disable; qcom,sw-jeita-enable; qcom,wd-bark-time-secs = <16>; qcom,suspend-input-on-debug-batt; qcom,fcc-stepping-enable; qcom,smb-internal-pull-kohm = <0>; qcom,thermal-mitigation = <5325000 4500000 4000000 3500000 3000000 2500000 2000000 1500000 1000000 500000>; }; &pm8150b_fg { status = "ok"; qcom,battery-data = <&kona_qrd_batterydata>; qcom,hold-soc-while-full; qcom,linearize-soc; qcom,five-pin-battery; qcom,cl-wt-enable; qcom,soc-scale-mode-en; /* ESR fast calibration */ qcom,fg-esr-timer-chg-fast = <0 7>; qcom,fg-esr-timer-dischg-fast = <0 7>; qcom,fg-esr-timer-chg-slow = <0 96>; qcom,fg-esr-timer-dischg-slow = <0 96>; qcom,fg-esr-cal-soc-thresh = <26 230>; qcom,fg-esr-cal-temp-thresh = <10 40>; }; &pm8150l_vadc { #address-cells = <1>; #size-cells = <0>; vph_pwr@83 { reg = ; label = "vph_pwr"; qcom,pre-scaling = <1 3>; }; camera_flash_therm@4d { reg = ; label = "camera_flash_therm"; qcom,ratiometric; qcom,hw-settle-time = <200>; qcom,pre-scaling = <1 1>; }; skin_msm_therm@4e { reg = ; label = "skin_msm_therm"; qcom,ratiometric; qcom,hw-settle-time = <200>; qcom,pre-scaling = <1 1>; }; pa_therm2@4f { reg = ; label = "pa_therm2"; qcom,ratiometric; qcom,hw-settle-time = <200>; qcom,pre-scaling = <1 1>; }; }; &pm8150b_vadc { #address-cells = <1>; #size-cells = <0>; conn_therm@4f { reg = ; label = "conn_therm"; qcom,ratiometric; qcom,hw-settle-time = <200>; qcom,pre-scaling = <1 1>; }; mid_chg_div6@1e { reg = ; label = "chg_mid"; qcom,pre-scaling = <1 6>; }; }; &pm8150_vadc { #address-cells = <1>; #size-cells = <0>; vph_pwr@83 { reg = ; label = "vph_pwr"; qcom,pre-scaling = <1 3>; }; xo_therm@4c { reg = ; label = "xo_therm"; qcom,ratiometric; qcom,hw-settle-time = <200>; qcom,pre-scaling = <1 1>; }; skin_therm@4d { reg = ; label = "skin_therm"; qcom,ratiometric; qcom,hw-settle-time = <200>; qcom,pre-scaling = <1 1>; }; pa_therm1@4e { reg = ; label = "pa_therm1"; qcom,ratiometric; qcom,hw-settle-time = <200>; qcom,pre-scaling = <1 1>; }; }; &pm8150b_adc_tm { conn_therm@4f { reg = <0>; io-channels = <&pm8150b_vadc ADC5_AMUX_THM3_100K_PU>; qcom,ratiometric; qcom,hw-settle-time = <200>; }; }; &pm8150_adc_tm { xo_therm@4c { reg = <0>; io-channels = <&pm8150_vadc ADC5_XO_THERM_100K_PU>; qcom,ratiometric; qcom,hw-settle-time = <200>; }; skin_therm@4d { reg = <1>; io-channels = <&pm8150_vadc ADC5_AMUX_THM1_100K_PU>; qcom,ratiometric; qcom,hw-settle-time = <200>; }; pa_therm1@4e { reg = <2>; io-channels = <&pm8150_vadc ADC5_AMUX_THM2_100K_PU>; qcom,ratiometric; qcom,hw-settle-time = <200>; }; }; &pm8150l_adc_tm { camera_flash_therm@4d { reg = <0>; io-channels = <&pm8150l_vadc ADC5_AMUX_THM1_100K_PU>; qcom,ratiometric; qcom,hw-settle-time = <200>; }; skin_msm_therm@4e { reg = <1>; io-channels = <&pm8150l_vadc ADC5_AMUX_THM2_100K_PU>; qcom,ratiometric; qcom,hw-settle-time = <200>; }; pa_therm2@4f { reg = <2>; io-channels = <&pm8150l_vadc ADC5_AMUX_THM3_100K_PU>; qcom,ratiometric; qcom,hw-settle-time = <200>; }; }; &thermal_zones { /delete-node/ modem-lte-sub6-pa1; /delete-node/ modem-lte-sub6-pa2; /delete-node/ modem-mmw0-usr; /delete-node/ modem-mmw1-usr; /delete-node/ modem-mmw2-usr; /delete-node/ modem-mmw3-usr; /delete-node/ modem-skin-usr; /delete-node/ modem-wifi-usr; /delete-node/ modem-ambient-usr; /delete-node/ modem-0-usr; /delete-node/ modem-1-usr; /delete-node/ modem-streamer-usr; /delete-node/ modem-mmw0-mod-usr; /delete-node/ modem-mmw1-mod-usr; /delete-node/ modem-mmw2-mod-usr; /delete-node/ modem-mmw3-mod-usr; /delete-node/ skin-therm-usr; /delete-node/ skin-therm-step; /delete-node/ camera-therm-usr; /delete-node/ mmw-pa1-usr; /delete-node/ mmw-pa1-step; /delete-node/ mmw-pa2-usr; /delete-node/ mmw-pa2-step; /delete-node/ xo-therm-step; /delete-node/ xo-therm-usr; /delete-node/ skin-msm-therm-step; pm8250-wifi-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&pm8150_adc_tm 22>; wake-capable-sensor; trips { active-config0 { temperature = <52000>; hysteresis = <4000>; type = "passive"; }; }; }; pm8150l-therm-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&pm8150l_adc_tm 2>; wake-capable-sensor; trips { active-config0 { temperature = <50000>; hysteresis = <4000>; type = "passive"; }; }; }; pm8250-xo-therm-usr { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "user_space"; thermal-sensors = <&pm8150_adc_tm 0>; wake-capable-sensor; trips { active-config0 { temperature = <50000>; hysteresis = <4000>; type = "passive"; }; }; }; pm8150l-skin-step { polling-delay-passive = <0>; polling-delay = <0>; thermal-governor = "step_wise"; thermal-sensors = <&pm8150l_adc_tm 1>; wake-capable-sensor; trips { skin_trip: skin-config0 { temperature = <50000>; hysteresis = <48000>; type = "passive"; }; }; }; };