Rtwo/kernel/motorola/sm8550-devicetrees/qcom/kona-iot-vc.dtsi

724 lines
14 KiB
Text
Raw Permalink Normal View History

2025-09-30 20:22:48 -04:00
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/iio/qti_power_supply_iio.h>
#include <dt-bindings/iio/qcom,spmi-vadc.h>
&vendor {
kona_qrd_batterydata: qcom,battery-data {
qcom,batt-id-range-pct = <15>;
#include "fg-gen4-batterydata-mlp466274-3650mah.dtsi"
#include "fg-gen4-batterydata-atl466274-3650mah.dtsi"
};
};
&tlmm {
key_camera_switch {
key_camera_switch_default: key_camera_switch_default {
pins = "gpio26";
function = "normal";
input-enable;
bias-pull-up;
};
};
key_factory_reset {
key_factory_reset_default: key_factory_reset_default {
pins = "gpio22";
function = "normal";
input-enable;
bias-pull-up;
};
};
line_out_hpd {
line_out_hpd_default: line_out_hpd_default {
pins = "gpio32";
function = "gpio";
input-enable;
bias-pull-up;
};
};
};
&soc {
gpio_keys {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default &key_camera_switch_default &key_home_default &key_factory_reset_default>;
vol_up {
label = "volume_up";
gpios = <&pm8150_gpios 6 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEUP>;
gpio-key,wakeup;
debounce-interval = <15>;
linux,can-disable;
};
camera_switch {
label = "camera_switch";
gpios = <&tlmm 26 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_CAMERA>;
gpio-key,wakeup;
debounce-interval = <15>;
linux,can-disable;
};
mute {
label = "mute";
gpios = <&pm8150_gpios 1 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_MUTE>;
gpio-key,wakeup;
debounce-interval = <15>;
linux,can-disable;
};
factory_reset {
label = "factory_reset";
gpios = <&tlmm 22 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_F24>;
gpio-key,wakeup;
debounce-interval = <15>;
linux,can-disable;
};
};
};
&qupv3_se12_2uart {
status = "ok";
};
&qupv3_se6_4uart {
status = "ok";
};
&ufsphy_mem {
compatible = "qcom,ufs-phy-qmp-v4";
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";
};
&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>;
};
};
&pm8150b_charger {
status = "ok";
qcom,sec-charger-config = <1>;
qcom,auto-recharge-soc = <98>;
#io-channel-cells = <1>;
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>,
<&pm8150b_fg PSY_IIO_DEBUG_BATTERY>,
<&pm8150b_fg PSY_IIO_CAPACITY>,
<&pm8150b_fg PSY_IIO_REAL_CAPACITY>,
<&pm8150b_fg PSY_IIO_CC_SOC>,
<&pm8150b_fg PSY_IIO_CURRENT_NOW>,
<&pm8150b_fg PSY_IIO_VOLTAGE_NOW>,
<&pm8150b_fg PSY_IIO_VOLTAGE_MAX>,
<&pm8150b_fg PSY_IIO_CHARGE_FULL>,
<&pm8150b_fg PSY_IIO_RESISTANCE_ID>,
<&pm8150b_fg PSY_IIO_TEMP>,
<&pm8150b_fg PSY_IIO_CHARGE_COUNTER>,
<&pm8150b_fg PSY_IIO_CYCLE_COUNT>,
<&pm8150b_fg PSY_IIO_CHARGE_FULL_DESIGN>,
<&pm8150b_fg PSY_IIO_TIME_TO_FULL_NOW>;
io-channel-names = "usb_in_voltage",
"usb_in_current",
"sbux_res",
"vph_voltage",
"die_temp",
"mid_voltage",
"chg_temp",
"debug_battery",
"capacity",
"real_capacity",
"cc_soc",
"current_now",
"voltage_now",
"voltage_max",
"charge_full",
"resistance_id",
"temp",
"charge_counter",
"cycle_count",
"charge_full_design",
"time_to_full_now";
qcom,batteryless-platform;
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";
#io-channel-cells = <1>;
io-channels = <&pm8150b_charger PSY_IIO_CHARGE_DONE>;
io-channel-names = "charge_done";
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 = <ADC5_VPH_PWR>;
label = "vph_pwr";
qcom,pre-scaling = <1 3>;
};
camera_flash_therm@4d {
reg = <ADC5_AMUX_THM1_100K_PU>;
label = "camera_flash_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
skin_msm_therm@4e {
reg = <ADC5_AMUX_THM2_100K_PU>;
label = "skin_msm_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pa_therm2@4f {
reg = <ADC5_AMUX_THM3_100K_PU>;
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 = <ADC5_AMUX_THM3_100K_PU>;
label = "conn_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
mid_chg_div6@1e {
reg = <ADC5_MID_CHG_DIV6>;
label = "chg_mid";
qcom,pre-scaling = <1 6>;
};
};
&pm8150_vadc {
#address-cells = <1>;
#size-cells = <0>;
vph_pwr@83 {
reg = <ADC5_VPH_PWR>;
label = "vph_pwr";
qcom,pre-scaling = <1 3>;
};
xo_therm@4c {
reg = <ADC5_XO_THERM_100K_PU>;
label = "xo_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
skin_therm@4d {
reg = <ADC5_AMUX_THM1_100K_PU>;
label = "skin_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pa_therm1@4e {
reg = <ADC5_AMUX_THM2_100K_PU>;
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 {
conn-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm8150b_adc_tm 0>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
xo-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm8150_adc_tm 0>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
xo_lvl0: xo-config0 {
temperature = <42000>;
hysteresis = <2000>;
type = "passive";
};
xo_lvl1: xo-config1 {
temperature = <46000>;
hysteresis = <2000>;
type = "passive";
};
xo_lvl2: xo-config2 {
temperature = <56000>;
hysteresis = <6000>;
type = "passive";
};
};
cooling-maps {
xo_skin_lvl0 {
trip = <&xo_lvl0>;
cooling-device = <&modem_mmw_skin2 1 1>;
};
xo_skin_lvl1 {
trip = <&xo_lvl1>;
cooling-device = <&modem_mmw_skin2 2 2>;
};
xo_skin_lvl2 {
trip = <&xo_lvl2>;
cooling-device = <&modem_mmw_skin2 3 3>;
};
};
};
skin-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm8150_adc_tm 1>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
skin_therm0: skin_therm-config0 {
temperature = <62000>;
hysteresis = <5000>;
type = "passive";
};
skin_therm1: skin_therm-config1 {
temperature = <65000>;
hysteresis = <5000>;
type = "passive";
};
skin_therm2: skin_therm-config2 {
temperature = <72000>;
hysteresis = <2000>;
type = "passive";
};
};
cooling-maps {
skin_lvl0 {
trip = <&skin_therm0>;
cooling-device = <&modem_skin 1 1>;
};
skin_lvl1 {
trip = <&skin_therm1>;
cooling-device = <&modem_skin 2 2>;
};
skin_lvl2 {
trip = <&skin_therm2>;
cooling-device = <&modem_skin 3 3>;
};
};
};
mmw-pa1 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm8150_adc_tm 2>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
pa1_lvl0: mmw_pa1-config0 {
temperature = <44000>;
hysteresis = <5000>;
type = "passive";
};
pa1_lvl1: mmw_pa1-config1 {
temperature = <48000>;
hysteresis = <2000>;
type = "passive";
};
pa1_lvl2: mmw_pa1-config2 {
temperature = <56000>;
hysteresis = <6000>;
type = "passive";
};
};
cooling-maps {
pa1_skin_lvl0 {
trip = <&pa1_lvl0>;
cooling-device = <&modem_mmw_skin0 1 1>;
};
pa1_skin_lvl1 {
trip = <&pa1_lvl1>;
cooling-device = <&modem_mmw_skin0 2 2>;
};
pa1_skin_lvl2 {
trip = <&pa1_lvl2>;
cooling-device = <&modem_mmw_skin0 3 3>;
};
};
};
camera-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm8150l_adc_tm 0>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
skin-msm-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm8150l_adc_tm 1>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
skin_trip: skin-config0 {
temperature = <46000>;
hysteresis = <0>;
type = "passive";
};
};
};
mmw-pa2 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pm8150l_adc_tm 2>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
pa2_lvl0: mmw_pa2-config0 {
temperature = <42000>;
hysteresis = <4000>;
type = "passive";
};
pa2_lvl1: mmw_pa2-config1 {
temperature = <46000>;
hysteresis = <2000>;
type = "passive";
};
pa2_lvl2: mmw_pa2-config2 {
temperature = <56000>;
hysteresis = <6000>;
type = "passive";
};
};
cooling-maps {
pa2_skin_lvl0 {
trip = <&pa2_lvl0>;
cooling-device = <&modem_mmw_skin1 1 1>;
};
pa2_skin_lvl1 {
trip = <&pa2_lvl1>;
cooling-device = <&modem_mmw_skin1 2 2>;
};
pa2_skin_lvl2 {
trip = <&pa2_lvl2>;
cooling-device = <&modem_mmw_skin1 3 3>;
};
};
};
};
&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";
};