713 lines
17 KiB
Plaintext
713 lines
17 KiB
Plaintext
// SPDX-License-Identifier: BSD-3-Clause
|
|
/*
|
|
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
*/
|
|
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/input/qcom,qpnp-power-on.h>
|
|
#include <dt-bindings/spmi/spmi.h>
|
|
#include <dt-bindings/iio/qcom,spmi-vadc.h>
|
|
#include <dt-bindings/iio/qcom,spmi-adc5-gen3-pm5100.h>
|
|
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
|
|
#include <dt-bindings/input/qcom,hv-haptics.h>
|
|
|
|
&spmi_bus {
|
|
#address-cells = <2>;
|
|
#size-cells = <0>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <4>;
|
|
|
|
qcom,pm5100@0 {
|
|
compatible = "qcom,spmi-pmic";
|
|
reg = <0 SPMI_USID>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pon_hlos@1300 {
|
|
compatible = "qcom,qpnp-power-on";
|
|
reg = <0x1300>;
|
|
interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
|
|
interrupt-names = "kpdpwr", "resin";
|
|
|
|
qcom,pon_1 {
|
|
qcom,pon-type = <PON_POWER_ON_TYPE_KPDPWR>;
|
|
linux,code = <KEY_POWER>;
|
|
};
|
|
|
|
qcom,pon_2 {
|
|
qcom,pon-type = <PON_POWER_ON_TYPE_RESIN>;
|
|
linux,code = <KEY_VOLUMEDOWN>;
|
|
};
|
|
};
|
|
|
|
pm5100_charger: qcom,qpnp-smblite {
|
|
compatible = "qcom,qpnp-pm5100-smblite";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
#cooling-cells = <2>;
|
|
|
|
qcom,thermal-mitigation = <1500000 1400000
|
|
1300000 1200000 1100000 1000000 900000
|
|
800000 700000 600000 500000 400000
|
|
300000 200000 100000>;
|
|
|
|
qcom,chgr@2600 {
|
|
reg = <0x1000>;
|
|
interrupts =
|
|
<0x0 0x26 0x1 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x26 0x0 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x26 0x4 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x26 0x7 IRQ_TYPE_EDGE_RISING>;
|
|
|
|
interrupt-names = "chgr-error",
|
|
"chg-state-change",
|
|
"buck-oc",
|
|
"vph-ov";
|
|
};
|
|
|
|
qcom,dcdc@2700 {
|
|
reg = <0x2700>;
|
|
interrupts =
|
|
<0x0 0x27 0x0 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x27 0x4 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x27 0x6 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x27 0x7 IRQ_TYPE_EDGE_BOTH>;
|
|
|
|
interrupt-names = "boost-mode-sw-en",
|
|
"skip-mode",
|
|
"input-current-limiting",
|
|
"switcher-power-ok";
|
|
};
|
|
|
|
qcom,batif@2800 {
|
|
reg = <0x2800>;
|
|
interrupts =
|
|
<0x0 0x28 0x0 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x28 0x2 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x28 0x3 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x28 0x4 IRQ_TYPE_EDGE_RISING>;
|
|
|
|
interrupt-names = "bat-temp",
|
|
"bat-low",
|
|
"bat-ov",
|
|
"bsm-active";
|
|
};
|
|
|
|
qcom,usb@2900 {
|
|
reg = <0x2900>;
|
|
interrupts =
|
|
<0x0 0x29 0x0 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x29 0x1 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x29 0x2 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x29 0x3 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x29 0x4 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x29 0x6 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x29 0x7 IRQ_TYPE_EDGE_RISING>;
|
|
|
|
interrupt-names = "usbin-plugin",
|
|
"usbin-collapse",
|
|
"usbin-uv",
|
|
"usbin-ov",
|
|
"usbin-gtvt",
|
|
"usbin-icl-change",
|
|
"usbin-src-change";
|
|
};
|
|
|
|
qcom,misc@2c00 {
|
|
reg = <0x2c00>;
|
|
interrupts =
|
|
<0x0 0x2c 0x0 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x2c 0x1 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x2c 0x2 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x2c 0x3 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x2c 0x4 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x2c 0x5 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x2c 0x6 IRQ_TYPE_EDGE_BOTH>;
|
|
|
|
interrupt-names = "wdog-snarl",
|
|
"wdog-bark",
|
|
"aicl-fail",
|
|
"aicl-done",
|
|
"imp-trigger",
|
|
"all-chnl-cond-done",
|
|
"temp-change";
|
|
};
|
|
};
|
|
|
|
pm5100_tz: qcom,temp-alarm@a00 {
|
|
compatible = "qcom,spmi-temp-alarm";
|
|
reg = <0xa00>;
|
|
interrupts = <0x0 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
|
|
io-channels = <&pm5100_adc PM5100_ADC5_GEN3_DIE_TEMP>;
|
|
io-channel-names = "thermal";
|
|
#thermal-sensor-cells = <0>;
|
|
};
|
|
|
|
pm5100_adc: vadc@8000 {
|
|
compatible = "qcom,spmi-adc5-gen3";
|
|
reg = <0x8000>;
|
|
reg-names = "adc5-gen3-base";
|
|
qcom,debug-base = <0x8300>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
interrupts = <0x0 0x80 0x1 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-names = "adc-sdam0";
|
|
#io-channel-cells = <1>;
|
|
status = "disabled";
|
|
|
|
pm5100_ref_gnd {
|
|
reg = <PM5100_ADC5_GEN3_OFFSET_REF>;
|
|
label = "pm5100_ref_gnd";
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
pm5100_vref_1p25 {
|
|
reg = <PM5100_ADC5_GEN3_1P25VREF>;
|
|
label = "pm5100_vref_1p25";
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
pm5100_die_temp {
|
|
reg = <PM5100_ADC5_GEN3_DIE_TEMP>;
|
|
label = "pm5100_die_temp";
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
pm5100_xo_therm {
|
|
reg = <PM5100_ADC5_GEN3_AMUX1_THM_100K_PU>;
|
|
label = "pm5100_xo_therm";
|
|
qcom,ratiometric;
|
|
qcom,hw-settle-time = <700>;
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
pm5100_usb_in_i_uv {
|
|
reg = <PM5100_ADC5_GEN3_USB_IN_I>;
|
|
label = "pm5100_usb_in_i_uv";
|
|
qcom,pre-scaling = <1 1>;
|
|
qcom,scale-fn-type = <ADC_SCALE_HW_CALIB_PM5_GEN3_USB_IN_I>;
|
|
};
|
|
|
|
pm5100_chg_temp {
|
|
reg = <PM5100_ADC5_GEN3_CHG_TEMP>;
|
|
label = "pm5100_chg_temp";
|
|
qcom,pre-scaling = <1 1>;
|
|
qcom,scale-fn-type = <ADC_SCALE_HW_CALIB_PM5_CHG_TEMP>;
|
|
};
|
|
|
|
pm5100_usb_in_v {
|
|
reg = <PM5100_ADC5_GEN3_USB_SNS_V_16>;
|
|
label = "pm5100_usb_in_v";
|
|
qcom,pre-scaling = <1 16>;
|
|
};
|
|
|
|
pm5100_boost_out_v {
|
|
reg = <PM5100_ADC5_GEN3_VIN_DIV16_MUX>;
|
|
label = "pm5100_boost_out_v";
|
|
qcom,pre-scaling = <1 6>;
|
|
};
|
|
|
|
pm5100_bat_therm {
|
|
reg = <PM5100_ADC5_GEN3_BATT_THM_100K_PU>;
|
|
label = "pm5100_bat_therm";
|
|
qcom,ratiometric;
|
|
qcom,hw-settle-time = <200>;
|
|
qcom,pre-scaling = <1 1>;
|
|
qcom,scale-fn-type = <ADC_SCALE_HW_CALIB_PM5_GEN3_BATT_THERM_100K>;
|
|
};
|
|
|
|
pm5100_bat_id {
|
|
reg = <PM5100_ADC5_GEN3_BAT_ID_100K_PU>;
|
|
label = "pm5100_bat_id";
|
|
qcom,ratiometric;
|
|
qcom,hw-settle-time = <200>;
|
|
qcom,pre-scaling = <1 1>;
|
|
qcom,scale-fn-type = <ADC_SCALE_HW_CALIB_PM5_GEN3_BATT_ID_100K>;
|
|
};
|
|
|
|
pm5100_vph_pwr {
|
|
reg = <PM5100_ADC5_GEN3_VPH_PWR>;
|
|
label = "pm5100_vph_pwr";
|
|
qcom,pre-scaling = <1 3>;
|
|
};
|
|
|
|
pm5100_vbat_sns {
|
|
reg = <PM5100_ADC5_GEN3_VBAT_SNS_QBG>;
|
|
label = "pm5100_vbat_sns";
|
|
qcom,pre-scaling = <1 3>;
|
|
};
|
|
};
|
|
|
|
pm5100_gpios: pinctrl@8800 {
|
|
compatible = "qcom,pm5100-gpio";
|
|
reg = <0x8800>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
};
|
|
|
|
pm5100_rtc: rtc@6400 {
|
|
compatible = "qcom,pm5100-rtc";
|
|
reg = <0x6400>, <0x6500>;
|
|
reg-names = "rtc", "alarm";
|
|
interrupts = <0x0 0x65 0x1 IRQ_TYPE_EDGE_RISING>;
|
|
};
|
|
|
|
pm5100_cdc: qcom,pm5100-cdc {
|
|
compatible = "qcom,pm5100-spmi";
|
|
};
|
|
|
|
pm5100_bcl: bcl@4700 {
|
|
compatible = "qcom,bcl-v5";
|
|
reg = <0x4700 0x100>;
|
|
interrupts = <0x0 0x47 0x0 IRQ_TYPE_NONE>,
|
|
<0x0 0x47 0x1 IRQ_TYPE_NONE>,
|
|
<0x0 0x47 0x2 IRQ_TYPE_NONE>;
|
|
interrupt-names = "bcl-lvl0",
|
|
"bcl-lvl1",
|
|
"bcl-lvl2";
|
|
qcom,pmic7-threshold;
|
|
qcom,ibat-ccm-hw-support;
|
|
#thermal-sensor-cells = <1>;
|
|
};
|
|
|
|
bcl_soc:bcl-soc {
|
|
compatible = "qcom,msm-bcl-soc";
|
|
#thermal-sensor-cells = <0>;
|
|
};
|
|
|
|
bcl_off: bcl-off@4700 {
|
|
compatible = "qcom,bcl-off";
|
|
reg = <0x4700 0x100>;
|
|
#cooling-cells = <2>;
|
|
};
|
|
|
|
pm5100_sdam_2: sdam@7100 {
|
|
compatible = "qcom,spmi-sdam";
|
|
reg = <0x7100>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
restart_reason: restart@48 {
|
|
reg = <0x48 0x1>;
|
|
bits = <1 7>;
|
|
};
|
|
|
|
charger_debug_mask: debug@94 {
|
|
reg = <0x94 0x1>;
|
|
};
|
|
|
|
qbg_debug_mask_low: debug@96 {
|
|
reg = <0x96 0x1>;
|
|
};
|
|
|
|
qbg_debug_mask_high: debug@97 {
|
|
reg = <0x97 0x1>;
|
|
};
|
|
|
|
};
|
|
|
|
pm5100_sdam_5: sdam@7400 {
|
|
compatible = "qcom,spmi-sdam";
|
|
reg = <0x7400>;
|
|
};
|
|
|
|
pm5100_sdam_7: sdam@7600 {
|
|
compatible = "qcom,spmi-sdam";
|
|
reg = <0x7600>;
|
|
};
|
|
|
|
pm5100_sdam_8: sdam@7700 {
|
|
compatible = "qcom,spmi-sdam";
|
|
reg = <0x7700>;
|
|
charger_soc: charger_soc@47 {
|
|
reg = <0x65 0x2>;
|
|
};
|
|
};
|
|
|
|
pm5100_sdam_22: sdam@8500 {
|
|
compatible = "qcom,spmi-sdam";
|
|
reg = <0x8500>;
|
|
|
|
/* GPS demod state */
|
|
skip_esr_state: demod@46 {
|
|
reg = <0x46 0x1>;
|
|
};
|
|
};
|
|
|
|
pm5100_sdam_23: sdam@8600 {
|
|
compatible = "qcom,spmi-sdam";
|
|
reg = <0x8600>;
|
|
};
|
|
|
|
pm5100_qbg: qpnp,qbg@4f00 {
|
|
status = "disabled";
|
|
compatible = "qcom,qbg";
|
|
#address-cells = <1>;
|
|
reg = <0x4f00>;
|
|
interrupt-names = "qbg-sdam", "qbg-vbatt-empty";
|
|
interrupts = <0x0 0x76 0x1 IRQ_TYPE_EDGE_RISING>,
|
|
<0x0 0x4F 0x1 IRQ_TYPE_EDGE_RISING>;
|
|
qcom,num-data-sdams = <5>;
|
|
qcom,sdam-base = <0x7600>;
|
|
qcom,adc-cmn-wb-base = <0x3000>;
|
|
qcom,adc-cmn-base = <0x3900>;
|
|
};
|
|
|
|
pm5100_haptics: qcom,hv-haptics@f000 {
|
|
compatible = "qcom,pm5100-haptics";
|
|
reg = <0xf000>, <0xf100>;
|
|
interrupts = <0x0 0xf0 0x1 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-names = "fifo-empty";
|
|
qcom,vmax-mv = <2500>;
|
|
qcom,brake-mode = <BRAKE_CLOSE_LOOP>;
|
|
qcom,brake-pattern = /bits/ 8 <0xff 0x3f 0x1f>;
|
|
qcom,lra-period-us = <4167>;
|
|
qcom,drv-sig-shape = <WF_SINE>;
|
|
qcom,brake-sig-shape = <WF_SINE>;
|
|
status = "disabled";
|
|
|
|
effect_0 {
|
|
/* CLICK */
|
|
qcom,effect-id = <0>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x01f S_PERIOD_T_LRA 0>,
|
|
<0x03f S_PERIOD_T_LRA 0>,
|
|
<0x05f S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>,
|
|
<0x17f S_PERIOD_T_LRA 0>,
|
|
<0x15f S_PERIOD_T_LRA 0>,
|
|
<0x13f S_PERIOD_T_LRA 0>,
|
|
<0x11f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-pattern-preload;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
effect_1 {
|
|
/* DOUBLE_CLICK */
|
|
qcom,effect-id = <1>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x01f S_PERIOD_T_LRA 0>,
|
|
<0x03f S_PERIOD_T_LRA 0>,
|
|
<0x05f S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>,
|
|
<0x17f S_PERIOD_T_LRA 0>,
|
|
<0x15f S_PERIOD_T_LRA 0>,
|
|
<0x13f S_PERIOD_T_LRA 0>,
|
|
<0x11f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
effect_2 {
|
|
/* TICK */
|
|
qcom,effect-id = <2>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x01f S_PERIOD_T_LRA 0>,
|
|
<0x03f S_PERIOD_T_LRA 0>,
|
|
<0x05f S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>,
|
|
<0x17f S_PERIOD_T_LRA 0>,
|
|
<0x15f S_PERIOD_T_LRA 0>,
|
|
<0x13f S_PERIOD_T_LRA 0>,
|
|
<0x11f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
effect_3 {
|
|
/* THUD */
|
|
qcom,effect-id = <3>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x01f S_PERIOD_T_LRA 0>,
|
|
<0x03f S_PERIOD_T_LRA 0>,
|
|
<0x05f S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>,
|
|
<0x17f S_PERIOD_T_LRA 0>,
|
|
<0x15f S_PERIOD_T_LRA 0>,
|
|
<0x13f S_PERIOD_T_LRA 0>,
|
|
<0x11f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
effect_4 {
|
|
/* POP */
|
|
qcom,effect-id = <4>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x01f S_PERIOD_T_LRA 0>,
|
|
<0x03f S_PERIOD_T_LRA 0>,
|
|
<0x05f S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>,
|
|
<0x17f S_PERIOD_T_LRA 0>,
|
|
<0x15f S_PERIOD_T_LRA 0>,
|
|
<0x13f S_PERIOD_T_LRA 0>,
|
|
<0x11f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
effect_5 {
|
|
/* HEAVY CLICK */
|
|
qcom,effect-id = <5>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x01f S_PERIOD_T_LRA 0>,
|
|
<0x03f S_PERIOD_T_LRA 0>,
|
|
<0x05f S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>,
|
|
<0x17f S_PERIOD_T_LRA 0>,
|
|
<0x15f S_PERIOD_T_LRA 0>,
|
|
<0x13f S_PERIOD_T_LRA 0>,
|
|
<0x11f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_0 {
|
|
/* NOOP */
|
|
qcom,primitive-id = <0>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0 S_PERIOD_T_LRA 0>,
|
|
<0 S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_1 {
|
|
/* CLICK */
|
|
qcom,primitive-id = <1>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_2 {
|
|
/* THUD */
|
|
qcom,primitive-id = <2>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_3 {
|
|
/* SPIN */
|
|
qcom,primitive-id = <3>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_4 {
|
|
/* QUICK_RISE */
|
|
qcom,primitive-id = <4>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_5 {
|
|
/* SLOW_RISE */
|
|
qcom,primitive-id = <5>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_6 {
|
|
/* QUICK_FALL */
|
|
qcom,primitive-id = <6>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_7 {
|
|
/* LIGHT_TICK */
|
|
qcom,primitive-id = <7>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
|
|
primitive_8 {
|
|
/* LOW_TICK */
|
|
qcom,primitive-id = <8>;
|
|
qcom,wf-vmax-mv = <4800>;
|
|
qcom,wf-pattern-data = <0x0ff S_PERIOD_T_LRA 0>,
|
|
<0x07f S_PERIOD_T_LRA 0>;
|
|
qcom,wf-pattern-period-us = <4167>;
|
|
qcom,wf-brake-pattern = /bits/ 8 <0x0 0x0 0x0>;
|
|
qcom,wf-auto-res-disable;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&thermal_zones {
|
|
pm5100-tz {
|
|
polling-delay-passive = <100>;
|
|
polling-delay = <0>;
|
|
thermal-governor = "step_wise";
|
|
thermal-sensors = <&pm5100_tz>;
|
|
|
|
trips {
|
|
pm5100_trip0: trip0 {
|
|
temperature = <95000>;
|
|
hysteresis = <0>;
|
|
type = "passive";
|
|
};
|
|
|
|
pm5100_trip1: trip1 {
|
|
temperature = <115000>;
|
|
hysteresis = <0>;
|
|
type = "critical";
|
|
};
|
|
|
|
pm5100_trip2: trip2 {
|
|
temperature = <145000>;
|
|
hysteresis = <0>;
|
|
type = "critical";
|
|
};
|
|
};
|
|
};
|
|
|
|
pm5100-ibat-lvl0 {
|
|
polling-delay-passive = <0>;
|
|
polling-delay = <0>;
|
|
thermal-sensors = <&pm5100_bcl 0>;
|
|
|
|
trips {
|
|
ibat_lvl0:ibat-lvl0 {
|
|
temperature = <1500>;
|
|
hysteresis = <200>;
|
|
type = "passive";
|
|
};
|
|
};
|
|
};
|
|
|
|
pm5100-ibat-lvl1 {
|
|
polling-delay-passive = <0>;
|
|
polling-delay = <0>;
|
|
thermal-sensors = <&pm5100_bcl 1>;
|
|
|
|
trips {
|
|
ibat_lvl1:ibat-lvl1 {
|
|
temperature = <1900>;
|
|
hysteresis = <200>;
|
|
type = "passive";
|
|
};
|
|
};
|
|
};
|
|
|
|
pm5100-bcl-lvl0 {
|
|
polling-delay-passive = <100>;
|
|
polling-delay = <0>;
|
|
thermal-sensors = <&pm5100_bcl 5>;
|
|
|
|
trips {
|
|
thermal-engine-trip {
|
|
temperature = <100>;
|
|
hysteresis = <0>;
|
|
type = "passive";
|
|
};
|
|
|
|
bcl_lvl0: bcl-lvl0 {
|
|
temperature = <1>;
|
|
hysteresis = <1>;
|
|
type = "passive";
|
|
};
|
|
};
|
|
};
|
|
|
|
pm5100-bcl-lvl1 {
|
|
polling-delay-passive = <100>;
|
|
polling-delay = <0>;
|
|
thermal-sensors = <&pm5100_bcl 6>;
|
|
|
|
trips {
|
|
thermal-engine-trip {
|
|
temperature = <100>;
|
|
hysteresis = <0>;
|
|
type = "passive";
|
|
};
|
|
|
|
bcl_lvl1: bcl-lvl1 {
|
|
temperature = <1>;
|
|
hysteresis = <1>;
|
|
type = "passive";
|
|
};
|
|
};
|
|
};
|
|
|
|
pm5100-bcl-lvl2 {
|
|
polling-delay-passive = <100>;
|
|
polling-delay = <0>;
|
|
thermal-sensors = <&pm5100_bcl 7>;
|
|
|
|
trips {
|
|
thermal-engine-trip {
|
|
temperature = <100>;
|
|
hysteresis = <0>;
|
|
type = "passive";
|
|
};
|
|
|
|
bcl_lvl2: bcl-lvl2 {
|
|
temperature = <1>;
|
|
hysteresis = <1>;
|
|
type = "passive";
|
|
};
|
|
};
|
|
};
|
|
|
|
socd {
|
|
polling-delay-passive = <100>;
|
|
polling-delay = <0>;
|
|
thermal-sensors = <&bcl_soc>;
|
|
|
|
trips {
|
|
thermal-engine-trip {
|
|
temperature = <100>;
|
|
hysteresis = <0>;
|
|
type = "passive";
|
|
};
|
|
|
|
socd_trip:socd-trip {
|
|
temperature = <90>;
|
|
hysteresis = <0>;
|
|
type = "passive";
|
|
};
|
|
};
|
|
};
|
|
};
|