qcom: devicetree: Import oplus changes from CPH2723_15.0.2.103(EX01)

Change-Id: I41c18044a121a3ef8be3f6b472ea5cd52da480b2
This commit is contained in:
chandu078
2025-07-31 17:35:34 +05:30
parent 530edc9dce
commit 7554bf0159
100 changed files with 48495 additions and 118 deletions

View File

@@ -5,9 +5,11 @@ kernel_dtstree(
srcs = glob(
[
"Makefile",
"qcom/Makefile",
"qcom/**/*.dtsi",
"qcom/**/*.dts",
"oplus/Makefile",
"oplus/**/*.dtsi",
"oplus/**/*.dts",
"bindings/**/*",
],
exclude = [

View File

@@ -2,5 +2,10 @@
vendor := $(srctree)/$(src)
ifneq "$(wildcard $(vendor)/qcom)" ""
subdir-y += qcom
#OPLUS_DTS_OVERLAY start
#subdir-y += qcom
#OPLUS_DTS_OVERLAY end
endif
#OPLUS_DTS_OVERLAY start
subdir-y += oplus
#OPLUS_DTS_OVERLAY end

25
oplus/Makefile Normal file
View File

@@ -0,0 +1,25 @@
SUN_BASE_DTB += ../qcom/sun.dtb ../qcom/sun-v2.dtb ../qcom/sunp.dtb ../qcom/sunp-v2.dtb \
../qcom/sun-tp.dtb ../qcom/sun-tp-v2.dtb ../qcom/sunp-tp.dtb ../qcom/sunp-tp-v2.dtb \
../qcom/tuna.dtb ../qcom/tuna7.dtb ../qcom/tunap.dtb \
../qcom/kera.dtb ../qcom/kerap.dtb
OPLUS_SUN_BOARDS += dodge-23821-sun-overlay.dtbo\
dodge-23821-sun-overlay-T0.dtbo\
dodge-23893-sun-overlay.dtbo\
dodge-23893-sun-overlay-T0.dtbo\
erhai-24926-sun-overlay.dtbo\
erhai-24926-sun-overlay-DVT.dtbo\
erhai-24976-sun-overlay.dtbo\
erhai-24976-sun-overlay-DVT.dtbo\
erhai-24976-eu-sun-overlay.dtbo\
erhai-24976-eu-sun-overlay-DVT.dtbo\
hummer-24811-sun-overlay.dtbo\
pagani-24821-sun-overlay.dtbo\
pagani-24875-sun-overlay.dtbo\
dtb-y += $(OPLUS_SUN_BOARDS) $(SUN_BASE_DTB)
always-y := $(dtb-y)
subdir-y := $(dts-dirs)
clean-files := *.dtb *.dtbo

View File

@@ -0,0 +1,101 @@
&tlmm {
qupv3_se11_i2c_pins_oplus: qupv3_se11_i2c_pins_oplus {
qupv3_se11_i2c_sda_active_oplus: qupv3_se11_i2c_sda_active_oplus {
mux {
pins = "gpio12";
function = "qup2_se3_l0";
};
config {
pins = "gpio12";
drive-strength = <2>;
bias-pull-up;
//qcom,i2c_pull;
};
};
qupv3_se11_i2c_scl_active_oplus: qupv3_se11_i2c_scl_active_oplus {
mux {
pins = "gpio13";
function = "qup2_se3_l1";
};
config {
pins = "gpio13";
drive-strength = <2>;
bias-pull-up;
//qcom,i2c_pull;
};
};
qupv3_se11_i2c_sleep_oplus: qupv3_se11_i2c_sleep_oplus {
mux {
pins = "gpio12", "gpio13";
function = "gpio";
};
config {
pins = "gpio12", "gpio13";
drive-strength = <2>;
};
};
};
};
&qupv3_se11_i2c{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se11_i2c_sda_active_oplus>, <&qupv3_se11_i2c_scl_active_oplus>;
pinctrl-1 = <&qupv3_se11_i2c_sleep_oplus>;
};
&tlmm {
qupv3_hub_i2c0_pins_oplus: qupv3_hub_i2c0_pins_oplus {
qupv3_hub_i2c0_sda_active_oplus: qupv3_hub_i2c0_sda_active_oplus {
mux {
pins = "gpio64";
function = "i2chub0_se0_l0";
};
config {
pins = "gpio64";
drive-strength = <2>;
bias-pull-up;
//qcom,i2c_pull;
};
};
qupv3_hub_i2c0_scl_active_oplus: qupv3_hub_i2c0_scl_active_oplus {
mux {
pins = "gpio65";
function = "i2chub0_se0_l1";
};
config {
pins = "gpio65";
drive-strength = <2>;
bias-pull-up;
//qcom,i2c_pull;
};
};
qupv3_hub_i2c0_sleep_oplus: qupv3_hub_i2c0_sleep_oplus {
mux {
pins = "gpio64", "gpio65";
function = "gpio";
};
config {
pins = "gpio64", "gpio65";
drive-strength = <2>;
};
};
};
};
&qupv3_hub_i2c0{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_hub_i2c0_sda_active_oplus>, <&qupv3_hub_i2c0_scl_active_oplus>;
pinctrl-1 = <&qupv3_hub_i2c0_sleep_oplus>;
};

View File

@@ -0,0 +1,122 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "dodge_overlay_common.dtsi"
#include "oplus_uff/oplus-uff-23821.dtsi"
#include "oplus_misc/oplus-misc-23821.dtsi"
#include "oplus_chg/oplus-chg-23821.dtsi"
#include "oplus_chg/oplus-chg-23821-silicon-deep-discharge-770.dtsi"
#include "oplus_chg/oplus-chg-23821-pps.dtsi"
#include "tp/dodge-oplus-tp-23821.dtsi"
#include "oplus_nfc/dodge_nfc.dtsi"
#include "sensor/dodge-sensor-23821-T0.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,dodge T0";
oplus,project-id = <23821>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
//#ifdef OPLUS_FEATURE_ESIM
oplus-gpio {
compatible = "oplus,oplus-gpio";
pinctrl-names = "oplus_esim", "sim2_det_no_pull", "sim2_det_pull_high", "sim2_det_pull_low";
pinctrl-0 = <&esim_det_gpio &esim_en_gpio>;
pinctrl-1 = <&sim2_det_no_pull>;
pinctrl-2 = <&sim2_det_pull_high>;
pinctrl-3 = <&sim2_det_pull_low>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pmih010x_gpios 10 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550ve_d_gpios 4 0>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /*OPLUS_FEATURE_ESIM*/
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&pm8550_gpios {
esim_det_gpio: esim_det_gpio {
pins = "gpio11";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pmih010x_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio10";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550ve_d_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};

View File

@@ -0,0 +1,133 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "dodge_overlay_common.dtsi"
#include "oplus_uff/oplus-uff-23821.dtsi"
#include "oplus_misc/oplus-misc-23821.dtsi"
#include "oplus_chg/oplus-chg-23821.dtsi"
#include "oplus_chg/oplus-chg-23821-silicon-deep-discharge-770.dtsi"
#include "oplus_chg/oplus-chg-23821-pps.dtsi"
#include "tp/dodge-oplus-tp-23821.dtsi"
#include "oplus_nfc/dodge_nfc.dtsi"
#include "sensor/dodge-sensor-23821.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,dodge";
oplus,project-id = <23821>;
oplus,hw-id = <OPLUS_T1 OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
//#ifdef OPLUS_FEATURE_ESIM
oplus-gpio {
compatible = "oplus,oplus-gpio";
pinctrl-names = "oplus_esim", "sim2_det_no_pull", "sim2_det_pull_high", "sim2_det_pull_low";
pinctrl-0 = <&esim_det_gpio &esim_en_gpio>;
pinctrl-1 = <&sim2_det_no_pull>;
pinctrl-2 = <&sim2_det_pull_high>;
pinctrl-3 = <&sim2_det_pull_low>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pmih010x_gpios 10 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550ve_d_gpios 4 0>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /*OPLUS_FEATURE_ESIM*/
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
//#ifdef CONFIG_HMBIRD_SCHED
oplus,hmbird {
version_type {
type = "HMBIRD_OGKI";
};
};
//#endif /* CONFIG_HMBIRD_SCHED */
};
&pm8550_gpios {
esim_det_gpio: esim_det_gpio {
pins = "gpio11";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pmih010x_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio10";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550ve_d_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};

View File

@@ -0,0 +1,122 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "dodge_overlay_common.dtsi"
#include "oplus_uff/oplus-uff-23821.dtsi"
#include "oplus_misc/oplus-misc-23893.dtsi"
#include "oplus_chg/oplus-chg-23821.dtsi"
#include "oplus_chg/oplus-chg-23893-silicon-deep-discharge-770.dtsi"
#include "oplus_chg/oplus-chg-23893-pps.dtsi"
#include "tp/dodge-oplus-tp-23821.dtsi"
#include "oplus_nfc/dodge_nfc.dtsi"
#include "sensor/dodge-sensor-23821-T0.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,dodge T0";
oplus,project-id = <23893 23894 23895>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
//#ifdef OPLUS_FEATURE_ESIM
oplus-gpio {
compatible = "oplus,oplus-gpio";
pinctrl-names = "oplus_esim", "sim2_det_no_pull", "sim2_det_pull_high", "sim2_det_pull_low";
pinctrl-0 = <&esim_det_gpio &esim_en_gpio>;
pinctrl-1 = <&sim2_det_no_pull>;
pinctrl-2 = <&sim2_det_pull_high>;
pinctrl-3 = <&sim2_det_pull_low>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pmih010x_gpios 10 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550ve_d_gpios 4 0>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /*OPLUS_FEATURE_ESIM*/
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&pm8550_gpios {
esim_det_gpio: esim_det_gpio {
pins = "gpio11";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pmih010x_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio10";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550ve_d_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};

View File

@@ -0,0 +1,126 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "dodge_overlay_common.dtsi"
#include "oplus_uff/oplus-uff-23821.dtsi"
#include "oplus_misc/oplus-misc-23893.dtsi"
#include "oplus_chg/oplus-chg-23821.dtsi"
#include "oplus_chg/oplus-chg-23893-silicon-deep-discharge-770.dtsi"
#include "oplus_chg/oplus-chg-23893-pps.dtsi"
#include "tp/dodge-oplus-tp-23821.dtsi"
#include "oplus_nfc/dodge_nfc.dtsi"
#include "sensor/dodge-sensor-23821.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,dodge";
oplus,project-id = <23893 23894 23895>;
oplus,hw-id = <OPLUS_T1 OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
//#ifdef OPLUS_FEATURE_ESIM
oplus-gpio {
compatible = "oplus,oplus-gpio";
pinctrl-names = "oplus_esim", "sim2_det_no_pull", "sim2_det_pull_high", "sim2_det_pull_low";
pinctrl-0 = <&esim_det_gpio &esim_en_gpio>;
pinctrl-1 = <&sim2_det_no_pull>;
pinctrl-2 = <&sim2_det_pull_high>;
pinctrl-3 = <&sim2_det_pull_low>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pmih010x_gpios 10 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550ve_d_gpios 4 0>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /*OPLUS_FEATURE_ESIM*/
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&pm8550_gpios {
esim_det_gpio: esim_det_gpio {
pins = "gpio11";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pmih010x_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio10";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550ve_d_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};
&soc {
oplus_kernel_state_monitor {
compatible = "oplus,kernel_state_monitor";
};
};

View File

@@ -0,0 +1,76 @@
&pmk8550_vadc {
pm8550_gpio02_therm {
reg = <PM8550_ADC5_GEN3_AMUX_THM6_GPIO2_100K_PU>;
label = "pm8550_gpio02_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
pm8550_gpio02_usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX_THM6_GPIO2_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&pm8550_flash0 {
qcom,ires-ua = <5000>;
};
&pm8550_flash1 {
qcom,ires-ua = <5000>;
};
&pm8550_flash2 {
qcom,ires-ua = <5000>;
};
&pm8550_flash3 {
qcom,ires-ua = <5000>;
};
&pm8550_torch0 {
qcom,ires-ua = <5000>;
};
&pm8550_torch1 {
qcom,ires-ua = <5000>;
};
&pm8550_torch2 {
qcom,ires-ua = <5000>;
};
&pm8550_torch3 {
qcom,ires-ua = <5000>;
};
&soc {
//#ifdef OPLUS_FEATURE_THERMAL_HORAE
shell_front {
compatible = "oplus,shell-temp";
};
shell_frame {
compatible = "oplus,shell-temp";
};
shell_back {
compatible = "oplus,shell-temp";
};
//#endif /* OPLUS_FEATURE_THERMAL_HORAE */
};

View File

@@ -0,0 +1,22 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-24924.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "display/erhai-oplus-display-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24924.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai DVT";
oplus,project-id = <24924>;
oplus,hw-id = <OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
oplus,gauge-id = <1>;
};

View File

@@ -0,0 +1,21 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-24924.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24924.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai";
oplus,project-id = <24924>;
oplus,hw-id = <OPLUS_PRE_T0 OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0 OPLUS_EVT1 OPLUS_EVT2>;
oplus,gauge-id = <1>;
};

View File

@@ -0,0 +1,22 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-24924.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "display/erhai-oplus-display-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24924.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai-O DVT";
oplus,project-id = <24926>;
oplus,hw-id = <OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
oplus,gauge-id = <1>;
};

View File

@@ -0,0 +1,21 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-24924.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24924.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai-O";
oplus,project-id = <24926>;
oplus,hw-id = <OPLUS_PRE_T0 OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0 OPLUS_EVT1 OPLUS_EVT2>;
oplus,gauge-id = <1>;
};

View File

@@ -0,0 +1,24 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-eu.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "display/erhai-oplus-display-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24976-eu.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
#include "region-id.h.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai-O_EU DVT";
oplus,project-id = <24976>;
oplus,hw-id = <OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
oplus,gauge-id = <2>;
oplus,region-id = <REGION_EU>;
};

View File

@@ -0,0 +1,23 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-eu.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24976-eu.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
#include "region-id.h.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai-O_EU";
oplus,project-id = <24976>;
oplus,hw-id = <OPLUS_PRE_T0 OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0 OPLUS_EVT1 OPLUS_EVT2>;
oplus,gauge-id = <2>;
oplus,region-id = <REGION_EU>;
};

View File

@@ -0,0 +1,22 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-24924.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "display/erhai-oplus-display-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24976.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai-O DVT";
oplus,project-id = <24976>;
oplus,hw-id = <OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
oplus,gauge-id = <1>;
};

View File

@@ -0,0 +1,21 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "erhai_overlay_common.dtsi"
#include "oplus_pogo_kb/erhai-oplus-pogopin-kb-24924.dtsi"
#include "oplus_misc/oplus-misc-24924.dtsi"
#include "tp/erhai-oplus-tp-24924.dtsi"
#include "oplus_chg/erhai/oplus-chg-24976.dtsi"
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include "sensor/erhai-sensor-24924.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,erhai-O";
oplus,project-id = <24976>;
oplus,hw-id = <OPLUS_PRE_T0 OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0 OPLUS_EVT1 OPLUS_EVT2>;
oplus,gauge-id = <1>;
};

View File

@@ -0,0 +1,168 @@
&pmk8550_vadc {
pm8550_gpio02_therm {
reg = <PM8550_ADC5_GEN3_AMUX_THM6_GPIO2_100K_PU>;
label = "pm8550_gpio02_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
pm8550_gpio02_usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX_THM6_GPIO2_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&pm8550_flash0 {
qcom,ires-ua = <5000>;
};
&pm8550_flash1 {
qcom,ires-ua = <5000>;
};
&pm8550_flash2 {
qcom,ires-ua = <5000>;
};
&pm8550_flash3 {
qcom,ires-ua = <5000>;
};
&pm8550_torch0 {
qcom,ires-ua = <5000>;
};
&pm8550_torch1 {
qcom,ires-ua = <5000>;
};
&pm8550_torch2 {
qcom,ires-ua = <5000>;
};
&pm8550_torch3 {
qcom,ires-ua = <5000>;
};
&L11B {
/delete-property/ qcom,proxy-consumer-enable;
};
&pmk8550_gpios {
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-names;
/delete-node/ alt_sleep_clk;
};
&L12B {
regulator-name = "pm_humu_l12";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1900000>;
qcom,init-voltage = <1900000>;
/delete-property/ qcom,proxy-consumer-enable;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
devinfo_erhai {
compatible = "oplus-devinfo";
without-hw-match;
};
};
&soc {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
ram@c3f0000 {
compatible = "qcom,rpmh-stats-v4";
reg = <0x0c3f0000 0x400>;
qcom,qmp = <&aoss_qmp>;
ss-name = "adsp", "adsp_island",
"cdsp", "apss";
};
//#ifdef OPLUS_FEATURE_THERMAL_HORAE
shell_front {
compatible = "oplus,shell-temp";
};
shell_frame {
compatible = "oplus,shell-temp";
};
shell_back {
compatible = "oplus,shell-temp";
};
//#endif /* OPLUS_FEATURE_THERMAL_HORAE */
//#ifdef CONFIG_HMBIRD_SCHED
oplus,hmbird {
version_type {
type = "HMBIRD_GKI";
};
};
//#endif /* CONFIG_HMBIRD_SCHED */
};
&dsm_partition_1_mem {
status = "disabled";
};
&dsm_partition_2_mem{
status = "disabled";
};
&mpss_mem{
status = "disabled";
};
&qdss_apps_mem {
status = "disabled";
};
&soc {
oplus_mm_config: oplus,mm_config {
compatible = "oplus,mm_osvelte-config";
ram-8g {
oplus_bsp_uxmem_opt {
feature-disable;
};
};
};
};

View File

@@ -0,0 +1,50 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "hummer_overlay_common.dtsi"
#include "oplus_misc/oplus-misc-24811.dtsi"
#include "oplus_fp/oplus_fp_24811.dtsi"
#include "tp/hummer-oplus-tp-24811.dtsi"
#include "oplus_chg/oplus-chg-24811.dtsi"
#include "sensor/hummer-sensor-24811.dtsi"
#include "oplus_nfc/hummer_nfc.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,hummer";
oplus,project-id = <24811>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0 OPLUS_T1 OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};

View File

@@ -0,0 +1,51 @@
&pmk8550_vadc {
pm8550_gpio04_therm {
reg = <PM8550_ADC5_GEN3_AMUX2_GPIO4_100K_PU>;
label = "pm8550_gpio04_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
pm8550_gpio04_usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX2_GPIO4_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&soc {
//#ifdef OPLUS_FEATURE_THERMAL_HORAE
shell_front {
compatible = "oplus,shell-temp";
};
shell_frame {
compatible = "oplus,shell-temp";
};
shell_back {
compatible = "oplus,shell-temp";
};
//#endif /* OPLUS_FEATURE_THERMAL_HORAE */
//#ifdef CONFIG_HMBIRD_SCHED
oplus,hmbird {
version_type {
type = "HMBIRD_OGKI";
};
};
//#endif /* CONFIG_HMBIRD_SCHED */
};

View File

@@ -0,0 +1,74 @@
&soc {
bootloader_log {
compatible = "bootloader_log";
linux,contiguous-region = <&bootloader_log_mem>;
};
//#ifdef OPLUS_FEATURE_SECURITY_COMMON
/* 2024/04/09 add for oplus secure */
oplus_secure_common {
compatible = "oplus,secure_common";
};
//#endif /*OPLUS_FEATURE_SECURITY_COMMON*/
oplus-pmic-monitor-log {
compatible = "oplus,pmic-monitor-log";
nvmem = <&pmk8550_sdam_5>, <&pmk8550_sdam_6>;
nvmem-names = "pon_log0", "pon_log1";
};
oplus-ocp-state-log {
compatible = "oplus,pmic-ocp-log";
nvmem-cells = <&ocp_log>;
nvmem-cell-names = "ocp_log";
};
dump_device_info {
compatible = "dump_device_info";
linux,contiguous-region = <&dump_device_info_mem>;
};
oplus_kernel_state_monitor {
compatible = "oplus,kernel_state_monitor";
};
};
&reserved_memory {
/*
This size is from Core/Uefi/LAA/memmap.dtsi
reg = <0x0 0x81CE4000 0x0 0x00010000>;
MemLabel = "UEFI_Log";
so we reserve this for bootloader log
*/
bootloader_log_mem: botloader_mem@0x81CE4000 {
reg = <0 0x81CE4000 0 0x00010000>;
label = "bootloader_log_mem";
};
dump_device_info_mem: device_info_mem@0xA4F00000 {
reg = <0 0xA4F00000 0 0x00008000>;
label = "dump_device_info_mem";
};
};
&pmk8550 {
//#ifdef CONFIG_OPLUS_FEATURE_QCOM_PMICWD
//pmicwd depend on pon_pbs@800
pon_pbs@800 {
compatible = "qcom,qpnp-power-on";
reg = <0x800>;
qcom,system-reset;
qcom,store-hard-reset-reason;
};
pon_pmicwd@800 {
compatible = "oplus,pmicwd_qpnp-power-on";
qcom,pmicwd;
};
oplus_ocp_dev: oplus-ocp-dev@8200 {
compatible = "oplus,pmic-ocp-device";
reg = <0x8200>;
oplus-ocp-device;
};
//#endif /* CONFIG_OPLUS_FEATURE_QCOM_PMICWD */
};

View File

@@ -0,0 +1,10 @@
&qupv3_se5_i2c {
#address-cells = <1>;
#size-cells = <0>;
status = "ok";
aw37004@28{
compatible = "qualcomm,aw37004";
reg = <0x28>;
status = "okay";
};
};

View File

@@ -0,0 +1,423 @@
/* qcom battery gauge, svooc-67w, ufcs-44w, pps-33w */
#include "oplus-chg-erhai-common.dtsi"
#include "oplus-chg-qbg.dtsi"
&oplus_cpa {
oplus,protocol_list = <CHG_PROTOCOL_UFCS 44
CHG_PROTOCOL_VOOC 67
CHG_PROTOCOL_PPS 33
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_UFCS
CHG_PROTOCOL_PPS
CHG_PROTOCOL_PD
CHG_PROTOCOL_VOOC>;
};
/* PPS */
&battery_charger {
oplus_adsp_pps: oplus,adsp_pps {
oplus,ic_type = <OPLUS_CHG_IC_PPS>;
oplus,ic_index = <0>;
};
};
&soc {
oplus_virtual_pps: oplus,virtual_pps {
compatible = "oplus,virtual_pps";
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_PPS>;
oplus,ic_index = <0>;
oplus,pps_ic = <&oplus_adsp_pps>;
};
oplus_pps_charge: oplus,pps_charge {
compatible = "oplus,pps_charge";
oplus,pps_ic = <&oplus_virtual_pps>;
oplus,cp_ic = <&oplus_virtual_cp>;
oplus,dpdm_switch_ic = <&oplus_virtual_dpdm_switch>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <3000>;
oplus,curr_max_ma_percent = <2000 /* 75% ibus */
1000 /* 85% ibus */>;
oplus,lift_vbus_use_cpvout;
oplus,process_close_cp_item;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <55>;
oplus,pps_strategy_normal_current = <3000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <30188>;
oplus,pps_timeout_oplus = <30188>;
oplus,pps_ibat_over_third = <33 7400>;
oplus,pps_ibat_over_oplus = <33 7400>;
oplus,pps_full_cool_sw_vbat = <4490>;
oplus,pps_full_normal_sw_vbat = <4490>;
oplus,pps_full_normal_hw_vbat = <4540>;
oplus,pps_full_ffc_vbat = <4485>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4490>;
oplus,pps_full_normal_sw_vbat_third= <4490>;
oplus,pps_full_normal_hw_vbat_third = <4540>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <3000 3000 2000 3000 3000 3000>;
oplus,pps_little_cool_high_temp = <210>;
oplus,curve_strategy_name = "pps_ufcs_curve_v2";
oplus,pps_charge_strategy_soc = <0 20 35 55 75 85 85>;
oplus,pps_charge_strategy_temp = <0 50 120 160 350 440 510>;
oplus,temperature_strategy_name = "cgcl";
oplus,temperature_strategy_data = <OPLUS_STRATEGY_USE_SHELL_TEMP
0 385 7300 1 0
375 405 5000 2 0
395 420 4000 3 1
410 430 3500 4 2
420 440 2000 4 3>;
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 90>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 90>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
};
};

View File

@@ -0,0 +1,18 @@
/* BQ pack gauge, svooc-80w, no-ufcs, pps-55w */
#include "oplus-chg-erhai-common.dtsi"
#include "oplus-chg-export.dtsi"
#include "oplus-chg-pack-gauge.dtsi"
&oplus_cpa {
oplus,protocol_list = <CHG_PROTOCOL_VOOC 80
CHG_PROTOCOL_PPS 55
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
CHG_PROTOCOL_PPS
CHG_PROTOCOL_VOOC>;
};
&oplus_sc8547a {
oplus_spec,external_gauge_support;
};

View File

@@ -0,0 +1,24 @@
/* qcom battery gauge, svooc-80w, no-ufcs, pps-33w */
#include "oplus-chg-erhai-common.dtsi"
#include "oplus-chg-export.dtsi"
#include "oplus-chg-qbg.dtsi"
&oplus_cpa {
oplus,protocol_list = <CHG_PROTOCOL_VOOC 80
CHG_PROTOCOL_PPS 33
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
CHG_PROTOCOL_PPS
CHG_PROTOCOL_VOOC>;
oplus,common_chg_pps {
oplus,region_id = /bits/ 8 <0xA7>;
oplus,protocol_list = <CHG_PROTOCOL_VOOC 80
CHG_PROTOCOL_PPS 55
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
CHG_PROTOCOL_PPS
CHG_PROTOCOL_VOOC>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,825 @@
/* SVOOC */
&oplus_vooc {
oplus,vooc_curr_max = <CP_CURR_LIMIT_7BIT_15_0A>;
oplus,vooc_power_max_w = <80>;
oplus,vooc_project = <7>;
oplus,abnormal_adapter_current = <CP_CURR_LIMIT_7BIT_15_0A CP_CURR_LIMIT_7BIT_15_0A
CP_CURR_LIMIT_7BIT_10_0A CP_CURR_LIMIT_7BIT_10_0A
CP_CURR_LIMIT_7BIT_8_0A CP_CURR_LIMIT_7BIT_8_0A
CP_CURR_LIMIT_7BIT_6_0A CP_CURR_LIMIT_7BIT_6_0A
CP_CURR_LIMIT_7BIT_4_0A CP_CURR_LIMIT_7BIT_4_0A>;
oplus,abnormal_over_80w_adapter_current = <CP_CURR_LIMIT_7BIT_15_0A CP_CURR_LIMIT_7BIT_15_0A
CP_CURR_LIMIT_7BIT_14_0A CP_CURR_LIMIT_7BIT_14_0A
CP_CURR_LIMIT_7BIT_12_0A CP_CURR_LIMIT_7BIT_12_0A
CP_CURR_LIMIT_7BIT_10_0A CP_CURR_LIMIT_7BIT_10_0A
CP_CURR_LIMIT_7BIT_8_0A CP_CURR_LIMIT_7BIT_8_0A
CP_CURR_LIMIT_7BIT_6_0A CP_CURR_LIMIT_7BIT_6_0A
CP_CURR_LIMIT_7BIT_4_0A CP_CURR_LIMIT_7BIT_4_0A>;
/* first data is strategy used temp type */
oplus,general_strategy_name = "cgcl";
oplus,general_strategy_data = < OPLUS_STRATEGY_USE_SHELL_TEMP
0 385 CP_CURR_LIMIT_7BIT_15_0A 1 0
375 395 CP_CURR_LIMIT_7BIT_12_6A 2 0
385 420 CP_CURR_LIMIT_7BIT_8_0A 3 1
410 440 CP_CURR_LIMIT_7BIT_6_0A 3 2 >;
};
&oplus_sc8547a {
oplus_spec,voocphy_current_default = <73>;
oplus_spec,voocphy_ibat_over_current = <16000>;
svooc_charge_strategy {
strategy_soc_0_to_50 { /* 0 ~ 20 */
strategy_temp_little_cold = <4150 38 0 0 0
4150 35 0 0 0
4150 30 0 0 0
4510 26 0 0 0
4510 25 0 0 0
4510 20 0 0 0
4510 15 0 0 0
4520 10 1 0 0>;
strategy_temp_cool = <4150 48 0 0 0
4150 45 0 0 0
4150 40 0 0 0
4150 35 0 0 0
4150 30 0 0 0
4200 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool = <4150 48 0 0 0
4150 45 0 0 0
4150 40 0 0 0
4150 35 0 0 0
4150 30 0 0 0
4200 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool_high = <4050 73 0 0 0
4230 61 0 0 0
4230 50 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_low = <4050 73 0 0 0
4230 61 0 0 0
4230 50 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_high = <4200 61 0 0 0
4200 60 0 0 0
4200 50 0 0 0
4230 48 0 0 0
4230 45 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 14 1 0 0>;
strategy_temp_warm = <4120 32 0 0 0
4120 30 0 0 0
4120 25 0 0 0
4120 20 0 0 0
4120 15 0 0 0
4130 10 1 0 0>;
};
strategy_soc_0_to_50_mid { /* 21 ~ 35 */
strategy_temp_little_cold = <4150 38 0 0 0
4150 35 0 0 0
4150 30 0 0 0
4510 26 0 0 0
4510 25 0 0 0
4510 20 0 0 0
4510 15 0 0 0
4520 10 1 0 0>;
strategy_temp_cool = <4150 48 0 0 0
4150 45 0 0 0
4150 40 0 0 0
4150 35 0 0 0
4150 30 0 0 0
4200 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool = <4150 48 0 0 0
4150 45 0 0 0
4150 40 0 0 0
4150 35 0 0 0
4150 30 0 0 0
4200 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool_high = <4050 73 0 0 0
4230 61 0 0 0
4230 50 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_low = <4050 73 0 0 0
4230 61 0 0 0
4230 50 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_high = <4200 61 0 0 0
4200 60 0 0 0
4200 50 0 0 0
4230 48 0 0 0
4230 45 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 14 1 0 0>;
strategy_temp_warm = <4120 32 0 0 0
4120 30 0 0 0
4120 25 0 0 0
4120 20 0 0 0
4120 15 0 0 0
4130 10 1 0 0>;
};
strategy_soc_0_to_50_high { /* 36 ~ 55 */
strategy_temp_little_cold = <4510 20 0 0 0
4510 15 0 0 0
4520 10 1 0 0>;
strategy_temp_cool = <4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool = <4150 40 0 0 0
4150 35 0 0 0
4150 30 0 0 0
4200 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool_high = <4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_low = <4230 61 0 0 0
4230 50 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_high = <4200 61 0 0 0
4200 60 0 0 0
4200 50 0 0 0
4230 48 0 0 0
4230 45 0 0 0
4230 40 0 0 0
4380 39 0 0 0
4380 35 0 0 0
4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 14 1 0 0>;
strategy_temp_warm = <4120 32 0 0 0
4120 30 0 0 0
4120 25 0 0 0
4120 20 0 0 0
4120 15 0 0 0
4130 10 1 0 0>;
};
strategy_soc_50_to_75 { /* 56 ~ 75 */
strategy_temp_little_cold = <4510 15 0 0 0
4520 10 1 0 0>;
strategy_temp_cool = <4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool = <4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool_high = <4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_low = <4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_high = <4380 30 0 0 0
4535 29 0 0 0
4535 25 0 0 0
4535 20 0 0 0
4535 15 0 0 0
4545 14 1 0 0>;
strategy_temp_warm = <4130 10 1 0 0>;
};
strategy_soc_75_to_85 { /* 76 ~ 85 */
strategy_temp_little_cold = <4520 10 1 0 0>;
strategy_temp_cool = <4545 10 1 0 0>;
strategy_temp_little_cool = <4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_little_cool_high = <4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_low = <4535 15 0 0 0
4545 10 1 0 0>;
strategy_temp_normal_high = <4535 20 0 0 0
4535 15 0 0 0
4545 14 1 0 0>;
strategy_temp_warm = <4130 10 1 0 0>;
};
strategy_soc_85_to_90 { /* 86 ~ 90 */
strategy_temp_little_cold = <4520 10 1 0 0>;
strategy_temp_cool = <4545 10 1 0 0>;
strategy_temp_little_cool = <4545 10 1 0 0>;
strategy_temp_little_cool_high = <4545 10 1 0 0>;
strategy_temp_normal_low = <4545 10 1 0 0>;
strategy_temp_normal_high = <4545 14 1 0 0>;
strategy_temp_warm = <4130 10 1 0 0>;
};
};
};
&oplus_monitor {
track,wired_max_power = <80000>;
track,wired_fast_chg_scheme = <1>;
};
/* PPS */
&battery_charger {
oplus_adsp_pps: oplus,adsp_pps {
oplus,ic_type = <OPLUS_CHG_IC_PPS>;
oplus,ic_index = <0>;
};
};
&oplus_chg_core {
oplus,common-charge-icl-support;
};
&soc {
oplus_virtual_pps: oplus,virtual_pps {
compatible = "oplus,virtual_pps";
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_PPS>;
oplus,ic_index = <0>;
oplus,pps_ic = <&oplus_adsp_pps>;
};
oplus_pps_charge: oplus,pps_charge {
compatible = "oplus,pps_charge";
oplus,pps_ic = <&oplus_virtual_pps>;
oplus,cp_ic = <&oplus_virtual_cp>;
oplus,dpdm_switch_ic = <&oplus_virtual_dpdm_switch>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <5000>;
oplus,curr_max_ma_percent = <2000 /* 75% ibus */
1000 /* 85% ibus */>;
oplus,lift_vbus_use_cpvout;
oplus,process_close_cp_item;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <55>;
oplus,pps_strategy_normal_current = <5000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <30188>;
oplus,pps_timeout_oplus = <30188>;
oplus,pps_ibat_over_third = <55 11400
33 7400>;
oplus,pps_ibat_over_oplus = <55 11400
33 7400>;
oplus,pps_full_cool_sw_vbat = <4490>;
oplus,pps_full_normal_sw_vbat = <4490>;
oplus,pps_full_normal_hw_vbat = <4540>;
oplus,pps_full_ffc_vbat = <4485>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4490>;
oplus,pps_full_normal_sw_vbat_third= <4490>;
oplus,pps_full_normal_hw_vbat_third = <4540>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <5000 5000 3000 5000 5000 5000>;
oplus,pps_little_cool_high_temp = <210>;
oplus,curve_strategy_name = "pps_ufcs_curve_v2";
oplus,pps_charge_strategy_soc = <0 20 35 55 75 85 85>;
oplus,pps_charge_strategy_temp = <0 50 120 160 350 440 510>;
oplus,temperature_strategy_name = "cgcl";
oplus,temperature_strategy_data = <OPLUS_STRATEGY_USE_SHELL_TEMP
0 385 7300 1 0
375 405 5000 2 0
395 420 4000 3 1
410 430 3500 4 2
420 440 2000 4 3>;
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 90>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3800 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4200 5000 0 0
11000 4230 4800 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3200 0 0
11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3800 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4200 5000 0 0
11000 4230 4800 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3200 0 0
11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4200 5000 0 0
11000 4230 4800 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3200 0 0
11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 90>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3800 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4200 5000 0 0
11000 4230 4800 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3200 0 0
11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3800 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4480 2600 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 4800 0 0
11000 4150 4500 0 0
11000 4150 4000 0 0
11000 4150 3500 0 0
11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4200 5000 0 0
11000 4230 4800 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3200 0 0
11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4150 3000 0 0
11000 4200 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4230 5000 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4480 2900 0 0
11000 4480 2500 0 0
11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4200 5000 0 0
11000 4230 4800 0 0
11000 4230 4000 0 0
11000 4380 3900 0 0
11000 4380 3500 0 0
11000 4380 3000 0 0
11000 4460 2900 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 3200 0 0
11000 4120 3000 0 0
11000 4120 2500 0 0
11000 4120 2000 0 0
11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 2000 0 0
11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4480 1500 0 0
11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4490 1000 1 0>;
strategy_temp_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool = <11000 4490 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 1000 1 0>;
strategy_temp_normal_low = <11000 4490 1000 1 0>;
strategy_temp_normal_high = <11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
};
};

View File

@@ -0,0 +1,181 @@
&oplus_mms_gauge {
oplus_virtual_gauge: oplus,virtual_gauge {
compatible = "oplus,virtual_gauge";
oplus,gauge_ic = <&oplus_adsp_gauge &oplus_ext_gauge>;
oplus,gauge_ic_index = <0 1>;
oplus,gauge_ic_func_group = <&adsp_gauge_groups &bq27541_groups>;
oplus,batt_capacity_mah = <11740>;
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_GAUGE>;
oplus,ic_index = <0>;
};
};
&oplus_chg_core {
oplus-gauge {
bq27541_groups: oplus,bq27541_groups {
functions = <
OPLUS_IC_FUNC_INIT
OPLUS_IC_FUNC_EXIT
OPLUS_IC_FUNC_REG_DUMP
OPLUS_IC_FUNC_SMT_TEST
OPLUS_IC_FUNC_GAUGE_GET_BATT_VOL
OPLUS_IC_FUNC_GAUGE_GET_BATT_MAX
OPLUS_IC_FUNC_GAUGE_GET_BATT_MIN
OPLUS_IC_FUNC_GAUGE_GET_BATT_CURR
OPLUS_IC_FUNC_GAUGE_GET_BATT_TEMP
OPLUS_IC_FUNC_GAUGE_GET_BATT_SOC
OPLUS_IC_FUNC_GAUGE_GET_BATT_FCC
OPLUS_IC_FUNC_GAUGE_GET_BATT_CC
OPLUS_IC_FUNC_GAUGE_GET_BATT_RM
OPLUS_IC_FUNC_GAUGE_GET_BATT_SOH
OPLUS_IC_FUNC_GAUGE_GET_BATT_AUTH
OPLUS_IC_FUNC_GAUGE_GET_BATT_HMAC
OPLUS_IC_FUNC_GAUGE_SET_BATT_FULL
OPLUS_IC_FUNC_GAUGE_UPDATE_DOD0
OPLUS_IC_FUNC_GAUGE_UPDATE_SOC_SMOOTH
OPLUS_IC_FUNC_GAUGE_GET_CB_STATUS
OPLUS_IC_FUNC_GAUGE_GET_BATT_NUM
OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE
OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE_FOR_VOOC
OPLUS_IC_FUNC_GAUGE_GET_BATT_FCC
OPLUS_IC_FUNC_GAUGE_GET_BATT_FC
OPLUS_IC_FUNC_GAUGE_GET_BATT_QM
OPLUS_IC_FUNC_GAUGE_GET_BATT_PD
OPLUS_IC_FUNC_GAUGE_GET_BATT_RCU
OPLUS_IC_FUNC_GAUGE_GET_BATT_RCF
OPLUS_IC_FUNC_GAUGE_GET_BATT_FCU
OPLUS_IC_FUNC_GAUGE_GET_BATT_FCF
OPLUS_IC_FUNC_GAUGE_GET_BATT_SOU
OPLUS_IC_FUNC_GAUGE_GET_BATT_DO0
OPLUS_IC_FUNC_GAUGE_GET_BATT_DOE
OPLUS_IC_FUNC_GAUGE_GET_BATT_TRM
OPLUS_IC_FUNC_GAUGE_GET_BATT_PC
OPLUS_IC_FUNC_GAUGE_GET_BATT_QS
OPLUS_IC_FUNC_GAUGE_IS_SUSPEND
OPLUS_IC_FUNC_GAUGE_GET_BCC_PARMS
OPLUS_IC_FUNC_GAUGE_FASTCHG_UPDATE_BCC_PARMS
OPLUS_IC_FUNC_GAUGE_GET_PREV_BCC_PARMS
OPLUS_IC_FUNC_GAUGE_SET_BCC_PARMS
OPLUS_IC_FUNC_GAUGE_SET_PROTECT_CHECK
OPLUS_IC_FUNC_GAUGE_GET_AFI_UPDATE_DONE
OPLUS_IC_FUNC_GAUGE_CHECK_RESET
OPLUS_IC_FUNC_GAUGE_SET_RESET
OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE_FOR_BCC
OPLUS_IC_FUNC_GAUGE_GET_DOD0
OPLUS_IC_FUNC_GAUGE_GET_DOD0_PASSED_Q
OPLUS_IC_FUNC_GAUGE_GET_QMAX
OPLUS_IC_FUNC_GAUGE_GET_QMAX_PASSED_Q
OPLUS_IC_FUNC_GAUGE_GET_REG_INFO
OPLUS_IC_FUNC_GAUGE_GET_CALIB_TIME
OPLUS_IC_FUNC_GAUGE_GET_BATT_SN
OPLUS_IC_FUNC_GAUGE_GET_MANU_DATE
OPLUS_IC_FUNC_GAUGE_GET_FIRST_USAGE_DATE
OPLUS_IC_FUNC_GAUGE_SET_FIRST_USAGE_DATE
OPLUS_IC_FUNC_GAUGE_GET_UI_CC
OPLUS_IC_FUNC_GAUGE_SET_UI_CC
OPLUS_IC_FUNC_GAUGE_GET_UI_SOH
OPLUS_IC_FUNC_GAUGE_SET_UI_SOH
OPLUS_IC_FUNC_GAUGE_GET_USED_FLAG
OPLUS_IC_FUNC_GAUGE_SET_USED_FLAG
OPLUS_IC_FUNC_GAUGE_SET_CALIB_TIME
OPLUS_IC_FUNC_GAUGE_SET_LAST_CC
OPLUS_IC_FUNC_GAUGE_GET_LAST_CC
>;
virqs = <
OPLUS_IC_VIRQ_ERR
OPLUS_IC_VIRQ_OFFLINE
OPLUS_IC_VIRQ_RESUME
>;
};
adsp_gauge_groups: oplus,oplus_adsp_gauge_groups {
functions = <
OPLUS_IC_FUNC_INIT
OPLUS_IC_FUNC_EXIT
OPLUS_IC_FUNC_REG_DUMP
OPLUS_IC_FUNC_SMT_TEST
OPLUS_IC_FUNC_GAUGE_GET_SUBBOARD_TEMP
>;
virqs = <
OPLUS_IC_VIRQ_ERR
>;
};
};
};
&qupv3_hub_i2c1_pins {
qupv3_hub_i2c1_sda_active_oplus: qupv3_hub_i2c1_sda_active_oplus {
mux {
pins = "gpio66";
function = "i2chub0_se1_l0";
};
config {
pins = "gpio66";
drive-strength = <2>;
bias-pull-up;
};
};
qupv3_hub_i2c1_scl_active_oplus: qupv3_hub_i2c1_scl_active_oplus {
mux {
pins = "gpio67";
function = "i2chub0_se1_l1";
};
config {
pins = "gpio67";
drive-strength = <2>;
bias-pull-up;
};
};
qupv3_hub_i2c1_pulldown: qupv3_hub_i2c1_pulldown {
mux {
pins = "gpio66", "gpio67";
function = "gpio";
};
config {
pins = "gpio66", "gpio67";
drive-strength = <2>;
bias-pull-down;
output-low;
};
};
qupv3_hub_i2c1_pullup: qupv3_hub_i2c1_pullup {
mux {
pins = "gpio66", "gpio67";
function = "gpio";
};
config {
pins = "gpio66", "gpio67";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
};
&qupv3_hub_i2c1 {
status = "ok";
qcom,clk-freq-out = <100000>;
pinctrl-names = "default", "sleep", "pulldown", "pullup";
pinctrl-0 = <&qupv3_hub_i2c1_sda_active_oplus>, <&qupv3_hub_i2c1_scl_active_oplus>;
pinctrl-1 = <&qupv3_hub_i2c1_sleep>;
pinctrl-2 = <&qupv3_hub_i2c1_pulldown>;
pinctrl-3 = <&qupv3_hub_i2c1_pullup>;
oplus_ext_gauge: bq27541-battery@55 {
status = "okay";
compatible = "oplus,bq27z561-battery";
reg = <0x55>;
oplus,ic_index = <0>;
oplus,ic_type = <OPLUS_CHG_IC_GAUGE>;
qcom,modify-soc-smooth;
qcom,modify-soc-calibration;
oplus,support_extern_cmd;
oplus,batt_num = <1>;
};
};

View File

@@ -0,0 +1,115 @@
&oplus_mms_gauge {
oplus,voocphy_ic = <&oplus_virtual_vphy>;
oplus_virtual_gauge: oplus,virtual_gauge {
compatible = "oplus,virtual_gauge";
oplus,gauge_ic = <&oplus_adsp_gauge &maxim_encryption_gauge>;
oplus,gauge_ic_index = <0 1>;
oplus,gauge_ic_func_group = <&adsp_gauge_groups &maxim_encryption_gauge_groups>;
oplus,batt_capacity_mah = <11740>;
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_GAUGE>;
oplus,ic_index = <0>;
};
};
&oplus_chg_core {
oplus-gauge {
adsp_gauge_groups: oplus,oplus_adsp_gauge_groups {
functions = <
OPLUS_IC_FUNC_INIT
OPLUS_IC_FUNC_EXIT
OPLUS_IC_FUNC_REG_DUMP
OPLUS_IC_FUNC_SMT_TEST
OPLUS_IC_FUNC_GAUGE_GET_BATT_VOL
OPLUS_IC_FUNC_GAUGE_GET_BATT_MAX
OPLUS_IC_FUNC_GAUGE_GET_BATT_MIN
OPLUS_IC_FUNC_GAUGE_GET_BATT_CURR
OPLUS_IC_FUNC_GAUGE_GET_BATT_TEMP
OPLUS_IC_FUNC_GAUGE_GET_BATT_SOC
OPLUS_IC_FUNC_GAUGE_GET_BATT_FCC
OPLUS_IC_FUNC_GAUGE_GET_BATT_CC
OPLUS_IC_FUNC_GAUGE_GET_BATT_RM
OPLUS_IC_FUNC_GAUGE_GET_BATT_SOH
OPLUS_IC_FUNC_GAUGE_GET_BATT_HMAC
OPLUS_IC_FUNC_GAUGE_SET_BATT_FULL
OPLUS_IC_FUNC_GAUGE_UPDATE_DOD0
OPLUS_IC_FUNC_GAUGE_UPDATE_SOC_SMOOTH
OPLUS_IC_FUNC_GAUGE_GET_CB_STATUS
OPLUS_IC_FUNC_GAUGE_GET_BATT_NUM
OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE
OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE_FOR_VOOC
OPLUS_IC_FUNC_GAUGE_GET_BATT_FCC
OPLUS_IC_FUNC_GAUGE_UPDATE
OPLUS_IC_FUNC_GAUGE_IS_SUSPEND
OPLUS_IC_FUNC_GAUGE_GET_SUBBOARD_TEMP
OPLUS_IC_FUNC_GAUGE_GET_BCC_PARMS
OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE_FOR_BCC
OPLUS_IC_FUNC_GAUGE_GET_DOD0
OPLUS_IC_FUNC_GAUGE_GET_DOD0_PASSED_Q
OPLUS_IC_FUNC_GAUGE_GET_QMAX
OPLUS_IC_FUNC_GAUGE_GET_QMAX_PASSED_Q
>;
virqs = <
OPLUS_IC_VIRQ_ERR
OPLUS_IC_VIRQ_OFFLINE
OPLUS_IC_VIRQ_RESUME
>;
};
maxim_encryption_gauge_groups: oplus,maxim_encryption_gauge_groups {
functions = <
OPLUS_IC_FUNC_INIT
OPLUS_IC_FUNC_EXIT
OPLUS_IC_FUNC_GAUGE_GET_BATT_AUTH
>;
virqs = <
OPLUS_IC_VIRQ_ERR
>;
};
};
};
&tlmm {
maxim_active: maxim_active {
mux {
pins = "gpio60";
function = "gpio";
};
config {
pins = "gpio60";
bias-pull-up;
drive-strength = <16>;
};
};
};
&soc {
maxim_encryption_gauge: maxim_gauge {
status = "ok";
compatible = "oplus-maxim";
pinctrl-names = "maxim_active";
pinctrl-0 = <&maxim_active>;
data-gpio = <&tlmm 60 0x00>;
gpio-addr-set-out = <0xf13c000>;
gpio-addr-set-in = <0xf13c000>;
gpio-addr-level_high = <0xf13c004>;
gpio-addr-level_low = <0xf13c004>;
gpio-addr-data-in = <0xf13c004>;
gpio-addr-offset = <0x0>;
gpio-set-out-val = <0x1bc3>;
gpio-set-in-val = <0x19c3>;
gpio_level_high_val = <0x3>;
gpio_level_low_val = <0x0>;
write_begin_low_level_time = <600>;
write_relese_ic_time = <6>;
oplus,maxim_romid_crc_support;
oplus,batt_info = /bits/ 8 <0x36 0x31 0x31 0x33 0x30 0x37 0x30 0x30 0x30 0x30 0x34 0x32
0x36 0x31 0x31 0x33 0x30 0x37 0x30 0x30 0x30 0x30 0x35 0x31>;
oplus,ic_type = <OPLUS_CHG_IC_GAUGE>;
oplus,ic_index = <1>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,761 @@
&oplus_cpa {
oplus,protocol_list = <CHG_PROTOCOL_UFCS 100
CHG_PROTOCOL_VOOC 100
CHG_PROTOCOL_PPS 33
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_UFCS
CHG_PROTOCOL_PD
CHG_PROTOCOL_PPS
CHG_PROTOCOL_VOOC>;
};
&battery_charger {
oplus_adsp_pps: oplus,adsp_pps {
oplus,ic_type = <OPLUS_CHG_IC_PPS>;
oplus,ic_index = <0>;
};
};
&soc {
oplus_virtual_pps: oplus,virtual_pps {
compatible = "oplus,virtual_pps";
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_PPS>;
oplus,ic_index = <0>;
oplus,pps_ic = <&oplus_adsp_pps>;
};
oplus_pps_charge: oplus,pps_charge {
compatible = "oplus,pps_charge";
oplus,pps_ic = <&oplus_virtual_pps>;
oplus,cp_ic = <&oplus_ufcs_virtual_cp>;
oplus,dpdm_switch_ic = <&oplus_adsp_dpdm_switch>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <3000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <55>;
oplus,pps_strategy_normal_current = <3000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <13937>;
oplus,pps_timeout_oplus = <13937>;
oplus,pps_ibat_over_third = <4400>;
oplus,pps_ibat_over_oplus = <4400>;
oplus,pps_full_cool_sw_vbat = <4500>;
oplus,pps_full_normal_sw_vbat = <4500>;
oplus,pps_full_normal_hw_vbat = <4540>;
oplus,pps_full_ffc_vbat = <4550>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4500>;
oplus,pps_full_normal_sw_vbat_third= <4500>;
oplus,pps_full_normal_hw_vbat_third = <4540>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <3000 3000 2000 3000 3000 3000>;
oplus,pps_little_cool_high_temp = <210>;
oplus,curve_strategy_name = "pps_ufcs_curve_v2";
oplus,pps_charge_strategy_soc = <0 20 35 55 75 85 95>;
oplus,pps_charge_strategy_temp = <0 50 120 160 350 440 510>;
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
silicon_p_770 {
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <3000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <55>;
oplus,pps_strategy_normal_current = <3000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <11425>;
oplus,pps_timeout_oplus = <11425>;
oplus,pps_ibat_over_third = <4400>;
oplus,pps_ibat_over_oplus = <4400>;
oplus,pps_full_cool_sw_vbat = <4500>;
oplus,pps_full_normal_sw_vbat = <4500>;
oplus,pps_full_normal_hw_vbat = <4540>;
oplus,pps_full_ffc_vbat = <4550>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4500>;
oplus,pps_full_normal_sw_vbat_third= <4500>;
oplus,pps_full_normal_hw_vbat_third = <4540>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <3000 3000 2000 3000 3000 3000>;
oplus,pps_little_cool_high_temp = <210>;
oplus,curve_strategy_name = "pps_ufcs_curve_v2";
oplus,pps_charge_strategy_soc = <0 20 35 55 75 85 95>;
oplus,pps_charge_strategy_temp = <0 50 120 160 350 440 510>;
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
};
};
};

View File

@@ -0,0 +1,175 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
&oplus_mms_gauge {
silicon_p_770 {
deep_spec,support;
deep_spec,uv_thr = <2800>;
deep_spec,count_thr = <50>;
deep_spec,vbat_soc = <20>;
deep_spec,count_step = <0 10 0
350 12 1
450 15 2
530 20 3>;
deep_spec,term_coeff = <3000 300 0
3050 400 2
3060 400 2
3150 500 4
3250 550 5
3350 600 7>;
deep_spec,ddrc_strategy_name = "ddrc_curve";
deep_spec,volt_step = <20>;
deep_spec,ddbc_curve {
oplus,temp_type = <OPLUS_STRATEGY_USE_BATT_TEMP>;
oplus,temp_range = <(-100) 50 200>;
deep_spec,ddbc_temp_cold = <500 3250 5
10000 3200 2>;
deep_spec,ddbc_temp_cool = <500 3250 5
10000 3200 2>;
deep_spec,ddbc_temp_normal = <500 3350 5
10000 3300 2>;
deep_spec,ddbc_temp_warm = <500 3350 5
10000 3300 2>;
};
ddrc_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_BATT_TEMP>;
oplus,ratio_range = <20 30 50 70 90>;
oplus,temp_range = <(-50) 100 350>;
strategy_ratio_range_min {
strategy_temp_cold = <0 2800 3000 0
400 2900 3050 1
800 3000 3060 2
1200 3100 3150 3
1600 3200 3250 4
2000 3300 3350 5>;
strategy_temp_cool = <0 3000 3060 0
15 3000 3060 1
500 3000 3060 2
1000 3100 3150 3
1500 3200 3250 4
2000 3300 3350 5>;
strategy_temp_normal = <0 3000 3060 0
15 3000 3060 1
500 3100 3150 2
1000 3200 3250 3
1500 3300 3350 4>;
strategy_temp_warm = <0 3000 3060 0
15 3000 3060 1
500 3100 3150 2
1000 3200 3250 3
1500 3300 3350 4>;
};
strategy_ratio_range_low {
strategy_temp_cold = <0 2800 3000 0
300 2900 3050 1
600 3000 3060 2
900 3100 3150 3
1200 3200 3250 4
1600 3300 3350 5>;
strategy_temp_cool = <0 3000 3060 0
15 3000 3060 1
400 3000 3060 2
800 3100 3150 3
1200 3200 3250 4
1600 3300 3350 5>;
strategy_temp_normal = <0 3000 3060 0
15 3000 3060 1
400 3100 3150 2
800 3200 3250 3
1200 3300 3350 4>;
strategy_temp_warm = <0 3000 3060 0
15 3000 3060 1
400 3100 3150 2
800 3200 3250 3
1200 3300 3350 4>;
};
strategy_ratio_range_mid_low {
strategy_temp_cold = <0 2800 3000 0
200 2900 3050 1
400 3000 3060 2
600 3100 3150 3
900 3200 3250 4
1200 3300 3350 5>;
strategy_temp_cool = <0 3000 3060 0
15 3000 3060 1
300 3000 3060 2
600 3100 3150 3
900 3200 3250 4
1200 3300 3350 5>;
strategy_temp_normal = <0 3000 3060 0
15 3000 3060 1
300 3100 3150 2
600 3200 3250 3
900 3300 3350 4>;
strategy_temp_warm = <0 3000 3060 0
15 3000 3060 1
300 3100 3150 2
600 3200 3250 3
900 3300 3350 4>;
};
strategy_ratio_range_mid {
strategy_temp_cold = <0 2800 3000 0
100 2900 3050 1
300 3000 3060 2
500 3100 3150 3
700 3200 3250 4
900 3300 3350 5>;
strategy_temp_cool = <0 3000 3060 0
100 3000 3060 1
300 3100 3150 2
600 3200 3250 3
900 3300 3350 4>;
strategy_temp_normal = <0 3000 3060 0
100 3100 3150 1
300 3200 3250 2
600 3300 3350 3>;
strategy_temp_warm = <0 3000 3060 0
100 3100 3150 1
300 3200 3250 2
600 3300 3350 3>;
};
strategy_ratio_range_mid_high {
strategy_temp_cold = <0 2800 3000 0
50 2900 3050 1
100 3000 3060 2
150 3100 3150 3
300 3200 3250 4
500 3300 3350 5>;
strategy_temp_cool = <0 3000 3060 0
50 3000 3060 1
100 3100 3150 2
150 3200 3250 3
300 3300 3350 4>;
strategy_temp_normal = <0 3000 3060 0
50 3100 3150 1
100 3200 3250 2
150 3300 3350 3>;
strategy_temp_warm = <0 3000 3060 0
50 3100 3150 1
100 3200 3250 2
150 3300 3350 3>;
};
strategy_ratio_range_high {
strategy_temp_cold = <0 2800 3000 0
50 2900 3050 1
100 3000 3060 2
150 3100 3150 3
300 3200 3250 4
500 3300 3350 5>;
strategy_temp_cool = <0 3000 3060 0
50 3000 3060 1
100 3100 3150 2
150 3200 3250 3
300 3300 3350 4>;
strategy_temp_normal = <0 3000 3060 0
50 3100 3150 1
100 3200 3250 2
150 3300 3350 3>;
strategy_temp_warm = <0 3000 3060 0
50 3100 3150 1
100 3200 3250 2
150 3300 3350 3>;
};
};
};
};
//#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,988 @@
&oplus_cpa {
oplus,protocol_list = <CHG_PROTOCOL_VOOC 100
CHG_PROTOCOL_PPS 33
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
CHG_PROTOCOL_PPS
CHG_PROTOCOL_VOOC>;
oplus,common_chg_pps {
oplus,region_id = /bits/ 8 <0x44 0xA7>;
oplus,protocol_list = <CHG_PROTOCOL_VOOC 100
CHG_PROTOCOL_PPS 55
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
CHG_PROTOCOL_PPS
CHG_PROTOCOL_VOOC>;
};
};
&battery_charger {
oplus_adsp_pps: oplus,adsp_pps {
oplus,ic_type = <OPLUS_CHG_IC_PPS>;
oplus,ic_index = <0>;
};
};
&soc {
oplus_virtual_pps: oplus,virtual_pps {
compatible = "oplus,virtual_pps";
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_PPS>;
oplus,ic_index = <0>;
oplus,pps_ic = <&oplus_adsp_pps>;
};
oplus_pps_charge: oplus,pps_charge {
compatible = "oplus,pps_charge";
oplus,pps_ic = <&oplus_virtual_pps>;
oplus,cp_ic = <&oplus_ufcs_virtual_cp>;
oplus,dpdm_switch_ic = <&oplus_adsp_dpdm_switch>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <5000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <55>;
oplus,pps_strategy_normal_current = <5000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <13937>;
oplus,pps_timeout_oplus = <13937>;
oplus,pps_ibat_over_third = <6400>;
oplus,pps_ibat_over_oplus = <6400>;
oplus,pps_full_cool_sw_vbat = <4500>;
oplus,pps_full_normal_sw_vbat = <4500>;
oplus,pps_full_normal_hw_vbat = <4540>;
oplus,pps_full_ffc_vbat = <4550>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4500>;
oplus,pps_full_normal_sw_vbat_third= <4500>;
oplus,pps_full_normal_hw_vbat_third = <4540>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <5000 5000 3000 5000 5000 5000>;
oplus,pps_little_cool_high_temp = <210>;
oplus,curve_strategy_name = "pps_ufcs_curve_v2";
oplus,pps_charge_strategy_soc = <0 20 35 55 75 85 95>;
oplus,pps_charge_strategy_temp = <0 50 120 160 350 440 510>;
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4200 5000 0 0
11000 4200 4500 0 0
11000 4200 4000 0 0
11000 4330 3900 0 0
11000 4330 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4480 5000 0 0
11000 4480 4500 0 0
11000 4480 4000 0 0
11000 4490 3900 0 0
11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 5000 0 0
11000 4465 4500 0 0
11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4200 5000 0 0
11000 4200 4500 0 0
11000 4200 4000 0 0
11000 4330 3900 0 0
11000 4330 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4480 5000 0 0
11000 4480 4500 0 0
11000 4480 4000 0 0
11000 4490 3900 0 0
11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 5000 0 0
11000 4465 4500 0 0
11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4200 5000 0 0
11000 4200 4500 0 0
11000 4200 4000 0 0
11000 4330 3900 0 0
11000 4330 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4480 5000 0 0
11000 4480 4500 0 0
11000 4480 4000 0 0
11000 4490 3900 0 0
11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 5000 0 0
11000 4465 4500 0 0
11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4200 5000 0 0
11000 4200 4500 0 0
11000 4200 4000 0 0
11000 4330 3900 0 0
11000 4330 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4480 5000 0 0
11000 4480 4500 0 0
11000 4480 4000 0 0
11000 4490 3900 0 0
11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 5000 0 0
11000 4465 4500 0 0
11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4200 5000 0 0
11000 4200 4500 0 0
11000 4200 4000 0 0
11000 4330 3900 0 0
11000 4330 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4480 5000 0 0
11000 4480 4500 0 0
11000 4480 4000 0 0
11000 4490 3900 0 0
11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 5000 0 0
11000 4465 4500 0 0
11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4200 5000 0 0
11000 4200 4500 0 0
11000 4200 4000 0 0
11000 4330 3900 0 0
11000 4330 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4480 5000 0 0
11000 4480 4500 0 0
11000 4480 4000 0 0
11000 4490 3900 0 0
11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 5000 0 0
11000 4465 4500 0 0
11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1400 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1200 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2600 0 0
11000 4150 2500 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2600 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3500 0 0
11000 4490 3100 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 4000 0 0
11000 4465 3900 0 0
11000 4465 3500 0 0
11000 4465 3100 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1200 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
silicon_p_770 {
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <5000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <55>;
oplus,pps_strategy_normal_current = <5000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <14425>;
oplus,pps_timeout_oplus = <14425>;
oplus,pps_ibat_over_third = <6400>;
oplus,pps_ibat_over_oplus = <6400>;
oplus,pps_full_cool_sw_vbat = <4500>;
oplus,pps_full_normal_sw_vbat = <4500>;
oplus,pps_full_normal_hw_vbat = <4540>;
oplus,pps_full_ffc_vbat = <4550>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4500>;
oplus,pps_full_normal_sw_vbat_third= <4500>;
oplus,pps_full_normal_hw_vbat_third = <4540>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <5000 5000 3000 5000 5000 5000>;
oplus,pps_little_cool_high_temp = <210>;
oplus,curve_strategy_name = "pps_ufcs_curve_v2";
oplus,pps_charge_strategy_soc = <0 20 35 55 75 85 95>;
oplus,pps_charge_strategy_temp = <0 50 120 160 350 440 510>;
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4150 5000 0 0
11000 4150 4500 0 0
11000 4280 4000 0 0
11000 4280 3500 0 0
11000 4490 3200 0 0
11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4490 3800 0 0
11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4150 5000 0 0
11000 4150 4500 0 0
11000 4280 4000 0 0
11000 4280 3500 0 0
11000 4490 3200 0 0
11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4490 3800 0 0
11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4150 5000 0 0
11000 4150 4500 0 0
11000 4280 4000 0 0
11000 4280 3500 0 0
11000 4490 3200 0 0
11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4490 3800 0 0
11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 210 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4150 5000 0 0
11000 4150 4500 0 0
11000 4280 4000 0 0
11000 4280 3500 0 0
11000 4490 3200 0 0
11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4490 3800 0 0
11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4150 5000 0 0
11000 4150 4500 0 0
11000 4280 4000 0 0
11000 4280 3500 0 0
11000 4490 3200 0 0
11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4490 3800 0 0
11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4150 5000 0 0
11000 4150 4500 0 0
11000 4280 4000 0 0
11000 4280 3500 0 0
11000 4490 3200 0 0
11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4490 3800 0 0
11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 5000 0 0
11000 4470 4500 0 0
11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3500 0 0
11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 4000 0 0
11000 4465 3800 0 0
11000 4465 3500 0 0
11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
};
};
};

View File

@@ -0,0 +1,175 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
&oplus_mms_gauge {
silicon_p_770 {
deep_spec,support;
deep_spec,uv_thr = <2800>;
deep_spec,count_thr = <50>;
deep_spec,vbat_soc = <20>;
deep_spec,count_step = <0 10 0
350 12 1
450 15 2
530 20 3>;
deep_spec,term_coeff = <3000 300 0
3050 400 2
3060 400 2
3100 500 4
3200 550 5
3300 600 7>;
deep_spec,ddrc_strategy_name = "ddrc_curve";
deep_spec,volt_step = <20>;
deep_spec,ddbc_curve {
oplus,temp_type = <OPLUS_STRATEGY_USE_BATT_TEMP>;
oplus,temp_range = <(-100) 50 200>;
deep_spec,ddbc_temp_cold = <500 3250 5
10000 3200 2>;
deep_spec,ddbc_temp_cool = <500 3250 5
10000 3200 2>;
deep_spec,ddbc_temp_normal = <500 3350 5
10000 3300 2>;
deep_spec,ddbc_temp_warm = <500 3350 5
10000 3300 2>;
};
ddrc_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_BATT_TEMP>;
oplus,ratio_range = <20 30 50 70 90>;
oplus,temp_range = <(-50) 100 350>;
strategy_ratio_range_min {
strategy_temp_cold = <0 2800 3000 0
400 2900 3050 1
800 3000 3060 2
1200 3100 3100 3
1600 3200 3200 4
2000 3300 3300 5>;
strategy_temp_cool = <0 3000 3060 0
15 3000 3060 1
500 3000 3060 2
1000 3100 3100 3
1500 3200 3200 4
2000 3300 3300 5>;
strategy_temp_normal = <0 3100 3100 0
15 3000 3060 1
500 3100 3100 2
1000 3200 3200 3
1500 3300 3300 4>;
strategy_temp_warm = <0 3100 3100 0
15 3000 3060 1
500 3100 3100 2
1000 3200 3200 3
1500 3300 3300 4>;
};
strategy_ratio_range_low {
strategy_temp_cold = <0 2800 3000 0
300 2900 3050 1
600 3000 3060 2
900 3100 3100 3
1200 3200 3200 4
1600 3300 3300 5>;
strategy_temp_cool = <0 3000 3060 0
15 3000 3060 1
400 3000 3060 2
800 3100 3100 3
1200 3200 3200 4
1600 3300 3300 5>;
strategy_temp_normal = <0 3100 3100 0
15 3000 3060 1
400 3100 3100 2
800 3200 3200 3
1200 3300 3300 4>;
strategy_temp_warm = <0 3100 3100 0
15 3000 3060 1
400 3100 3100 2
800 3200 3200 3
1200 3300 3300 4>;
};
strategy_ratio_range_mid_low {
strategy_temp_cold = <0 2800 3000 0
200 2900 3050 1
400 3000 3060 2
600 3100 3100 3
900 3200 3200 4
1200 3300 3300 5>;
strategy_temp_cool = <0 3000 3060 0
15 3000 3060 1
300 3000 3060 2
600 3100 3100 3
900 3200 3200 4
1200 3300 3300 5>;
strategy_temp_normal = <0 3100 3100 0
15 3100 3100 1
300 3100 3100 2
600 3200 3200 3
900 3300 3300 4>;
strategy_temp_warm = <0 3100 3100 0
15 3100 3100 1
300 3100 3100 2
600 3200 3200 3
900 3300 3300 4>;
};
strategy_ratio_range_mid {
strategy_temp_cold = <0 2800 3000 0
100 2900 3050 1
300 3000 3060 2
500 3100 3100 3
700 3200 3200 4
900 3300 3300 5>;
strategy_temp_cool = <0 3000 3060 0
100 3000 3060 1
300 3100 3100 2
600 3200 3200 3
900 3300 3300 4>;
strategy_temp_normal = <0 3100 3100 0
100 3100 3100 1
300 3200 3200 2
600 3300 3300 3>;
strategy_temp_warm = <0 3100 3100 0
100 3100 3100 1
300 3200 3200 2
600 3300 3300 3>;
};
strategy_ratio_range_mid_high {
strategy_temp_cold = <0 2800 3000 0
50 2900 3050 1
100 3000 3060 2
150 3100 3100 3
300 3200 3200 4
500 3300 3300 5>;
strategy_temp_cool = <0 3000 3060 0
50 3000 3060 1
100 3100 3100 2
150 3200 3200 3
300 3300 3300 4>;
strategy_temp_normal = <0 3100 3100 0
50 3100 3100 1
100 3200 3200 2
150 3300 3300 3>;
strategy_temp_warm = <0 3100 3100 0
50 3100 3100 1
100 3200 3200 2
150 3300 3300 3>;
};
strategy_ratio_range_high {
strategy_temp_cold = <0 2800 3000 0
50 2900 3050 1
100 3000 3060 2
150 3100 3100 3
300 3200 3200 4
500 3300 3300 5>;
strategy_temp_cool = <0 3000 3060 0
50 3000 3060 1
100 3100 3100 2
150 3200 3200 3
300 3300 3300 4>;
strategy_temp_normal = <0 3100 3100 0
50 3100 3100 1
100 3200 3200 2
150 3300 3300 3>;
strategy_temp_warm = <0 3100 3100 0
50 3100 3100 1
100 3200 3200 2
150 3300 3300 3>;
};
};
};
};
//#endif

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,410 @@
&oplus_cpa {
oplus,protocol_list = <CHG_PROTOCOL_UFCS 100
CHG_PROTOCOL_VOOC 100
CHG_PROTOCOL_PPS 33
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_UFCS
CHG_PROTOCOL_PD
CHG_PROTOCOL_PPS
CHG_PROTOCOL_VOOC>;
};
&battery_charger {
oplus_adsp_pps: oplus,adsp_pps {
oplus,ic_type = <OPLUS_CHG_IC_PPS>;
oplus,ic_index = <0>;
};
};
&soc {
oplus_virtual_pps: oplus,virtual_pps {
compatible = "oplus,virtual_pps";
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_PPS>;
oplus,ic_index = <0>;
oplus,pps_ic = <&oplus_adsp_pps>;
};
oplus_pps_charge: oplus,pps_charge {
compatible = "oplus,pps_charge";
oplus,pps_ic = <&oplus_virtual_pps>;
oplus,cp_ic = <&oplus_ufcs_virtual_cp>;
oplus,dpdm_switch_ic = <&oplus_adsp_dpdm_switch>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <3000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <55>;
oplus,pps_strategy_normal_current = <3000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <14888>;
oplus,pps_timeout_oplus = <14888>;
oplus,pps_ibat_over_third = <4400>;
oplus,pps_ibat_over_oplus = <4400>;
oplus,pps_full_cool_sw_vbat = <4500>;
oplus,pps_full_normal_sw_vbat = <4500>;
oplus,pps_full_normal_hw_vbat = <4540>;
oplus,pps_full_ffc_vbat = <4550>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4500>;
oplus,pps_full_normal_sw_vbat_third= <4500>;
oplus,pps_full_normal_hw_vbat_third = <4540>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <3000 3000 2000 3000 3000 3000>;
oplus,pps_little_cool_high_temp = <200>;
oplus,pps_low_temp = <50>;
oplus,curve_strategy_name = "pps_ufcs_curve_v2";
oplus,pps_charge_strategy_soc = <0 20 35 55 75 85 95>;
oplus,pps_charge_strategy_temp = <0 50 120 160 350 440 510>;
oplus,plc_strategy-data = <&cp_2t1_simple_strategy>;
oplus,plc_strategy-names = "default";
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 200 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4140 1300 0 0
11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 3000 0 0
11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4465 2500 0 0
11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4150 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4475 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 55 75 85 95>;
oplus,temp_range = <0 50 120 160 200 350 440 510>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4150 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_cool = <11000 4150 2100 0 0
11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4150 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_cool = <11000 4150 2000 0 0
11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4150 2700 0 0
11000 4150 2500 0 0
11000 4330 2100 0 0
11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 3000 0 0
11000 4490 2700 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 3000 0 0
11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4500 1000 1 0>;
strategy_temp_cool = <11000 4150 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4330 2000 0 0
11000 4330 1500 0 0
11000 4490 1300 0 0
11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4490 2500 0 0
11000 4490 2000 0 0
11000 4490 1500 0 0
11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4500 1000 1 0>;
strategy_temp_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool = <11000 4500 1000 1 0>;
strategy_temp_little_cool_high = <11000 4500 1000 1 0>;
strategy_temp_normal_low = <11000 4500 1000 1 0>;
strategy_temp_normal_high = <11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1000 1 0>;
};
};
};
};

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,535 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
//BSP.CHG.Basic, 2023/04/19, sjc Add for charging
#define OPLUS_CHG_IC_BUCK 0
#define OPLUS_CHG_IC_BOOST 1
#define OPLUS_CHG_IC_BUCK_BOOST 2
#define OPLUS_CHG_IC_CP_DIV2 3
#define OPLUS_CHG_IC_CP_MUL2 4
#define OPLUS_CHG_IC_CP_TW2 5
#define OPLUS_CHG_IC_RX 6
#define OPLUS_CHG_IC_VIRTUAL_RX 7
#define OPLUS_CHG_IC_VIRTUAL_BUCK 8
#define OPLUS_CHG_IC_VIRTUAL_CP 9
#define OPLUS_CHG_IC_VIRTUAL_USB 10
#define OPLUS_CHG_IC_TYPEC 11
#define OPLUS_CHG_IC_GAUGE 12
#define OPLUS_CHG_IC_VIRTUAL_GAUGE 13
#define OPLUS_CHG_IC_ASIC 14
#define OPLUS_CHG_IC_VIRTUAL_ASIC 15
#define OPLUS_CHG_IC_VPHY 16
#define OPLUS_CHG_IC_VIRTUAL_VPHY 17
#define OPLUS_CHG_IC_SWITCH 18
#define OPLUS_CHG_IC_VIRTUAL_SWITCH 19
#define OPLUS_CHG_IC_CP 20
#define OPLUS_CHG_IC_VIRTUAL_UFCS 21
#define OPLUS_CHG_IC_MISC 22
#define OPLUS_CHG_IC_PPS 23
#define OPLUS_CHG_IC_VIRTUAL_PPS 24
#define OPLUS_CHG_IC_UFCS 25
#define OPLUS_CHG_IC_BATT_BAL 26
#define OPLUS_CHG_IC_VIRTUAL_BATT_BAL 27
#define OPLUS_CHG_IC_LEVEL_SHIFT 28
#define OPLUS_CHG_IC_VIRTUAL_LEVEL_SHIFT 29
#define OPLUS_CHG_IC_CONNECT_PARALLEL 0
#define OPLUS_CHG_IC_CONNECT_SERIAL 1
/* virq ID */
#define OPLUS_IC_VIRQ_ERR 0
#define OPLUS_IC_VIRQ_CC_DETECT 1
#define OPLUS_IC_VIRQ_PLUGIN 2
#define OPLUS_IC_VIRQ_CC_CHANGED 3
#define OPLUS_IC_VIRQ_VOOC_DATA 4
#define OPLUS_IC_VIRQ_SUSPEND_CHECK 5
#define OPLUS_IC_VIRQ_CHG_TYPE_CHANGE 6
#define OPLUS_IC_VIRQ_OFFLINE 7
#define OPLUS_IC_VIRQ_RESUME 8
#define OPLUS_IC_VIRQ_SVID 9
#define OPLUS_IC_VIRQ_OTG_ENABLE 10
#define OPLUS_IC_VIRQ_VOLTAGE_CHANGED 11
#define OPLUS_IC_VIRQ_CURRENT_CHANGED 12
#define OPLUS_IC_VIRQ_BC12_COMPLETED 13
#define OPLUS_IC_VIRQ_DATA_ROLE_CHANGED 14
#define OPLUS_IC_VIRQ_ONLINE 15
#define OPLUS_IC_VIRQ_TYPEC_STATE 16
#define OPLUS_IC_VIRQ_HARD_RESET 17
#define OPLUS_IC_VIRQ_POWER_CHANGED 18
#define OPLUS_IC_VIRQ_PRESENT 19
#define OPLUS_IC_VIRQ_EVENT_CHANGED 20
/* common */
#define OPLUS_IC_FUNC_NUM_COMMON_START 0
#define OPLUS_IC_FUNC_EXIT (OPLUS_IC_FUNC_NUM_COMMON_START + 0)
#define OPLUS_IC_FUNC_INIT (OPLUS_IC_FUNC_NUM_COMMON_START + 1)
#define OPLUS_IC_FUNC_REG_DUMP (OPLUS_IC_FUNC_NUM_COMMON_START + 2)
#define OPLUS_IC_FUNC_SMT_TEST (OPLUS_IC_FUNC_NUM_COMMON_START + 3)
#define OPLUS_IC_FUNC_CHIP_ENABLE (OPLUS_IC_FUNC_NUM_COMMON_START + 4)
#define OPLUS_IC_FUNC_CHIP_IS_ENABLE (OPLUS_IC_FUNC_NUM_COMMON_START + 5)
/* wireless rx */
#define OPLUS_IC_FUNC_NUM_RX_START 100
#define OPLUS_IC_FUNC_RX_SET_ENABLE (OPLUS_IC_FUNC_NUM_RX_START + 0)
#define OPLUS_IC_FUNC_RX_IS_ENABLE (OPLUS_IC_FUNC_NUM_RX_START + 1)
#define OPLUS_IC_FUNC_RX_IS_CONNECTED (OPLUS_IC_FUNC_NUM_RX_START + 2)
#define OPLUS_IC_FUNC_RX_GET_VOUT (OPLUS_IC_FUNC_NUM_RX_START + 3)
#define OPLUS_IC_FUNC_RX_SET_VOUT (OPLUS_IC_FUNC_NUM_RX_START + 4)
#define OPLUS_IC_FUNC_RX_GET_VRECT (OPLUS_IC_FUNC_NUM_RX_START + 5)
#define OPLUS_IC_FUNC_RX_GET_IOUT (OPLUS_IC_FUNC_NUM_RX_START + 6)
#define OPLUS_IC_FUNC_RX_GET_TRX_VOL (OPLUS_IC_FUNC_NUM_RX_START + 7)
#define OPLUS_IC_FUNC_RX_GET_TRX_CURR (OPLUS_IC_FUNC_NUM_RX_START + 8)
#define OPLUS_IC_FUNC_RX_GET_CEP_COUNT (OPLUS_IC_FUNC_NUM_RX_START + 9)
#define OPLUS_IC_FUNC_RX_GET_CEP_VAL (OPLUS_IC_FUNC_NUM_RX_START + 10)
#define OPLUS_IC_FUNC_RX_GET_WORK_FREQ (OPLUS_IC_FUNC_NUM_RX_START + 11)
#define OPLUS_IC_FUNC_RX_GET_RX_MODE (OPLUS_IC_FUNC_NUM_RX_START + 12)
#define OPLUS_IC_FUNC_RX_SET_RX_MODE (OPLUS_IC_FUNC_NUM_RX_START + 13)
#define OPLUS_IC_FUNC_RX_SET_DCDC_ENABLE (OPLUS_IC_FUNC_NUM_RX_START + 14)
#define OPLUS_IC_FUNC_RX_SET_TRX_ENABLE (OPLUS_IC_FUNC_NUM_RX_START + 15)
#define OPLUS_IC_FUNC_RX_SET_TRX_START (OPLUS_IC_FUNC_NUM_RX_START + 16)
#define OPLUS_IC_FUNC_RX_GET_TRX_STATUS (OPLUS_IC_FUNC_NUM_RX_START + 17)
#define OPLUS_IC_FUNC_RX_GET_TRX_ERR (OPLUS_IC_FUNC_NUM_RX_START + 18)
#define OPLUS_IC_FUNC_RX_GET_HEADROOM (OPLUS_IC_FUNC_NUM_RX_START + 19)
#define OPLUS_IC_FUNC_RX_SET_HEADROOM (OPLUS_IC_FUNC_NUM_RX_START + 20)
#define OPLUS_IC_FUNC_RX_SEND_MATCH_Q (OPLUS_IC_FUNC_NUM_RX_START + 21)
#define OPLUS_IC_FUNC_RX_SET_FOD_PARM (OPLUS_IC_FUNC_NUM_RX_START + 22)
#define OPLUS_IC_FUNC_RX_SEND_MSG (OPLUS_IC_FUNC_NUM_RX_START + 23)
#define OPLUS_IC_FUNC_RX_REG_MSG_CALLBACK (OPLUS_IC_FUNC_NUM_RX_START + 24)
#define OPLUS_IC_FUNC_RX_GET_RX_VERSION (OPLUS_IC_FUNC_NUM_RX_START + 25)
#define OPLUS_IC_FUNC_RX_GET_TRX_VERSION (OPLUS_IC_FUNC_NUM_RX_START + 26)
#define OPLUS_IC_FUNC_RX_UPGRADE_FW_BY_BUF (OPLUS_IC_FUNC_NUM_RX_START + 27)
#define OPLUS_IC_FUNC_RX_UPGRADE_FW_BY_IMG (OPLUS_IC_FUNC_NUM_RX_START + 28)
#define OPLUS_IC_FUNC_RX_CHECK_CONNECT (OPLUS_IC_FUNC_NUM_RX_START + 29)
#define OPLUS_IC_FUNC_RX_GET_EVENT_CODE (OPLUS_IC_FUNC_NUM_RX_START + 30)
#define OPLUS_IC_FUNC_RX_GET_BRIDGE_MODE (OPLUS_IC_FUNC_NUM_RX_START + 31)
#define OPLUS_IC_FUNC_RX_DIS_INSERT (OPLUS_IC_FUNC_NUM_RX_START + 32)
#define OPLUS_IC_FUNC_RX_STANDBY_CONFIG (OPLUS_IC_FUNC_NUM_RX_START + 33)
#define OPLUS_IC_FUNC_RX_SET_COMU (OPLUS_IC_FUNC_NUM_RX_START + 34)
#define OPLUS_IC_FUNC_RX_GET_TX_ID (OPLUS_IC_FUNC_NUM_RX_START + 35)
#define OPLUS_IC_FUNC_RX_SET_SILENT (OPLUS_IC_FUNC_NUM_RX_START + 36)
/* buck/boost */
#define OPLUS_IC_FUNC_NUM_BUCK_START 200
#define OPLUS_IC_FUNC_BUCK_INPUT_PRESENT (OPLUS_IC_FUNC_NUM_BUCK_START + 0)
#define OPLUS_IC_FUNC_BUCK_INPUT_SUSPEND (OPLUS_IC_FUNC_NUM_BUCK_START + 1)
#define OPLUS_IC_FUNC_BUCK_INPUT_IS_SUSPEND (OPLUS_IC_FUNC_NUM_BUCK_START + 2)
#define OPLUS_IC_FUNC_BUCK_OUTPUT_SUSPEND (OPLUS_IC_FUNC_NUM_BUCK_START + 3)
#define OPLUS_IC_FUNC_BUCK_OUTPUT_IS_SUSPEND (OPLUS_IC_FUNC_NUM_BUCK_START + 4)
#define OPLUS_IC_FUNC_BUCK_SET_ICL (OPLUS_IC_FUNC_NUM_BUCK_START + 5)
#define OPLUS_IC_FUNC_BUCK_GET_ICL (OPLUS_IC_FUNC_NUM_BUCK_START + 6)
#define OPLUS_IC_FUNC_BUCK_SET_FCC (OPLUS_IC_FUNC_NUM_BUCK_START + 7)
#define OPLUS_IC_FUNC_BUCK_SET_FV (OPLUS_IC_FUNC_NUM_BUCK_START + 8)
#define OPLUS_IC_FUNC_BUCK_SET_ITERM (OPLUS_IC_FUNC_NUM_BUCK_START + 9)
#define OPLUS_IC_FUNC_BUCK_SET_RECHG_VOL (OPLUS_IC_FUNC_NUM_BUCK_START + 10)
#define OPLUS_IC_FUNC_BUCK_GET_INPUT_CURR (OPLUS_IC_FUNC_NUM_BUCK_START + 11)
#define OPLUS_IC_FUNC_BUCK_GET_INPUT_VOL (OPLUS_IC_FUNC_NUM_BUCK_START + 12)
#define OPLUS_IC_FUNC_BUCK_AICL_ENABLE (OPLUS_IC_FUNC_NUM_BUCK_START + 13)
#define OPLUS_IC_FUNC_BUCK_AICL_RERUN (OPLUS_IC_FUNC_NUM_BUCK_START + 14)
#define OPLUS_IC_FUNC_BUCK_AICL_RESET (OPLUS_IC_FUNC_NUM_BUCK_START + 15)
#define OPLUS_IC_FUNC_BUCK_GET_CC_ORIENTATION (OPLUS_IC_FUNC_NUM_BUCK_START + 16)
#define OPLUS_IC_FUNC_BUCK_GET_HW_DETECT (OPLUS_IC_FUNC_NUM_BUCK_START + 17)
#define OPLUS_IC_FUNC_BUCK_GET_CHARGER_TYPE (OPLUS_IC_FUNC_NUM_BUCK_START + 18)
#define OPLUS_IC_FUNC_BUCK_RERUN_BC12 (OPLUS_IC_FUNC_NUM_BUCK_START + 19)
#define OPLUS_IC_FUNC_BUCK_QC_DETECT_ENABLE (OPLUS_IC_FUNC_NUM_BUCK_START + 20)
#define OPLUS_IC_FUNC_BUCK_SHIPMODE_ENABLE (OPLUS_IC_FUNC_NUM_BUCK_START + 21)
#define OPLUS_IC_FUNC_BUCK_SET_QC_CONFIG (OPLUS_IC_FUNC_NUM_BUCK_START + 22)
#define OPLUS_IC_FUNC_BUCK_SET_PD_CONFIG (OPLUS_IC_FUNC_NUM_BUCK_START + 23)
#define OPLUS_IC_FUNC_BUCK_GET_VBUS_COLLAPSE_STATUS (OPLUS_IC_FUNC_NUM_BUCK_START + 24)
#define OPLUS_IC_FUNC_BUCK_CURR_DROP (OPLUS_IC_FUNC_NUM_BUCK_START + 25)
#define OPLUS_IC_FUNC_BUCK_WDT_ENABLE (OPLUS_IC_FUNC_NUM_BUCK_START + 26)
#define OPLUS_IC_FUNC_BUCK_KICK_WDT (OPLUS_IC_FUNC_NUM_BUCK_START + 27)
#define OPLUS_IC_FUNC_BUCK_BC12_COMPLETED (OPLUS_IC_FUNC_NUM_BUCK_START + 28)
#define OPLUS_IC_FUNC_BUCK_SET_AICL_POINT (OPLUS_IC_FUNC_NUM_BUCK_START + 29)
#define OPLUS_IC_FUNC_BUCK_SET_VINDPM (OPLUS_IC_FUNC_NUM_BUCK_START + 30)
#define OPLUS_IC_FUNC_BUCK_HARDWARE_INIT (OPLUS_IC_FUNC_NUM_BUCK_START + 31)
#define OPLUS_IC_FUNC_BUCK_GET_TYPEC_STATE (OPLUS_IC_FUNC_NUM_BUCK_START + 32)
#define OPLUS_IC_FUNC_BUCK_GET_FV (OPLUS_IC_FUNC_NUM_BUCK_START + 33)
#define OPLUS_IC_FUNC_BUCK_WLS_INPUT_SUSPEND (OPLUS_IC_FUNC_NUM_BUCK_START + 34)
#define OPLUS_IC_FUNC_BUCK_SET_WLS_ICL (OPLUS_IC_FUNC_NUM_BUCK_START + 35)
#define OPLUS_IC_FUNC_BUCK_GET_WLS_ICL (OPLUS_IC_FUNC_NUM_BUCK_START + 36)
#define OPLUS_IC_FUNC_BUCK_GET_WLS_INPUT_CURR (OPLUS_IC_FUNC_NUM_BUCK_START + 37)
#define OPLUS_IC_FUNC_BUCK_GET_WLS_INPUT_VOL (OPLUS_IC_FUNC_NUM_BUCK_START + 38)
#define OPLUS_IC_FUNC_BUCK_WLS_AICL_ENABLE (OPLUS_IC_FUNC_NUM_BUCK_START + 39)
#define OPLUS_IC_FUNC_BUCK_WLS_AICL_RERUN (OPLUS_IC_FUNC_NUM_BUCK_START + 40)
#define OPLUS_IC_FUNC_BUCK_DIS_INSERT_DETECT (OPLUS_IC_FUNC_NUM_BUCK_START + 41)
#define OPLUS_IC_FUNC_BUCK_GET_BYBID_INFO (OPLUS_IC_FUNC_NUM_BUCK_START + 42)
#define OPLUS_IC_FUNC_BUCK_GET_BYBID_MATCH_INFO (OPLUS_IC_FUNC_NUM_BUCK_START + 43)
#define OPLUS_IC_FUNC_BUCK_FPGA_RST (OPLUS_IC_FUNC_NUM_BUCK_START + 44)
#define OPLUS_IC_FUNC_BUCK_GET_USB_AICL_ENHANCE (OPLUS_IC_FUNC_NUM_BUCK_START + 45)
/* charge pump */
#define OPLUS_IC_FUNC_NUM_CP_START 300
#define OPLUS_IC_FUNC_CP_ENABLE (OPLUS_IC_FUNC_NUM_CP_START + 0)
#define OPLUS_IC_FUNC_CP_HW_INTI (OPLUS_IC_FUNC_NUM_CP_START + 1)
#define OPLUS_IC_FUNC_CP_SET_WORK_MODE (OPLUS_IC_FUNC_NUM_CP_START + 2)
#define OPLUS_IC_FUNC_CP_GET_WORK_MODE (OPLUS_IC_FUNC_NUM_CP_START + 3)
#define OPLUS_IC_FUNC_CP_CHECK_WORK_MODE_SUPPORT (OPLUS_IC_FUNC_NUM_CP_START + 4)
#define OPLUS_IC_FUNC_CP_SET_IIN (OPLUS_IC_FUNC_NUM_CP_START + 5)
#define OPLUS_IC_FUNC_CP_GET_VIN (OPLUS_IC_FUNC_NUM_CP_START + 6)
#define OPLUS_IC_FUNC_CP_GET_IIN (OPLUS_IC_FUNC_NUM_CP_START + 7)
#define OPLUS_IC_FUNC_CP_GET_VOUT (OPLUS_IC_FUNC_NUM_CP_START + 8)
#define OPLUS_IC_FUNC_CP_GET_IOUT (OPLUS_IC_FUNC_NUM_CP_START + 9)
#define OPLUS_IC_FUNC_CP_GET_VAC (OPLUS_IC_FUNC_NUM_CP_START + 10)
#define OPLUS_IC_FUNC_CP_SET_WORK_START (OPLUS_IC_FUNC_NUM_CP_START + 11)
#define OPLUS_IC_FUNC_CP_GET_WORK_STATUS (OPLUS_IC_FUNC_NUM_CP_START + 12)
#define OPLUS_IC_FUNC_CP_SET_ADC_ENABLE (OPLUS_IC_FUNC_NUM_CP_START + 13)
#define OPLUS_IC_FUNC_CP_WATCHDOG_ENABLE (OPLUS_IC_FUNC_NUM_CP_START + 14)
#define OPLUS_IC_FUNC_CP_GET_TEMP (OPLUS_IC_FUNC_NUM_CP_START + 15)
#define OPLUS_IC_FUNC_CP_SET_UCP_DISABLE (OPLUS_IC_FUNC_NUM_CP_START + 16)
#define OPLUS_IC_FUNC_CP_GET_IIN_MAX (OPLUS_IC_FUNC_NUM_CP_START + 17)
#define OPLUS_IC_FUNC_CP_WATCHDOG_RESET (OPLUS_IC_FUNC_NUM_CP_START + 18)
/* gauge */
#define OPLUS_IC_FUNC_NUM_GAUGE_START 400
#define OPLUS_IC_FUNC_GAUGE_UPDATE (OPLUS_IC_FUNC_NUM_GAUGE_START + 0)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_VOL (OPLUS_IC_FUNC_NUM_GAUGE_START + 1)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_MAX (OPLUS_IC_FUNC_NUM_GAUGE_START + 2)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_MIN (OPLUS_IC_FUNC_NUM_GAUGE_START + 3)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_CURR (OPLUS_IC_FUNC_NUM_GAUGE_START + 4)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_TEMP (OPLUS_IC_FUNC_NUM_GAUGE_START + 5)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_SOC (OPLUS_IC_FUNC_NUM_GAUGE_START + 6)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_FCC (OPLUS_IC_FUNC_NUM_GAUGE_START + 7)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_CC (OPLUS_IC_FUNC_NUM_GAUGE_START + 8)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_RM (OPLUS_IC_FUNC_NUM_GAUGE_START + 9)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_SOH (OPLUS_IC_FUNC_NUM_GAUGE_START + 10)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_AUTH (OPLUS_IC_FUNC_NUM_GAUGE_START + 11)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_HMAC (OPLUS_IC_FUNC_NUM_GAUGE_START + 12)
#define OPLUS_IC_FUNC_GAUGE_SET_BATT_FULL (OPLUS_IC_FUNC_NUM_GAUGE_START + 13)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_FC (OPLUS_IC_FUNC_NUM_GAUGE_START + 14)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_QM (OPLUS_IC_FUNC_NUM_GAUGE_START + 15)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_PD (OPLUS_IC_FUNC_NUM_GAUGE_START + 16)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_RCU (OPLUS_IC_FUNC_NUM_GAUGE_START + 17)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_RCF (OPLUS_IC_FUNC_NUM_GAUGE_START + 18)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_FCU (OPLUS_IC_FUNC_NUM_GAUGE_START + 19)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_FCF (OPLUS_IC_FUNC_NUM_GAUGE_START + 20)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_SOU (OPLUS_IC_FUNC_NUM_GAUGE_START + 21)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_DO0 (OPLUS_IC_FUNC_NUM_GAUGE_START + 22)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_DOE (OPLUS_IC_FUNC_NUM_GAUGE_START + 23)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_TRM (OPLUS_IC_FUNC_NUM_GAUGE_START + 24)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_PC (OPLUS_IC_FUNC_NUM_GAUGE_START + 25)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_QS (OPLUS_IC_FUNC_NUM_GAUGE_START + 26)
#define OPLUS_IC_FUNC_GAUGE_UPDATE_DOD0 (OPLUS_IC_FUNC_NUM_GAUGE_START + 27)
#define OPLUS_IC_FUNC_GAUGE_UPDATE_SOC_SMOOTH (OPLUS_IC_FUNC_NUM_GAUGE_START + 28)
#define OPLUS_IC_FUNC_GAUGE_GET_CB_STATUS (OPLUS_IC_FUNC_NUM_GAUGE_START + 29)
#define OPLUS_IC_FUNC_GAUGE_GET_PASSEDCHG (OPLUS_IC_FUNC_NUM_GAUGE_START + 30)
#define OPLUS_IC_FUNC_GAUGE_SET_LOCK (OPLUS_IC_FUNC_NUM_GAUGE_START + 31)
#define OPLUS_IC_FUNC_GAUGE_IS_LOCKED (OPLUS_IC_FUNC_NUM_GAUGE_START + 32)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_NUM (OPLUS_IC_FUNC_NUM_GAUGE_START + 33)
#define OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE (OPLUS_IC_FUNC_NUM_GAUGE_START + 34)
#define OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE_FOR_VOOC (OPLUS_IC_FUNC_NUM_GAUGE_START + 35)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_EXIST (OPLUS_IC_FUNC_NUM_GAUGE_START + 36)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_CAP (OPLUS_IC_FUNC_NUM_GAUGE_START + 37)
#define OPLUS_IC_FUNC_GAUGE_IS_SUSPEND (OPLUS_IC_FUNC_NUM_GAUGE_START + 38)
#define OPLUS_IC_FUNC_GAUGE_GET_BCC_PARMS (OPLUS_IC_FUNC_NUM_GAUGE_START + 39)
#define OPLUS_IC_FUNC_GAUGE_FASTCHG_UPDATE_BCC_PARMS (OPLUS_IC_FUNC_NUM_GAUGE_START + 40)
#define OPLUS_IC_FUNC_GAUGE_GET_PREV_BCC_PARMS (OPLUS_IC_FUNC_NUM_GAUGE_START + 41)
#define OPLUS_IC_FUNC_GAUGE_SET_BCC_PARMS (OPLUS_IC_FUNC_NUM_GAUGE_START + 42)
#define OPLUS_IC_FUNC_GAUGE_SET_PROTECT_CHECK (OPLUS_IC_FUNC_NUM_GAUGE_START + 43)
#define OPLUS_IC_FUNC_GAUGE_GET_AFI_UPDATE_DONE (OPLUS_IC_FUNC_NUM_GAUGE_START + 44)
#define OPLUS_IC_FUNC_GAUGE_CHECK_RESET (OPLUS_IC_FUNC_NUM_GAUGE_START + 45)
#define OPLUS_IC_FUNC_GAUGE_SET_RESET (OPLUS_IC_FUNC_NUM_GAUGE_START + 46)
#define OPLUS_IC_FUNC_GAUGE_SET_BATTERY_CURVE (OPLUS_IC_FUNC_NUM_GAUGE_START + 47)
#define OPLUS_IC_FUNC_GAUGE_GET_SUBBOARD_TEMP (OPLUS_IC_FUNC_NUM_GAUGE_START + 48)
#define OPLUS_IC_FUNC_GAUGE_GET_DEVICE_TYPE_FOR_BCC (OPLUS_IC_FUNC_NUM_GAUGE_START + 49)
#define OPLUS_IC_FUNC_GAUGE_GET_DOD0 (OPLUS_IC_FUNC_NUM_GAUGE_START + 50)
#define OPLUS_IC_FUNC_GAUGE_GET_DOD0_PASSED_Q (OPLUS_IC_FUNC_NUM_GAUGE_START + 51)
#define OPLUS_IC_FUNC_GAUGE_GET_QMAX (OPLUS_IC_FUNC_NUM_GAUGE_START + 52)
#define OPLUS_IC_FUNC_GAUGE_GET_QMAX_PASSED_Q (OPLUS_IC_FUNC_NUM_GAUGE_START + 53)
#define OPLUS_IC_FUNC_GAUGE_GET_DEEP_DISCHG_COUNT (OPLUS_IC_FUNC_NUM_GAUGE_START + 54)
#define OPLUS_IC_FUNC_GAUGE_SET_DEEP_DISCHG_COUNT (OPLUS_IC_FUNC_NUM_GAUGE_START + 55)
#define OPLUS_IC_FUNC_GAUGE_SET_DEEP_TERM_VOLT (OPLUS_IC_FUNC_NUM_GAUGE_START + 56)
#define OPLUS_IC_FUNC_GAUGE_GET_BATTID_INFO (OPLUS_IC_FUNC_NUM_GAUGE_START + 57)
#define OPLUS_IC_FUNC_GAUGE_GET_REG_INFO (OPLUS_IC_FUNC_NUM_GAUGE_START + 58)
#define OPLUS_IC_FUNC_GAUGE_GET_CALIB_TIME (OPLUS_IC_FUNC_NUM_GAUGE_START + 59)
#define OPLUS_IC_FUNC_GAUGE_GET_BATT_SN (OPLUS_IC_FUNC_NUM_GAUGE_START + 60)
#define OPLUS_IC_FUNC_GAUGE_GET_BATTID_MATCH_INFO (OPLUS_IC_FUNC_NUM_GAUGE_START + 61)
#define OPLUS_IC_FUNC_GAUGE_GET_DEEP_TERM_VOLT (OPLUS_IC_FUNC_NUM_GAUGE_START + 62)
#define OPLUS_IC_FUNC_GAUGE_SET_READ_MODE (OPLUS_IC_FUNC_NUM_GAUGE_START + 63)
#define OPLUS_IC_FUNC_GAUGE_SET_SILI_SPARE_POWER (OPLUS_IC_FUNC_NUM_GAUGE_START + 64)
#define OPLUS_IC_FUNC_GAUGE_GET_SILI_SIMULATE_TERM_VOLT (OPLUS_IC_FUNC_NUM_GAUGE_START + 65)
#define OPLUS_IC_FUNC_GAUGE_GET_SILI_IC_ALG_TERM_VOLT (OPLUS_IC_FUNC_NUM_GAUGE_START + 66)
#define OPLUS_IC_FUNC_GAUGE_SET_SILI_IC_ALG_CFG (OPLUS_IC_FUNC_NUM_GAUGE_START + 67)
#define OPLUS_IC_FUNC_GAUGE_GET_SILI_IC_ALG_DSG_ENABLE (OPLUS_IC_FUNC_NUM_GAUGE_START + 68)
#define OPLUS_IC_FUNC_GAUGE_SET_SILI_IC_ALG_TERM_VOLT (OPLUS_IC_FUNC_NUM_GAUGE_START + 69)
#define OPLUS_IC_FUNC_GAUGE_GET_SILI_ALG_APPLICATION_INFO (OPLUS_IC_FUNC_NUM_GAUGE_START + 70)
#define OPLUS_IC_FUNC_GAUGE_GET_SILI_LIFETIME_STATUS (OPLUS_IC_FUNC_NUM_GAUGE_START + 71)
#define OPLUS_IC_FUNC_GAUGE_GET_SILI_LIFETIME_INFO (OPLUS_IC_FUNC_NUM_GAUGE_START + 72)
#define OPLUS_IC_FUNC_GAUGE_GET_MANU_DATE (OPLUS_IC_FUNC_NUM_GAUGE_START + 73)
#define OPLUS_IC_FUNC_GAUGE_GET_FIRST_USAGE_DATE (OPLUS_IC_FUNC_NUM_GAUGE_START + 74)
#define OPLUS_IC_FUNC_GAUGE_SET_FIRST_USAGE_DATE (OPLUS_IC_FUNC_NUM_GAUGE_START + 75)
#define OPLUS_IC_FUNC_GAUGE_GET_UI_CC (OPLUS_IC_FUNC_NUM_GAUGE_START + 76)
#define OPLUS_IC_FUNC_GAUGE_SET_UI_CC (OPLUS_IC_FUNC_NUM_GAUGE_START + 77)
#define OPLUS_IC_FUNC_GAUGE_GET_UI_SOH (OPLUS_IC_FUNC_NUM_GAUGE_START + 78)
#define OPLUS_IC_FUNC_GAUGE_SET_UI_SOH (OPLUS_IC_FUNC_NUM_GAUGE_START + 79)
#define OPLUS_IC_FUNC_GAUGE_GET_USED_FLAG (OPLUS_IC_FUNC_NUM_GAUGE_START + 80)
#define OPLUS_IC_FUNC_GAUGE_SET_USED_FLAG (OPLUS_IC_FUNC_NUM_GAUGE_START + 81)
#define OPLUS_IC_FUNC_GAUGE_SET_CALIB_TIME (OPLUS_IC_FUNC_NUM_GAUGE_START + 82)
#define OPLUS_IC_FUNC_GAUGE_GET_CHEM_ID (OPLUS_IC_FUNC_NUM_GAUGE_START + 83)
#define OPLUS_IC_FUNC_GAUGE_SET_LAST_CC (OPLUS_IC_FUNC_NUM_GAUGE_START + 84)
#define OPLUS_IC_FUNC_GAUGE_GET_LAST_CC (OPLUS_IC_FUNC_NUM_GAUGE_START + 85)
#define OPLUS_IC_FUNC_GAUGE_GET_GAUGE_CAR_C (OPLUS_IC_FUNC_NUM_GAUGE_START + 86)
#define OPLUS_IC_FUNC_GAUGE_FPGA_RST (OPLUS_IC_FUNC_NUM_GAUGE_START + 87)
#define OPLUS_IC_FUNC_GAUGE_I2C_RST (OPLUS_IC_FUNC_NUM_GAUGE_START + 88)
#define OPLUS_IC_FUNC_GAUGE_GET_REAL_TIME_CURR (OPLUS_IC_FUNC_NUM_GAUGE_START + 90)
#define OPLUS_IC_FUNC_GAUGE_SET_SEAL_FLAG (OPLUS_IC_FUNC_NUM_GAUGE_START + 91)
#define OPLUS_IC_FUNC_GAUGE_GET_SUB_BTB_CONNECT_STATE (OPLUS_IC_FUNC_NUM_GAUGE_START + 92)
#define OPLUS_IC_FUNC_GAUGE_GET_DEC_FG_TYPE (OPLUS_IC_FUNC_NUM_GAUGE_START + 93)
#define OPLUS_IC_FUNC_GAUGE_GET_DEC_CV_SOH (OPLUS_IC_FUNC_NUM_GAUGE_START + 94)
#define OPLUS_IC_FUNC_GAUGE_SET_VCT (OPLUS_IC_FUNC_NUM_GAUGE_START + 95)
#define OPLUS_IC_FUNC_GAUGE_GET_VCT (OPLUS_IC_FUNC_NUM_GAUGE_START + 96)
/* misc */
#define OPLUS_IC_FUNC_NUM_MISC_START 500
#define OPLUS_IC_FUNC_GET_CHARGER_CYCLE (OPLUS_IC_FUNC_NUM_MISC_START + 0)
#define OPLUS_IC_FUNC_OTG_BOOST_ENABLE (OPLUS_IC_FUNC_NUM_MISC_START + 1)
#define OPLUS_IC_FUNC_SET_OTG_BOOST_VOL (OPLUS_IC_FUNC_NUM_MISC_START + 2)
#define OPLUS_IC_FUNC_SET_OTG_BOOST_CURR_LIMIT (OPLUS_IC_FUNC_NUM_MISC_START + 3)
#define OPLUS_IC_FUNC_WLS_BOOST_ENABLE (OPLUS_IC_FUNC_NUM_MISC_START + 4)
#define OPLUS_IC_FUNC_SET_WLS_BOOST_VOL (OPLUS_IC_FUNC_NUM_MISC_START + 5)
#define OPLUS_IC_FUNC_SET_WLS_BOOST_CURR_LIMIT (OPLUS_IC_FUNC_NUM_MISC_START + 6)
#define OPLUS_IC_FUNC_GET_SHUTDOWN_SOC (OPLUS_IC_FUNC_NUM_MISC_START + 7)
#define OPLUS_IC_FUNC_BACKUP_SOC (OPLUS_IC_FUNC_NUM_MISC_START + 8)
#define OPLUS_IC_FUNC_GET_USB_TEMP (OPLUS_IC_FUNC_NUM_MISC_START + 9)
#define OPLUS_IC_FUNC_GET_USB_TEMP_VOLT (OPLUS_IC_FUNC_NUM_MISC_START + 10)
#define OPLUS_IC_FUNC_USB_TEMP_CHECK_IS_SUPPORT (OPLUS_IC_FUNC_NUM_MISC_START + 11)
#define OPLUS_IC_FUNC_GET_TYPEC_MODE (OPLUS_IC_FUNC_NUM_MISC_START + 12)
#define OPLUS_IC_FUNC_SET_TYPEC_MODE (OPLUS_IC_FUNC_NUM_MISC_START + 13)
#define OPLUS_IC_FUNC_SET_USB_DISCHG_ENABLE (OPLUS_IC_FUNC_NUM_MISC_START + 14)
#define OPLUS_IC_FUNC_GET_USB_DISCHG_STATUS (OPLUS_IC_FUNC_NUM_MISC_START + 15)
#define OPLUS_IC_FUNC_SET_OTG_SWITCH_STATUS (OPLUS_IC_FUNC_NUM_MISC_START + 16)
#define OPLUS_IC_FUNC_GET_OTG_SWITCH_STATUS (OPLUS_IC_FUNC_NUM_MISC_START + 17)
#define OPLUS_IC_FUNC_GET_OTG_ONLINE_STATUS (OPLUS_IC_FUNC_NUM_MISC_START + 18)
#define OPLUS_IC_FUNC_CC_DETECT_HAPPENED (OPLUS_IC_FUNC_NUM_MISC_START + 19)
#define OPLUS_IC_FUNC_GET_OTG_ENABLE (OPLUS_IC_FUNC_NUM_MISC_START + 20)
#define OPLUS_IC_FUNC_GET_CHARGER_VOL_MAX (OPLUS_IC_FUNC_NUM_MISC_START + 21)
#define OPLUS_IC_FUNC_GET_CHARGER_VOL_MIN (OPLUS_IC_FUNC_NUM_MISC_START + 22)
#define OPLUS_IC_FUNC_GET_CHARGER_CURR_MAX (OPLUS_IC_FUNC_NUM_MISC_START + 23)
#define OPLUS_IC_FUNC_DISABLE_VBUS (OPLUS_IC_FUNC_NUM_MISC_START + 24)
#define OPLUS_IC_FUNC_IS_OPLUS_SVID (OPLUS_IC_FUNC_NUM_MISC_START + 25)
#define OPLUS_IC_FUNC_GET_DATA_ROLE (OPLUS_IC_FUNC_NUM_MISC_START + 26)
#define OPLUS_IC_FUNC_BUCK_GET_USB_BTB_TEMP (OPLUS_IC_FUNC_NUM_MISC_START + 27)
#define OPLUS_IC_FUNC_BUCK_GET_BATT_BTB_TEMP (OPLUS_IC_FUNC_NUM_MISC_START + 28)
#define OPLUS_IC_FUNC_GET_TYPEC_ROLE (OPLUS_IC_FUNC_NUM_MISC_START + 31)
/* voocphy */
#define OPLUS_IC_FUNC_NUM_VOOCPHY_START 600
#define OPLUS_IC_FUNC_VOOCPHY_ENABLE (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 0)
#define OPLUS_IC_FUNC_VOOCPHY_RESET_AGAIN (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 1)
#define OPLUS_IC_FUNC_VOOCPHY_SET_CURR_LEVEL (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 2)
#define OPLUS_IC_FUNC_VOOCPHY_SET_MATCH_TEMP (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 3)
#define OPLUS_IC_FUNC_VOOCPHY_SET_PDQC_CONFIG (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 4)
#define OPLUS_IC_FUNC_VOOCPHY_GET_CP_VBAT (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 5)
#define OPLUS_IC_FUNC_VOOCPHY_SET_CHG_AUTO_MODE (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 6)
#define OPLUS_IC_FUNC_VOOCPHY_GET_CURVE_CURR (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 7)
#define OPLUS_IC_FUNC_VOOCPHY_GET_BCC_MAX_CURR (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 8)
#define OPLUS_IC_FUNC_VOOCPHY_GET_BCC_MIN_CURR (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 9)
#define OPLUS_IC_FUNC_VOOCPHY_GET_BCC_EXIT_CURR (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 10)
#define OPLUS_IC_FUNC_VOOCPHY_GET_FASTCHG_ING (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 11)
#define OPLUS_IC_FUNC_VOOCPHY_GET_BCC_TEMP_RANGE (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 12)
#define OPLUS_IC_FUNC_VOOCPHY_SET_BCC_CURR (OPLUS_IC_FUNC_NUM_VOOCPHY_START + 13)
/* ufcs */
#define OPLUS_IC_FUNC_NUM_UFCS_START 900
#define OPLUS_IC_FUNC_UFCS_HANDSHAKE (OPLUS_IC_FUNC_NUM_UFCS_START + 0)
#define OPLUS_IC_FUNC_UFCS_PDO_SET (OPLUS_IC_FUNC_NUM_UFCS_START + 1)
#define OPLUS_IC_FUNC_UFCS_HARD_RESET (OPLUS_IC_FUNC_NUM_UFCS_START + 2)
#define OPLUS_IC_FUNC_UFCS_EXIT (OPLUS_IC_FUNC_NUM_UFCS_START + 3)
#define OPLUS_IC_FUNC_UFCS_CONFIG_WD (OPLUS_IC_FUNC_NUM_UFCS_START + 4)
#define OPLUS_IC_FUNC_UFCS_GET_DEV_INFO (OPLUS_IC_FUNC_NUM_UFCS_START + 5)
#define OPLUS_IC_FUNC_UFCS_GET_ERR_INFO (OPLUS_IC_FUNC_NUM_UFCS_START + 6)
#define OPLUS_IC_FUNC_UFCS_GET_SRC_INFO (OPLUS_IC_FUNC_NUM_UFCS_START + 7)
#define OPLUS_IC_FUNC_UFCS_GET_CABLE_INFO (OPLUS_IC_FUNC_NUM_UFCS_START + 8)
#define OPLUS_IC_FUNC_UFCS_GET_PDO_INFO (OPLUS_IC_FUNC_NUM_UFCS_START + 9)
#define OPLUS_IC_FUNC_UFCS_VERIFY_ADAPTER (OPLUS_IC_FUNC_NUM_UFCS_START + 10)
#define OPLUS_IC_FUNC_UFCS_GET_POWER_CHANGE_INFO (OPLUS_IC_FUNC_NUM_UFCS_START + 11)
#define OPLUS_IC_FUNC_UFCS_GET_EMARK_INFO (OPLUS_IC_FUNC_NUM_UFCS_START + 12)
#define OPLUS_IC_FUNC_UFCS_GET_POWER_INFO_EXT (OPLUS_IC_FUNC_NUM_UFCS_START + 13)
#define OPLUS_IC_FUNC_UFCS_IS_TEST_MODE (OPLUS_IC_FUNC_NUM_UFCS_START + 14)
#define OPLUS_IC_FUNC_UFCS_IS_VOL_ACC_TEST_MODE (OPLUS_IC_FUNC_NUM_UFCS_START + 15)
#define OPLUS_IC_FUNC_UFCS_SET_SM_PERIOD (OPLUS_IC_FUNC_NUM_UFCS_START + 16)
#define VOOC_VERSION_DEFAULT 0x0
#define VOOC_VERSION_1_0 0x1
#define VOOC_VERSION_2_0 0x2
#define VOOC_VERSION_3_0 0x3
#define VOOC_VERSION_4_0 0x4
#define VOOC_VERSION_5_0 0x5 /* optimize into fastchging time */
#define CURR_LIMIT_VOOC_3_6A_SVOOC_2_5A 0x01
#define CURR_LIMIT_VOOC_2_5A_SVOOC_2_0A 0x02
#define CURR_LIMIT_VOOC_3_0A_SVOOC_3_0A 0x03
#define CURR_LIMIT_VOOC_4_0A_SVOOC_4_0A 0x04
#define CURR_LIMIT_VOOC_5_0A_SVOOC_5_0A 0x05
#define CURR_LIMIT_VOOC_6_0A_SVOOC_6_5A 0x06
#define CURR_LIMIT_7BIT_1_0A 0x01
#define CURR_LIMIT_7BIT_1_5A 0x02
#define CURR_LIMIT_7BIT_2_0A 0x03
#define CURR_LIMIT_7BIT_2_5A 0x04
#define CURR_LIMIT_7BIT_3_0A 0x05
#define CURR_LIMIT_7BIT_3_5A 0x06
#define CURR_LIMIT_7BIT_4_0A 0x07
#define CURR_LIMIT_7BIT_4_5A 0x08
#define CURR_LIMIT_7BIT_5_0A 0x09
#define CURR_LIMIT_7BIT_5_5A 0x0a
#define CURR_LIMIT_7BIT_6_0A 0x0b
#define CURR_LIMIT_7BIT_6_3A 0x0c
#define CURR_LIMIT_7BIT_6_5A 0x0d
#define CURR_LIMIT_7BIT_7_0A 0x0e
#define CURR_LIMIT_7BIT_7_5A 0x0f
#define CURR_LIMIT_7BIT_8_0A 0x10
#define CURR_LIMIT_7BIT_8_5A 0x11
#define CURR_LIMIT_7BIT_9_0A 0x12
#define CURR_LIMIT_7BIT_9_5A 0x13
#define CURR_LIMIT_7BIT_10_0A 0x14
#define CURR_LIMIT_7BIT_10_5A 0x15
#define CURR_LIMIT_7BIT_11_0A 0x16
#define CURR_LIMIT_7BIT_11_5A 0x17
#define CURR_LIMIT_7BIT_12_0A 0x18
#define CURR_LIMIT_7BIT_12_5A 0x19
#define CP_CURR_LIMIT_7BIT_2_0A 0x01
#define CP_CURR_LIMIT_7BIT_2_1A 0x02
#define CP_CURR_LIMIT_7BIT_2_4A 0x03
#define CP_CURR_LIMIT_7BIT_3_0A 0x04
#define CP_CURR_LIMIT_7BIT_3_4A 0x05
#define CP_CURR_LIMIT_7BIT_4_0A 0x06
#define CP_CURR_LIMIT_7BIT_4_4A 0x07
#define CP_CURR_LIMIT_7BIT_5_0A 0x08
#define CP_CURR_LIMIT_7BIT_5_4A 0x09
#define CP_CURR_LIMIT_7BIT_6_0A 0x0a
#define CP_CURR_LIMIT_7BIT_6_4A 0x0b
#define CP_CURR_LIMIT_7BIT_7_0A 0x0c
#define CP_CURR_LIMIT_7BIT_7_4A 0x0d
#define CP_CURR_LIMIT_7BIT_8_0A 0x0e
#define CP_CURR_LIMIT_7BIT_9_0A 0x0f
#define CP_CURR_LIMIT_7BIT_10_0A 0x10
#define CP_CURR_LIMIT_7BIT_11_0A 0x11
#define CP_CURR_LIMIT_7BIT_12_0A 0x12
#define CP_CURR_LIMIT_7BIT_12_6A 0x13
#define CP_CURR_LIMIT_7BIT_13_0A 0x14
#define CP_CURR_LIMIT_7BIT_14_0A 0x15
#define CP_CURR_LIMIT_7BIT_15_0A 0x16
#define CP_CURR_LIMIT_7BIT_16_0A 0x17
#define CP_CURR_LIMIT_7BIT_17_0A 0x18
#define CP_CURR_LIMIT_7BIT_18_0A 0x19
#define CP_CURR_LIMIT_7BIT_19_0A 0x1a
#define CP_CURR_LIMIT_7BIT_20_0A 0x1b
#define VOOC_CURR_TABLE_OLD_1_0 0
#define VOOC_CURR_TABLE_1_0 1
#define VOOC_CURR_TABLE_2_0 2
#define VOOC_CP_CURR_TABLE 3
/* VADC scale function index */
#define OPLUS_ADC_SCALE_DEFAULT 0x0
#define OPLUS_ADC_SCALE_THERM_100K_PULLUP 0x1
#define OPLUS_ADC_SCALE_PMIC_THERM 0x2
#define OPLUS_ADC_SCALE_XOTHERM 0x3
#define OPLUS_ADC_SCALE_PMI_CHG_TEMP 0x4
#define OPLUS_ADC_SCALE_HW_CALIB_DEFAULT 0x5
#define OPLUS_ADC_SCALE_HW_CALIB_THERM_100K_PULLUP 0x6
#define OPLUS_ADC_SCALE_HW_CALIB_XOTHERM 0x7
#define OPLUS_ADC_SCALE_HW_CALIB_PMIC_THERM 0x8
#define OPLUS_ADC_SCALE_HW_CALIB_CUR 0x9
#define OPLUS_ADC_SCALE_HW_CALIB_PM5_CHG_TEMP 0xA
#define OPLUS_ADC_SCALE_HW_CALIB_PM5_SMB_TEMP 0xB
#define OPLUS_ADC_SCALE_HW_CALIB_BATT_THERM_100K 0xC
#define OPLUS_ADC_SCALE_HW_CALIB_BATT_THERM_30K 0xD
#define OPLUS_ADC_SCALE_HW_CALIB_BATT_THERM_400K 0xE
#define OPLUS_ADC_SCALE_HW_CALIB_PM5_SMB1398_TEMP 0xF
/* strategy */
#define OPLUS_STRATEGY_USE_BATT_TEMP 0
#define OPLUS_STRATEGY_USE_SHELL_TEMP 1
#define OPLUS_STRATEGY_USE_MAIN_BATT_TEMP 2
#define OPLUS_STRATEGY_USE_SUB_BATT_TEMP 3
#define AGING_FFC_NOT_SUPPORT 0
#define AGING_FFC_V1 1
/* charge protocol arbitration */
#define CHG_PROTOCOL_BC12 0
#define CHG_PROTOCOL_PD 1
#define CHG_PROTOCOL_PPS 2
#define CHG_PROTOCOL_VOOC 3
#define CHG_PROTOCOL_UFCS 4
#define CHG_PROTOCOL_QC 5
#define CP_WORK_MODE_UNKNOWN 0
#define CP_WORK_MODE_AUTO 1
#define CP_WORK_MODE_BYPASS 2
#define CP_WORK_MODE_2_TO_1 3
#define CP_WORK_MODE_3_TO_1 4
#define CP_WORK_MODE_4_TO_1 5
#define CP_WORK_MODE_1_TO_2 6
#define CP_WORK_MODE_1_TO_3 7
#define CP_WORK_MODE_1_TO_4 8
#define OPLUS_CHG_SPEC_VER_UNKNOW 0
#define OPLUS_CHG_SPEC_VER_V3P6 1
#define OPLUS_CHG_SPEC_VER_V3P7 2
#define TRACK_NO_VOOCPHY 0
#define TRACK_ADSP_VOOCPHY 1
#define TRACK_AP_SINGLE_CP_VOOCPHY 2
#define TRACK_AP_DUAL_CP_VOOCPHY 3
#define TRACK_MCU_VOOCPHY 4
#define TRACK_WIRED_SCHEME_SERIES_125W_150W 0
#define TRACK_WIRED_SCHEME_SERIES_65W_80W_100W 1
#define TRACK_WIRED_SCHEME_SINGLE_60W_67W 2
#define TRACK_WIRED_SCHEME_PARALLEL_60W_67W 3
#define TRACK_WIRED_SCHEME_SINGLE_30W_33W 4
#define TRACK_WIRED_SCHEME_PARALLEL_30W_33W 5
#define TRACK_WIRED_SCHEME_SINGLE_18W 6
#define NO_VOOCPHY 0
#define ADSP_VOOCPHY 1
#define AP_SINGLE_CP_VOOCPHY 2
#define AP_DUAL_CP_VOOCPHY 3
#define INVALID_VOOCPHY 4
#define VOOC_PROJECT_UNKOWN 0
#define VOOC_PROJECT_5V4A_5V6A_VOOC 1
#define VOOC_PROJECT_10V5A_TWO_BAT_SVOOC 2
#define VOOC_PROJECT_10V6P5A_TWO_BAT_SVOOC 3
#define VOOC_PROJECT_10V5A_SINGLE_BAT_SVOOC 4
#define VOOC_PROJECT_11V3A_SINGLE_BAT_SVOOC 5
#define VOOC_PROJECT_10V6A_SINGLE_BAT_SVOOC 6
#define VOOC_PROJECT_10V8A_TWO_BAT_SVOOC 7
#define VOOC_PROJECT_10V10A_TWO_BAT_SVOOC 8
#define VOOC_PROJECT_20V7P5A_TWO_BAT_SVOOC 9
#define VOOC_PROJECT_10V6P6A_SINGLE_BAT_SVOOC 12
#define VOOC_PROJECT_11V6P1A_SINGLE_BAT_SVOOC 13
#define VOOC_PROJECT_20V6A_TWO_BAT_SVOOC 14
#define VOOC_PROJECT_11V4A_SINGLE_BAT_SVOOC 15
#define VOOC_PROJECT_20V12A_TWO_BAT_SVOOC 16
#define VOOC_PROJECT_200W_SVOOC 17
#define VOOC_PROJECT_88W_SVOOC 18
#define VOOC_PROJECT_55W_SVOOC 19
#define VOOC_PROJECT_125W_SVOOC 20
#define VOOC_PROJECT_OTHER 21
#define SILI_OCV_HYSTERESIS 0
#define SILI_OCV_AGING_OFFSET 1
#define SILI_DYNAMIC_DSG_CTRL 2
#define SILI_STATIC_DSG_CTRL 3
#define SILI_MONITOR_MODE 4
#define UFCS_CURR_BIDIRECT_TABLE 0
#define UFCS_CURR_CP_TABLE 1
#define CP_STRAT_OPEN_ALL 0
#define CP_STRAT_OPEN_BY_CURR 1
#define STRATEGY_USE_BATT_INFO 0
#define STRATEGY_USE_MAIN_INFO 1
#define STRATEGY_USE_SUB_INFO 2
#define CP_STRAT_OPEN_ALL 0
#define CP_STRAT_OPEN_BY_CURR 1
/* oplus_plc_strategy_type */
#define PLC_STRATEGY_STEP 0
#define PLC_STRATEGY_SIMPLE 1
#define PLC_STRATEGY_PID 2
//endif OPLUS_FEATURE_CHG_BASIC

View File

@@ -0,0 +1,43 @@
&soc {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev {
status = "ok";
compatible = "oplus,fp_spi";
interrupt-parent = <&tlmm>;
power-mode = <1> ; /*0: power mode not set, 1: ldo power, 2: gpio power, 3: auto power */
ldo-supply = <&L14B>;
ldo-config = <3008000 3008000 150000>;
uff,gpio_reset = <&tlmm 78 0x0>;
pinctrl-names = "default";
pinctrl-0 = <&fp_reset_gpio_default>;
notify_tpinfo_flag = <1>;
optical_irq_disable_flag = <1>;
power-num = <1>;
power_source_1 {
power-mode = <1>;
power-name = "ldo";
power-config = "ldo-config";
delay-time = <0>;
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};
&tlmm {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev{
fp_reset_gpio_default: fp_reset_gpio_default {
mux {
pins = "gpio78";
function = "gpio";
};
config {
pins = "gpio78";
drive-strength = <2>;
bias-disable;
output-low;
};
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};

View File

@@ -0,0 +1,58 @@
&pmih010x_haptics {
qcom,vmax-mv = <2400>;
qcom,cl-vmax-mv = <2550>;
qcom,lra-period-us = <7692>;
qcom,fifo-vmax-mv = <7490>;
qcom,old-steady-vmax-mv = <7490>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <9999>;//luxun
qcom,vbat-low-soc = <5>;
qcom,vbat-low-soc-cold = <20>;
qcom,vbat-low-temp = <(-50)>;/*-5C*/
qcom,vbat-low-fifo-vmax-mv = <6700>;
oplus,livetap_support;
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pmih010x_eusb2_repeater {
qcom,param-override-seq = <0x0e 0x51 0x07 0x53 0x04 0x54 0x02 0x55 0x04 0x57>;
qcom,host-param-override-seq = <0x0e 0x51 0x07 0x53 0x04 0x54 0x03 0x55 0x04 0x57>;
};
&usb0 {
qcom,wcd_usbss = <&wcd_usbss>;
dwc3@a600000 {
maximum-speed = "super-speed";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&battery_charger {
qcom,otg_boost_src = <0>; /* 0:plat_pmic 1:external */
};
&regulator_ocp_notifier {
periph-d40-supply = <0>;
periph-d41-supply = <0>;
periph-d42-supply = <0>;
periph-d43-supply = <0>;
periph-d44-supply = <0>;
periph-d45-supply = <0>;
periph-d46-supply = <0>;
};
&pmih010x_bcl {
bcl,support_track;
};
&pm8550_bcl {
bcl,support_track;
};

View File

@@ -0,0 +1,62 @@
&pmih010x_haptics {
qcom,vmax-mv = <2400>;
qcom,cl-vmax-mv = <2550>;
qcom,lra-period-us = <7692>;
qcom,fifo-vmax-mv = <7490>;
qcom,old-steady-vmax-mv = <7490>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <9999>;//luxun
qcom,vbat-low-soc = <5>;
qcom,vbat-low-soc-cold = <20>;
qcom,vbat-low-temp = <(-50)>;/*-5C*/
qcom,vbat-low-fifo-vmax-mv = <6700>;
oplus,livetap_support;
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pmih010x_eusb2_repeater {
qcom,param-override-seq = <0x0e 0x51 0x07 0x53 0x04 0x54 0x02 0x55 0x04 0x57>;
qcom,host-param-override-seq = <0x0e 0x51 0x07 0x53 0x04 0x54 0x03 0x55 0x04 0x57>;
};
&usb0 {
qcom,wcd_usbss = <&wcd_usbss>;
dwc3@a600000 {
maximum-speed = "super-speed";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&battery_charger {
qcom,otg_boost_src = <0>; /* 0:plat_pmic 1:external */
};
&wcd_usbss {
wcd-usb-sbu-compliance; /* Disable SBU1/2 2K PLDN */
};
&regulator_ocp_notifier {
periph-d40-supply = <0>;
periph-d41-supply = <0>;
periph-d42-supply = <0>;
periph-d43-supply = <0>;
periph-d44-supply = <0>;
periph-d45-supply = <0>;
periph-d46-supply = <0>;
};
&pmih010x_bcl {
bcl,support_track;
};
&pm8550_bcl {
bcl,support_track;
};

View File

@@ -0,0 +1,78 @@
&pmih010x_haptics {
qcom,vmax-mv = <1260>;
qcom,cl-vmax-mv = <1260>;
qcom,lra-period-us = <5882>;
qcom,cl_lra-period-us = <5618>;
qcom,fifo-vmax-mv = <7450>;
qcom,old-steady-vmax-mv = <7450>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <809>;//0809
qcom,vbat-low-soc = <5>;
qcom,vbat-low-soc-cold = <20>;
qcom,vbat-low-temp = <(-50)>;/*-5C*/
qcom,vbat-low-fifo-vmax-mv = <6800>;
oplus,livetap_support;
qcom,autores-en-delay-cycles = <20>; //10 cycle
qcom,autores-error-window = <1>; //25 percent
qcom,adt_drv_brk_duty_en; //en f060 bit6 && bit7
qcom,hbst-ovp-trim;
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pmih010x_eusb2_repeater {
qcom,param-override-seq = <0x0e 0x51 0x07 0x52 0x07 0x53 0x04 0x54 0x02 0x55 0x03 0x57>;
qcom,host-param-override-seq = <0x07 0x51 0x02 0x52 0x07 0x53 0x01 0x54 0x00 0x55 0x01 0x57>;
};
&soc {
usb_nop_phy: usb_nop_phy {
compatible = "usb-nop-xceiv";
};
};
&usb0 {
/delete-property/ extcon;
dwc3@a600000 {
usb-phy = <&eusb2_phy0>, <&usb_nop_phy>;
maximum-speed = "high-speed";
dr_mode = "otg";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&usb_qmp_dp_phy {
pinctrl-names = "default";
pinctrl-0 = <&usb3phy_portselect_default>;
status = "disabled";
};
&battery_charger {
qcom,otg_boost_src = <0>; /* 0:plat_pmic 1:external */
};
&regulator_ocp_notifier {
periph-d40-supply = <0>;
periph-d41-supply = <0>;
periph-d42-supply = <0>;
periph-d43-supply = <0>;
periph-d44-supply = <0>;
periph-d45-supply = <0>;
periph-d46-supply = <0>;
};
&pmih010x_bcl {
bcl,support_track;
};
&pm8550_bcl {
bcl,support_track;
};

View File

@@ -0,0 +1,77 @@
&pmih010x_haptics {
qcom,vmax-mv = <1260>;
qcom,cl-vmax-mv = <1260>;
qcom,lra-period-us = <5882>;
qcom,cl_lra-period-us = <5618>;
qcom,fifo-vmax-mv = <7450>;
qcom,old-steady-vmax-mv = <7450>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <809>;//0809
qcom,vbat-low-soc = <5>;
qcom,vbat-low-soc-cold = <20>;
qcom,vbat-low-temp = <(-50)>;/*-5C*/
qcom,vbat-low-fifo-vmax-mv = <6800>;
oplus,livetap_support;
qcom,autores-en-delay-cycles = <20>; //10 cycle
qcom,autores-error-window = <1>; //25 percent
qcom,adt_drv_brk_duty_en; //en f060 bit6 && bit7
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pmih010x_eusb2_repeater {
qcom,param-override-seq = <0x0f 0x51 0x01 0x52 0x07 0x53 0x04 0x54 0x03 0x55 0x03 0x57>;
qcom,host-param-override-seq = <0x07 0x51 0x02 0x52 0x07 0x53 0x01 0x54 0x00 0x55 0x01 0x57>;
};
&soc {
usb_nop_phy: usb_nop_phy {
compatible = "usb-nop-xceiv";
};
};
&usb0 {
/delete-property/ extcon;
dwc3@a600000 {
usb-phy = <&eusb2_phy0>, <&usb_nop_phy>;
maximum-speed = "high-speed";
dr_mode = "otg";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&usb_qmp_dp_phy {
pinctrl-names = "default";
pinctrl-0 = <&usb3phy_portselect_default>;
status = "disabled";
};
&battery_charger {
qcom,otg_boost_src = <0>; /* 0:plat_pmic 1:external */
};
&regulator_ocp_notifier {
periph-d40-supply = <0>;
periph-d41-supply = <0>;
periph-d42-supply = <0>;
periph-d43-supply = <0>;
periph-d44-supply = <0>;
periph-d45-supply = <0>;
periph-d46-supply = <0>;
};
&pmih010x_bcl {
bcl,support_track;
};
&pm8550_bcl {
bcl,support_track;
};

View File

@@ -0,0 +1,73 @@
&pmih010x_haptics {
qcom,vmax-mv = <1260>;
qcom,cl-vmax-mv = <1260>;
qcom,lra-period-us = <5882>;
qcom,cl_lra-period-us = <5618>;
qcom,fifo-vmax-mv = <7450>;
qcom,old-steady-vmax-mv = <7450>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <809>;//0809
oplus,livetap_support;
qcom,autores-en-delay-cycles = <20>; //10 cycle
qcom,autores-error-window = <1>; //25 percent
qcom,adt_drv_brk_duty_en; //en f060 bit6 && bit7
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pmih010x_eusb2_repeater {
qcom,param-override-seq = <0x0f 0x51 0x01 0x52 0x07 0x53 0x04 0x54 0x03 0x55 0x03 0x57>;
qcom,host-param-override-seq = <0x07 0x51 0x02 0x52 0x07 0x53 0x01 0x54 0x00 0x55 0x01 0x57>;
};
&soc {
usb_nop_phy: usb_nop_phy {
compatible = "usb-nop-xceiv";
};
};
&usb0 {
/delete-property/ extcon;
dwc3@a600000 {
usb-phy = <&eusb2_phy0>, <&usb_nop_phy>;
maximum-speed = "high-speed";
dr_mode = "otg";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&usb_qmp_dp_phy {
pinctrl-names = "default";
pinctrl-0 = <&usb3phy_portselect_default>;
status = "disabled";
};
&battery_charger {
qcom,otg_boost_src = <0>; /* 0:plat_pmic 1:external */
};
&regulator_ocp_notifier {
periph-d40-supply = <0>;
periph-d41-supply = <0>;
periph-d42-supply = <0>;
periph-d43-supply = <0>;
periph-d44-supply = <0>;
periph-d45-supply = <0>;
periph-d46-supply = <0>;
};
&pmih010x_bcl {
bcl,support_track;
};
&pm8550_bcl {
bcl,support_track;
};

View File

@@ -0,0 +1,61 @@
&pmih010x_haptics {
status = "disabled";
};
&pmih010x_eusb2_repeater {
qcom,param-override-seq = <0x0b 0x51 0x07 0x53 0x04 0x54 0x03 0x57>;
qcom,host-param-override-seq = <0x0b 0x51 0x07 0x53 0x04 0x54 0x03 0x57>;
};
&wcd_usbss {
qcom,wcd_usbss_equalizer1 = /bits/ 8 <0x6>;
};
&usb0 {
qcom,wcd_usbss = <&wcd_usbss>;
dwc3@a600000 {
maximum-speed = "super-speed";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&battery_charger {
qcom,otg_boost_src = <0>; /* 0:plat_pmic 1:external */
};
&pmih010x_bcl {
bcl,support_track;
};
&pm8550_bcl {
bcl,support_track;
};
&wcd_usbss {
wcd-usb-sbu-compliance; /* Disable SBU1/2 2K PLDN */
};
&regulator_ocp_notifier {
periph-ac1-supply = <0>;
periph-ac2-supply = <0>;
periph-ac3-supply = <0>;
periph-ac4-supply = <0>;
periph-ac5-supply = <0>;
periph-ac6-supply = <0>;
periph-ac7-supply = <0>;
periph-c40-supply = <0>;
periph-c41-supply = <0>;
periph-c42-supply = <0>;
periph-c43-supply = <0>;
periph-c44-supply = <0>;
periph-c45-supply = <0>;
periph-c46-supply = <0>;
periph-d40-supply = <0>;
periph-d41-supply = <0>;
periph-d42-supply = <0>;
periph-d43-supply = <0>;
periph-d44-supply = <0>;
periph-d45-supply = <0>;
periph-d46-supply = <0>;
};

View File

@@ -0,0 +1,90 @@
#include <dt-bindings/clock/qcom,rpmh.h>
&soc {
//add for nfc_chipset
nfc_chipset {
compatible = "oplus-nfc-chipset";
chipset-23821 = "SN220T";
};
};
&tlmm {
nfc {
nfc_int_active: nfc_int_active {
/* active state */
mux {
/* NFC Read Interrupt */
pins = "gpio75";
function = "gpio";
};
config {
pins = "gpio75";
drive-strength = <2>; /* 2 MA */
bias-pull-down;
};
};
nfc_int_suspend: nfc_int_suspend {
/* sleep state */
mux {
/* NFC Read Interrupt */
pins = "gpio75";
function = "gpio";
};
config {
pins = "gpio75";
drive-strength = <2>; /* 2 MA */
bias-pull-down;
};
};
nfc_enable_active: nfc_enable_active {
mux {
/* Enable, and Clock request gpios */
pins = "gpio34", "gpio35";
function = "gpio";
};
config {
pins = "gpio34", "gpio35";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
nfc_enable_suspend: nfc_enable_suspend {
mux {
pins = "gpio34", "gpio35";
function = "gpio";
};
config {
pins = "gpio34", "gpio35";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
}; //nfc
}; //tlmm
&qupv3_se0_i2c {
status = "ok";
qcom,clk-freq-out = <400000>;
#address-cells = <1>;
#size-cells = <0>;
nq@28 {
compatible = "qcom,sn-nci";
reg = <0x28>;
qcom,sn-irq = <&tlmm 75 0x00>;
qcom,sn-ven = <&tlmm 34 0x00>;
qcom,sn-clkreq = <&tlmm 35 0x00>;
nxp,sn-vbat = <&tlmm 174 0x00>;
qcom,sn-szone = "enable";
interrupt-parent = <&tlmm>;
interrupts = <75 0>;
interrupt-names = "nfc_irq";
pinctrl-names = "nfc_active", "nfc_suspend";
pinctrl-0 = <&nfc_int_active &nfc_enable_active>;
pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend>;
};
};

View File

@@ -0,0 +1,90 @@
#include <dt-bindings/clock/qcom,rpmh.h>
&soc {
//add for nfc_chipset
nfc_chipset {
compatible = "oplus-nfc-chipset";
chipset-23821 = "SN220T";
};
};
&tlmm {
nfc {
nfc_int_active: nfc_int_active {
/* active state */
mux {
/* NFC Read Interrupt */
pins = "gpio75";
function = "gpio";
};
config {
pins = "gpio75";
drive-strength = <2>; /* 2 MA */
bias-pull-down;
};
};
nfc_int_suspend: nfc_int_suspend {
/* sleep state */
mux {
/* NFC Read Interrupt */
pins = "gpio75";
function = "gpio";
};
config {
pins = "gpio75";
drive-strength = <2>; /* 2 MA */
bias-pull-down;
};
};
nfc_enable_active: nfc_enable_active {
mux {
/* Enable, and Clock request gpios */
pins = "gpio34", "gpio35";
function = "gpio";
};
config {
pins = "gpio34", "gpio35";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
nfc_enable_suspend: nfc_enable_suspend {
mux {
pins = "gpio34", "gpio35";
function = "gpio";
};
config {
pins = "gpio34", "gpio35";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
}; //nfc
}; //tlmm
&qupv3_se0_i2c {
status = "ok";
qcom,clk-freq-out = <400000>;
#address-cells = <1>;
#size-cells = <0>;
nq@28 {
compatible = "qcom,sn-nci";
reg = <0x28>;
qcom,sn-irq = <&tlmm 75 0x00>;
qcom,sn-ven = <&tlmm 34 0x00>;
qcom,sn-clkreq = <&tlmm 35 0x00>;
nxp,sn-vbat = <&tlmm 174 0x00>;
qcom,sn-szone = "enable";
interrupt-parent = <&tlmm>;
interrupts = <75 0>;
interrupt-names = "nfc_irq";
pinctrl-names = "nfc_active", "nfc_suspend";
pinctrl-0 = <&nfc_int_active &nfc_enable_active>;
pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend>;
};
};

View File

@@ -0,0 +1,91 @@
#include <dt-bindings/clock/qcom,rpmh.h>
&soc {
//add for nfc_chipset
nfc_chipset {
compatible = "oplus-nfc-chipset";
chipset-24821 = "SN220T";
chipset-24875 = "SN220T";
};
};
&tlmm {
nfc {
nfc_int_active: nfc_int_active {
/* active state */
mux {
/* NFC Read Interrupt */
pins = "gpio75";
function = "gpio";
};
config {
pins = "gpio75";
drive-strength = <2>; /* 2 MA */
bias-pull-down;
};
};
nfc_int_suspend: nfc_int_suspend {
/* sleep state */
mux {
/* NFC Read Interrupt */
pins = "gpio75";
function = "gpio";
};
config {
pins = "gpio75";
drive-strength = <2>; /* 2 MA */
bias-pull-down;
};
};
nfc_enable_active: nfc_enable_active {
mux {
/* Enable, and Clock request gpios */
pins = "gpio34", "gpio35";
function = "gpio";
};
config {
pins = "gpio34", "gpio35";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
nfc_enable_suspend: nfc_enable_suspend {
mux {
pins = "gpio34", "gpio35";
function = "gpio";
};
config {
pins = "gpio34", "gpio35";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
}; //nfc
}; //tlmm
&qupv3_se0_i2c {
status = "ok";
qcom,clk-freq-out = <400000>;
#address-cells = <1>;
#size-cells = <0>;
nq@28 {
compatible = "qcom,sn-nci";
reg = <0x28>;
qcom,sn-irq = <&tlmm 75 0x00>;
qcom,sn-ven = <&tlmm 34 0x00>;
qcom,sn-clkreq = <&tlmm 35 0x00>;
nxp,sn-vbat = <&tlmm 174 0x00>;
qcom,sn-szone = "enable";
interrupt-parent = <&tlmm>;
interrupts = <75 0>;
interrupt-names = "nfc_irq";
pinctrl-names = "nfc_active", "nfc_suspend";
pinctrl-0 = <&nfc_int_active &nfc_enable_active>;
pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend>;
};
};

View File

@@ -0,0 +1,166 @@
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interconnect/qcom,sun.h>
&tlmm {
qupv3_se8_2uart_tx_default: qupv3_se8_2uart_tx_default {
mux {
pins = "gpio2";
function = "gpio";
};
config {
pins = "gpio2";
drive-strength = <8>;
bias-disable;
};
};
qupv3_se8_2uart_tx_active: qupv3_se8_2uart_tx_active {
mux {
pins = "gpio2";
function = "qup2_se0_l2";
};
config {
pins = "gpio2";
drive-strength = <8>;
bias-disable;
};
};
};
&qupv3_2 {
qupv3_se8_2uart: qcom,qup_uart@880000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0x880000 0x4000>;
reg-names = "se_phys";
interrupts-extended =
<&intc GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>,
<&tlmm 3 IRQ_TYPE_NONE>;
clock-names = "se-clk";
clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
interconnect-names = "qup-core", "qup-config", "qup-memory";
interconnects =
<&clk_virt MASTER_QUP_CORE_2 &clk_virt SLAVE_QUP_CORE_2>,
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_2>,
<&aggre2_noc MASTER_QUP_2 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "active", "sleep", "shutdown";
pinctrl-0 = <&qupv3_se8_2uart_tx_default>;
pinctrl-1 = <&qupv3_se8_2uart_tx_active>;
pinctrl-2 = <&qupv3_se8_2uart_tx_default>;
pinctrl-3 = <&qupv3_se8_2uart_tx_default>;
qcom,wakeup-byte = <0xFD>;
qcom,auto-suspend-disable;
status = "ok";
};
};
&tlmm {
uart_rx_set: uart_rx_set {
mux {
pins = "gpio3";
function = "qup2_se0_l3";
};
config {
pins = "gpio3";
drive-strength = <2>;
bias-disable;
};
};
uart_rx_clear: uart_rx_clear {
mux {
pins = "gpio3";
function = "gpio";
};
config {
pins = "gpio3";
drive-strength = <2>;
input-enable;
bias-disable;
};
};
uart_wake_gpio: uart_wake_gpio {
mux {
pins = "gpio96";
function = "gpio";
};
config {
pins = "gpio96";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
pogo_power_enable: pogo_power_enable {
mux {
pins = "gpio85";
function = "gpio";
};
config {
pins = "gpio85";
output-high;
};
};
pogo_power_disable: pogo_power_disable {
mux {
pins = "gpio85";
function = "gpio";
};
config {
pins = "gpio85";
output-low;
};
};
};
&soc {
pogo_keyboard {
compatible = "tinno,pogo_keyboard";
status = "ok";
uart-tx-en-gpio = <&tlmm 83 0x00>;
uart-wake-gpio = <&tlmm 96 0x00>;
pinctrl-names = "default", "sleep", "uart_rx_set", "uart_rx_clear", "uart_wake_gpio", "pogo_power_enable", "pogo_power_disable";
pinctrl-0 = <&uart_rx_set>;
pinctrl-1 = <&uart_rx_set>;
pinctrl-2 = <&uart_rx_set>;
pinctrl-3 = <&uart_rx_clear>;
pinctrl-4 = <&uart_wake_gpio>;
pinctrl-5 = <&pogo_power_enable>;
pinctrl-6 = <&pogo_power_disable>;
tty-name-string = "ttyHS5";
pogopin-battery-support;
keyboard-name-strings-enc =
"Erhai 2KB(Pogo Pin)",
"Erhai 1KB CN(Pogo Pin)",
"Erhai 1KB EN(Pogo Pin)";
keyboard-ble-name-strings-enc =
"Erhai 2KB",
"Erhai 1KB CN",
"Erhai 1KB EN";
keyboard-name-strings =
"OPLUS Pad 4 Pro Keyboard(Pogo Pin)",
"OnePlus Pad 2 Pro Keyboard(Pogo Pin)",
"OnePlus Pad 3 Keyboard(Pogo Pin)";
keyboard-ble-name-strings =
"OPLUS Pad 4 Pro Keyboard",
"OnePlus Pad 2 Pro Keyboard",
"OnePlus Pad 3 Keyboard";
touchpad-xy-max = <2764 1630>;
};
};

View File

@@ -0,0 +1,171 @@
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interconnect/qcom,sun.h>
&tlmm {
qupv3_se8_2uart_tx_default: qupv3_se8_2uart_tx_default {
mux {
pins = "gpio2";
function = "gpio";
};
config {
pins = "gpio2";
drive-strength = <8>;
bias-disable;
};
};
qupv3_se8_2uart_tx_active: qupv3_se8_2uart_tx_active {
mux {
pins = "gpio2";
function = "qup2_se0_l2";
};
config {
pins = "gpio2";
drive-strength = <8>;
bias-disable;
};
};
};
&qupv3_2 {
qupv3_se8_2uart: qcom,qup_uart@880000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0x880000 0x4000>;
reg-names = "se_phys";
interrupts-extended =
<&intc GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>,
<&tlmm 3 IRQ_TYPE_NONE>;
clock-names = "se-clk";
clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
interconnect-names = "qup-core", "qup-config", "qup-memory";
interconnects =
<&clk_virt MASTER_QUP_CORE_2 &clk_virt SLAVE_QUP_CORE_2>,
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_2>,
<&aggre2_noc MASTER_QUP_2 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "active", "sleep", "shutdown";
pinctrl-0 = <&qupv3_se8_2uart_tx_default>;
pinctrl-1 = <&qupv3_se8_2uart_tx_active>;
pinctrl-2 = <&qupv3_se8_2uart_tx_default>;
pinctrl-3 = <&qupv3_se8_2uart_tx_default>;
qcom,wakeup-byte = <0xFD>;
qcom,auto-suspend-disable;
status = "ok";
};
};
&tlmm {
uart_rx_set: uart_rx_set {
mux {
pins = "gpio3";
function = "qup2_se0_l3";
};
config {
pins = "gpio3";
drive-strength = <2>;
bias-disable;
};
};
uart_rx_clear: uart_rx_clear {
mux {
pins = "gpio3";
function = "gpio";
};
config {
pins = "gpio3";
drive-strength = <2>;
input-enable;
bias-disable;
};
};
uart_wake_gpio: uart_wake_gpio {
mux {
pins = "gpio96";
function = "gpio";
};
config {
pins = "gpio96";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
pogo_power_enable: pogo_power_enable {
mux {
pins = "gpio85";
function = "gpio";
};
config {
pins = "gpio85";
output-high;
};
};
pogo_power_disable: pogo_power_disable {
mux {
pins = "gpio85";
function = "gpio";
};
config {
pins = "gpio85";
output-low;
};
};
};
&soc {
pogo_keyboard {
compatible = "tinno,pogo_keyboard";
status = "ok";
uart-tx-en-gpio = <&tlmm 83 0x00>;
uart-wake-gpio = <&tlmm 96 0x00>;
pinctrl-names = "default", "sleep", "uart_rx_set", "uart_rx_clear", "uart_wake_gpio", "pogo_power_enable", "pogo_power_disable";
pinctrl-0 = <&uart_rx_set>;
pinctrl-1 = <&uart_rx_set>;
pinctrl-2 = <&uart_rx_set>;
pinctrl-3 = <&uart_rx_clear>;
pinctrl-4 = <&uart_wake_gpio>;
pinctrl-5 = <&pogo_power_enable>;
pinctrl-6 = <&pogo_power_disable>;
tty-name-string = "ttyHS5";
pogopin-kb-fw-support;
pogopin-kb-ota-dfu;
/*dfu_fwinfo_start_addr*/
ota-customize-datas = <0x40>;
ota-firmware-name = "POGOPIN_KB.bin";
keyboard-name-strings-enc =
"Erhai 2KB(Pogo Pin)",
"Erhai 1KB CN(Pogo Pin)",
"Erhai 1KB EN(Pogo Pin)";
keyboard-ble-name-strings-enc =
"Erhai 2KB",
"Erhai 1KB CN",
"Erhai 1KB EN";
keyboard-name-strings =
"OPLUS Pad 4 Pro Keyboard(Pogo Pin)",
"OnePlus Pad 2 Pro Keyboard(Pogo Pin)",
"OnePlus Pad 3 Keyboard(Pogo Pin)";
keyboard-ble-name-strings =
"OPLUS Pad 4 Pro Keyboard",
"OnePlus Pad 2 Pro Keyboard",
"OnePlus Pad 3 Keyboard";
touchpad-xy-max = <2764 1630>;
};
};

View File

@@ -0,0 +1,58 @@
&soc {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev {
status = "ok";
compatible = "oplus,fp_spi";
interrupt-parent = <&tlmm>;
interrupts = <99 0>;
power-mode = <2> ; /*0: power mode not set, 1: ldo power, 2: gpio power, 3: auto power */
ldo-supply = <&L9B>;
ldo-config = <3008000 3008000 150000>;
uff,gpio_irq = <&tlmm 99 0x1>;
uff,gpio_reset = <&tlmm 78 0x0>;
pinctrl-names = "default";
pinctrl-0 = <&fp_irq_gpio_default>,<&fp_reset_gpio_default>;
notify_tpinfo_flag = <1>;
power-num = <1>;
gpio-power = <&tlmm 83 0x0>;
power_source_1 {
power-mode = <2>;
power-name = "gpio-power";
poweron-level = <1>;
delay-time = <0>;
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};
&tlmm {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev{
fp_irq_gpio_default: fp_irq_gpio_default {
mux {
pins = "gpio99";
function = "gpio";
};
config {
pins = "gpio99";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
fp_reset_gpio_default: fp_reset_gpio_default {
mux {
pins = "gpio78";
function = "gpio";
};
config {
pins = "gpio78";
drive-strength = <2>;
bias-disable;
output-low;
};
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};

View File

@@ -0,0 +1,43 @@
&soc {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev {
status = "ok";
compatible = "oplus,fp_spi";
interrupt-parent = <&tlmm>;
power-mode = <1> ; /*0: power mode not set, 1: ldo power, 2: gpio power, 3: auto power */
ldo-supply = <&L9B>;
ldo-config = <3008000 3008000 150000>;
uff,gpio_reset = <&tlmm 78 0x0>;
pinctrl-names = "default";
pinctrl-0 = <&fp_reset_gpio_default>;
notify_tpinfo_flag = <1>;
optical_irq_disable_flag = <1>;
power-num = <1>;
power_source_1 {
power-mode = <1>;
power-name = "ldo";
power-config = "ldo-config";
delay-time = <0>;
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};
&tlmm {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev{
fp_reset_gpio_default: fp_reset_gpio_default {
mux {
pins = "gpio78";
function = "gpio";
};
config {
pins = "gpio78";
drive-strength = <2>;
bias-disable;
output-low;
};
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};

View File

@@ -0,0 +1,123 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "oplus_nfc/pagani_nfc.dtsi"
#include "pagani_overlay_common.dtsi"
#include "oplus_misc/oplus-misc-24821.dtsi"
#include "oplus_uff/oplus-uff-24821.dtsi"
#include "tp/pagani-oplus-tp-24821.dtsi"
#include "oplus_chg/oplus-chg-24821.dtsi"
#include "sensor/pagani-sensor-24821-24875.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,pagani";
oplus,project-id = <24821>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0 OPLUS_T1 OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
//#ifdef OPLUS_FEATURE_ESIM
oplus-gpio {
compatible = "oplus,oplus-gpio";
pinctrl-names = "oplus_esim", "sim2_det_no_pull", "sim2_det_pull_high", "sim2_det_pull_low";
pinctrl-0 = <&esim_det_gpio &esim_en_gpio>;
pinctrl-1 = <&sim2_det_no_pull>;
pinctrl-2 = <&sim2_det_pull_high>;
pinctrl-3 = <&sim2_det_pull_low>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pmih010x_gpios 10 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550ve_d_gpios 4 0>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /*OPLUS_FEATURE_ESIM*/
//#ifdef CONFIG_HMBIRD_SCHED
oplus,hmbird {
version_type {
type = "HMBIRD_OGKI";
};
};
//#endif /* CONFIG_HMBIRD_SCHED */
};
&pm8550_gpios {
esim_det_gpio: esim_det_gpio {
pins = "gpio11";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pmih010x_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio10";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550ve_d_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};

View File

@@ -0,0 +1,117 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/sun-mtp-v8-overlay.dts"
#include "sun_overlay_common.dtsi"
#include "oplus_nfc/pagani_nfc.dtsi"
#include "pagani_overlay_common.dtsi"
#include "oplus_misc/oplus-misc-24875.dtsi"
#include "oplus_uff/oplus-uff-24821.dtsi"
#include "tp/pagani-oplus-tp-24821.dtsi"
#include "oplus_chg/oplus-chg-24875.dtsi"
#include "sensor/pagani-sensor-24821-24875.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Sun MTP,pagani";
oplus,project-id = <24875>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2 OPLUS_EVB3 OPLUS_T0 OPLUS_T1 OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio47";
function = "gpio";
};
config {
pins = "gpio47";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};
&soc {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
oplus_rf_cable {
compatible = "oplus,rf_cable";
interrupt-parent = <&tlmm>;
rf_cable_support_num = <1>;
rf,cable0-gpio = <&tlmm 47 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
//#ifdef OPLUS_FEATURE_ESIM
oplus-gpio {
compatible = "oplus,oplus-gpio";
pinctrl-names = "oplus_esim", "sim2_det_no_pull", "sim2_det_pull_high", "sim2_det_pull_low";
pinctrl-0 = <&esim_det_gpio &esim_en_gpio>;
pinctrl-1 = <&sim2_det_no_pull>;
pinctrl-2 = <&sim2_det_pull_high>;
pinctrl-3 = <&sim2_det_pull_low>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pmih010x_gpios 10 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550ve_d_gpios 4 0>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /*OPLUS_FEATURE_ESIM*/
};
&pm8550_gpios {
esim_det_gpio: esim_det_gpio {
pins = "gpio11";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pmih010x_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio10";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550ve_d_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio4";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};

View File

@@ -0,0 +1,74 @@
&pmk8550_gpios {
pinctrl-0 = <&alt_sleep_clk_default>, <&slave_cp_therm_default>;
pinctrl-names = "default";
slave_cp_therm_default: slave_cp_therm_default {
pins = "gpio4";
function = "normal";
bias-high-impedance;
bias-disable;
};
};
&pmk8550_vadc {
pm8550_gpio04_therm {
reg = <PM8550_ADC5_GEN3_AMUX2_GPIO4_100K_PU>;
label = "pm8550_gpio04_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
slave_cp_therm {
reg = <PMK8550_ADC5_GEN3_AMUX_THM5_GPIO4_100K_PU>;
label = "deputy_chg_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
pm8550_gpio04_usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX2_GPIO4_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
slave_cp_ntc {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PMK8550_ADC5_GEN3_AMUX_THM5_GPIO4_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&soc {
//#ifdef OPLUS_FEATURE_THERMAL_HORAE
shell_front {
compatible = "oplus,shell-temp";
};
shell_frame {
compatible = "oplus,shell-temp";
};
shell_back {
compatible = "oplus,shell-temp";
};
//#endif /* OPLUS_FEATURE_THERMAL_HORAE */
};

154
oplus/platform_map.bzl Normal file
View File

@@ -0,0 +1,154 @@
_platform_map = {
"sun": {
"dtb_list": [
# keep sorted
{"name": "sun.dtb"},
{
"name": "sunp.dtb",
"apq": True,
},
{
"name": "sunp-v2.dtb",
"apq": True,
},
{"name": "sun-v2.dtb"},
{"name": "sun-tp.dtb"},
{"name": "sun-tp-v2.dtb"},
{
"name": "sunp-tp.dtb",
"apq": True,
},
{
"name": "sunp-tp-v2.dtb",
"apq": True,
},
],
"dtbo_list": [
# keep sorted
{"name": "dodge-23821-sun-overlay.dtbo"},
{"name": "dodge-23821-sun-overlay-T0.dtbo"},
{"name": "dodge-23893-sun-overlay.dtbo"},
{"name": "dodge-23893-sun-overlay-T0.dtbo"},
{"name": "erhai-24926-sun-overlay.dtbo"},
{"name": "erhai-24926-sun-overlay-DVT.dtbo"},
{"name": "erhai-24976-sun-overlay.dtbo"},
{"name": "erhai-24976-sun-overlay-DVT.dtbo"},
{"name": "erhai-24976-eu-sun-overlay.dtbo"},
{"name": "erhai-24976-eu-sun-overlay-DVT.dtbo"},
{"name": "hummer-24811-sun-overlay.dtbo"},
{"name": "pagani-24821-sun-overlay.dtbo"},
{"name": "pagani-24875-sun-overlay.dtbo"},
],
"binary_compatible_with": ["tuna", "kera"],
},
"tuna": {
"dtb_list": [
{"name": "tuna.dtb"},
{"name": "tuna7.dtb"},
{
"name": "tunap.dtb",
"apq": True,
},
],
"dtbo_list": [
],
},
"kera": {
"dtb_list": [
{"name": "kera.dtb"},
{
"name": "kerap.dtb",
"apq": True,
},
],
"dtbo_list": [
],
},
"sun-tuivm": {
"dtb_list": [
# keep sorted
],
},
"sun-oemvm": {
"dtb_list": [
# keep sorted
],
},
"pineapple": {
"dtb_list": [
],
"dtbo_list": [
],
},
"pineapple-tuivm": {
"dtb_list": [
],
},
"pineapple-oemvm": {
"dtb_list": [
],
},
"monaco": {
"dtb_list": [
],
"dtbo_list": [
],
},
"parrot": {
"dtb_list": [
],
"dtbo_list": [
],
},
"sdxkova": {
"dtb_list": [
],
"dtbo_list": [
],
},
}
def _get_dtb_lists(target, dt_overlay_supported):
ret = {
"dtb_list": [],
"dtbo_list": [],
}
if not target in _platform_map:
print("WRNING: {} not in device tree platform map!".format(target))
return ret
for dtb_node in [target] + _platform_map[target].get("binary_compatible_with", []):
ret["dtb_list"].extend(_platform_map[dtb_node].get("dtb_list", []))
if dt_overlay_supported:
ret["dtbo_list"].extend(_platform_map[dtb_node].get("dtbo_list", []))
else:
# Translate the dtbo list into dtbs we can append to main dtb_list
for dtb in _platform_map[dtb_node].get("dtb_list", []):
dtb_base = dtb["name"].replace(".dtb", "")
for dtbo in _platform_map[dtb_node].get("dtbo_list", []):
if not dtbo.get("apq", True) and dtb.get("apq", False):
continue
dtbo_base = dtbo["name"].replace(".dtbo", "")
ret["dtb_list"].append({"name": "{}-{}.dtb".format(dtb_base, dtbo_base)})
return ret
def get_dtb_list(target, dt_overlay_supported = True):
return [dtb["name"] for dtb in _get_dtb_lists(target, dt_overlay_supported).get("dtb_list", [])]
def get_dtbo_list(target, dt_overlay_supported = True):
return [dtb["name"] for dtb in _get_dtb_lists(target, dt_overlay_supported).get("dtbo_list", [])]

14
oplus/region-id.h.dtsi Normal file
View File

@@ -0,0 +1,14 @@
/* SPDX-License-Identifier: GPL-2.0 */
/* define oplus region id*/
#ifndef _OPLUS_REGION_ID_H
#define _OPLUS_REGION_ID_H
#define REGION_UNKNOWN 0
#define REGION_CN 1
#define REGION_IN 2
#define REGION_EU 3
#define REGION_US 4
#define REGION_APAC 5
#define REGION_JP 6
#endif

View File

@@ -0,0 +1,79 @@
/**********************************************************************************
* Copyright (c) 2022-2024 Guangdong oplus Mobile Comm Corp., Ltd
* Description: oplus sensor dtsi
*
* Version: 1.0
* Date: 2022-07-04
*
* ------------------------------ Revision History: --------------------------------
* <version> <date> <author> <desc>
***********************************************************************************/
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
&soc {
//#ifdef OPLUS_FEATURE_SENSOR_SMEM
sensor_fb: sensor_fb {
compatible = "oplus,sensor-feedback";
master-id = <3>;
smem-id = <608>;
};
ssc_interactive {
sup-power-fb;
report_blank_mode = <1>;
receive_screenshot_info = <1>;
};
oplus_sensor {
compatible = "oplus,sensor-devinfo";
/*virtual sensor*/
mag_fusion {
sensor-type = <6>;//OPLUS_MAG_FUSION
is-virtual-sensor;
fusion-type = <0>;//AKM_FUSION
fold-feature = <0>;
};
};
consumer_ir_core {
compatible = "oplus,kookong_ir_core";
status = "okay";
vdd-type = <0>; /*0: internal LDO , 1: external LOD*/
vdd-supply = <&pm_humu_l9>;
vdd-min-vol = <3056000>;
vdd-max-vol = <3056000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
//add for oplus consumerIr SPI mode
&qupv3_se12_spi{
status = "ok";
consumerIr@0 {
compatible = "oplus,kookong_ir_spi";
reg = <0>;
status = "ok";
spi-max-frequency = <5000000>; /*4800000,9600000,15000000,19200000*/
ir-spi-mode = <0>;
};
};
&apps_rsc_drv2 {
rpmh-regulator-ldob9 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob9";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L9B: pm_humu_l9: regulator-pm-humu-l9 {
regulator-name = "pm_humu_l9";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2960000>;
regulator-max-microvolt = <3104000>;
qcom,init-voltage = <3104000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,131 @@
/**********************************************************************************
* Copyright (c) 2022-2024 Guangdong oplus Mobile Comm Corp., Ltd
* Description: oplus sensor dtsi
*
* Version: 1.0
* Date: 2022-07-04
*
* ------------------------------ Revision History: --------------------------------
* <version> <date> <author> <desc>
***********************************************************************************/
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
/* overlay default config and enable ir spi config */
&qupv3_se5_i2c {
status = "disabled";
};
&qupv3_se5_spi{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se5_spi_mosi_active>;
pinctrl-1 = <&qupv3_se5_spi_sleep>;
};
&soc {
//#ifdef OPLUS_FEATURE_SENSOR_SMEM
sensor_fb: sensor_fb {
compatible = "oplus,sensor-feedback";
master-id = <3>;
smem-id = <608>;
};
ssc_interactive {
sup-power-fb;
sup-hbm-mode = <1>;
need_lb_algo = <1>;
receive_screenshot_info = <1>;
report_blank_mode = <1>;
primary_lb_brl_info {
brl_thrd_num = <1>;
brl_thrd = <1>;
brl_l2h_thrd = <1>;
};
};
oplus_sensor {
compatible = "oplus,sensor-devinfo";
/*virtual sensor*/
mag_fusion {
sensor-type = <6>;//OPLUS_MAG_FUSION
is-virtual-sensor;
fusion-type = <0>;//AKM_FUSION
fold-feature = <0>;
};
};
consumer_ir_core {
compatible = "oplus,kookong_ir_core";
status = "okay";
vdd-type = <0>; /*0: internal LDO , 1: external LOD*/
vdd-supply = <&pm_humu_l9>;
vdd-min-vol = <3056000>;
vdd-max-vol = <3056000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
&tlmm {
qupv3_se5_spi_pins: qupv3_se5_spi_pins {
qupv3_se5_spi_mosi_active: qupv3_se5_spi_mosi_active {
mux {
pins = "gpio53";
function = "qup1_se5_l1";
};
config {
pins = "gpio53";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se5_spi_sleep: qupv3_se5_spi_sleep {
mux {
pins = "gpio53";
function = "gpio";
};
config {
pins = "gpio53";
drive-strength = <2>;
bias-disable;
};
};
};
};
//add for oplus consumerIr SPI mode
&qupv3_se5_spi{
status = "ok";
consumerIr@0 {
compatible = "oplus,kookong_ir_spi";
reg = <0>;
status = "ok";
spi-max-frequency = <5000000>; /*4800000,9600000,15000000,19200000*/
ir-spi-mode = <0>;
};
};
&apps_rsc_drv2 {
rpmh-regulator-ldob9 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob9";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L9B: pm_humu_l9: regulator-pm-humu-l9 {
regulator-name = "pm_humu_l9";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2960000>;
regulator-max-microvolt = <3104000>;
qcom,init-voltage = <3104000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,65 @@
/**********************************************************************************
* Copyright (c) 2022-2024 Guangdong oplus Mobile Comm Corp., Ltd
* Description: oplus sensor dtsi
*
* Version: 1.0
* Date: 2022-07-04
*
* ------------------------------ Revision History: --------------------------------
* <version> <date> <author> <desc>
***********************************************************************************/
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
&soc {
//#ifdef OPLUS_FEATURE_SENSOR_SMEM
sensor_fb: sensor_fb {
compatible = "oplus,sensor-feedback";
master-id = <3>;
smem-id = <608>;
};
ssc_interactive {
sup-power-fb;
sup-hbm-mode = <1>;
need_lb_algo = <1>;
receive_screenshot_info = <1>;
report_blank_mode = <1>;
primary_lb_brl_info {
brl_thrd_num = <1>;
brl_thrd = <1>;
brl_l2h_thrd = <1>;
};
};
oplus_sensor {
compatible = "oplus,sensor-devinfo";
/*virtual sensor*/
mag_fusion {
sensor-type = <6>;//OPLUS_MAG_FUSION
is-virtual-sensor;
fusion-type = <0>;//OPLUS_FUSION
fold-feature = <0>;
drop_zero = <1>;
};
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
&apps_rsc_drv2 {
rpmh-regulator-ldob9 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob9";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L9B: pm_humu_l9: regulator-pm-humu-l9 {
regulator-name = "pm_humu_l9";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,132 @@
/**********************************************************************************
* Copyright (c) 2022-2024 Guangdong oplus Mobile Comm Corp., Ltd
* Description: oplus sensor dtsi
*
* Version: 1.0
* Date: 2022-07-04
*
* ------------------------------ Revision History: --------------------------------
* <version> <date> <author> <desc>
***********************************************************************************/
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
/* overlay default config and enable ir spi config */
&qupv3_se5_i2c {
status = "disabled";
};
&qupv3_se5_spi{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se5_spi_mosi_active>;
pinctrl-1 = <&qupv3_se5_spi_sleep>;
};
&soc {
//#ifdef OPLUS_FEATURE_SENSOR_SMEM
sensor_fb: sensor_fb {
compatible = "oplus,sensor-feedback";
master-id = <3>;
smem-id = <608>;
};
ssc_interactive {
sup-power-fb;
sup-hbm-mode = <1>;
need_lb_algo = <1>;
receive_screenshot_info = <1>;
report_blank_mode = <1>;
primary_lb_brl_info {
brl_thrd_num = <1>;
brl_thrd = <1>;
brl_l2h_thrd = <1>;
};
};
oplus_sensor {
compatible = "oplus,sensor-devinfo";
/*virtual sensor*/
mag_fusion {
sensor-type = <6>;//OPLUS_MAG_FUSION
is-virtual-sensor;
fusion-type = <0>;//OPLUS_FUSION
fold-feature = <0>;
drop_zero = <1>;
};
};
consumer_ir_core {
compatible = "oplus,kookong_ir_core";
status = "okay";
vdd-type = <0>; /*0: internal LDO , 1: external LOD*/
vdd-supply = <&pm_humu_l9>;
vdd-min-vol = <3056000>;
vdd-max-vol = <3056000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
&tlmm {
qupv3_se5_spi_pins: qupv3_se5_spi_pins {
qupv3_se5_spi_mosi_active: qupv3_se5_spi_mosi_active {
mux {
pins = "gpio53";
function = "qup1_se5_l1";
};
config {
pins = "gpio53";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se5_spi_sleep: qupv3_se5_spi_sleep {
mux {
pins = "gpio53";
function = "gpio";
};
config {
pins = "gpio53";
drive-strength = <2>;
bias-disable;
};
};
};
};
//add for oplus consumerIr SPI mode
&qupv3_se5_spi{
status = "ok";
consumerIr@0 {
compatible = "oplus,kookong_ir_spi";
reg = <0>;
status = "ok";
spi-max-frequency = <5000000>; /*4800000,9600000,15000000,19200000*/
ir-spi-mode = <0>;
};
};
&apps_rsc_drv2 {
rpmh-regulator-ldob9 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob9";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L9B: pm_humu_l9: regulator-pm-humu-l9 {
regulator-name = "pm_humu_l9";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2960000>;
regulator-max-microvolt = <3104000>;
qcom,init-voltage = <3104000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,132 @@
/**********************************************************************************
* Copyright (c) 2022-2024 Guangdong oplus Mobile Comm Corp., Ltd
* Description: oplus sensor dtsi
*
* Version: 1.0
* Date: 2022-07-04
*
* ------------------------------ Revision History: --------------------------------
* <version> <date> <author> <desc>
***********************************************************************************/
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
/* overlay default config and enable ir spi config */
&qupv3_se5_i2c {
status = "disabled";
};
&qupv3_se5_spi{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se5_spi_mosi_active>;
pinctrl-1 = <&qupv3_se5_spi_sleep>;
};
&soc {
//#ifdef OPLUS_FEATURE_SENSOR_SMEM
sensor_fb: sensor_fb {
compatible = "oplus,sensor-feedback";
master-id = <3>;
smem-id = <608>;
};
ssc_interactive {
sup-power-fb;
sup-hbm-mode = <1>;
need_lb_algo = <1>;
receive_screenshot_info = <1>;
report_blank_mode = <1>;
primary_lb_brl_info {
brl_thrd_num = <1>;
brl_thrd = <1>;
brl_l2h_thrd = <1>;
};
};
oplus_sensor {
compatible = "oplus,sensor-devinfo";
/*virtual sensor*/
mag_fusion {
sensor-type = <6>;//OPLUS_MAG_FUSION
is-virtual-sensor;
fusion-type = <0>;//OPLUS_FUSION
fold-feature = <0>;
drop_zero = <1>;
};
};
consumer_ir_core {
compatible = "oplus,kookong_ir_core";
status = "okay";
vdd-type = <0>; /*0: internal LDO , 1: external LOD*/
vdd-supply = <&pm_humu_l9>;
vdd-min-vol = <3056000>;
vdd-max-vol = <3056000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
&tlmm {
qupv3_se5_spi_pins: qupv3_se5_spi_pins {
qupv3_se5_spi_mosi_active: qupv3_se5_spi_mosi_active {
mux {
pins = "gpio53";
function = "qup1_se5_l1";
};
config {
pins = "gpio53";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se5_spi_sleep: qupv3_se5_spi_sleep {
mux {
pins = "gpio53";
function = "gpio";
};
config {
pins = "gpio53";
drive-strength = <2>;
bias-disable;
};
};
};
};
//add for oplus consumerIr SPI mode
&qupv3_se5_spi{
status = "ok";
consumerIr@0 {
compatible = "oplus,kookong_ir_spi";
reg = <0>;
status = "ok";
spi-max-frequency = <5000000>; /*4800000,9600000,15000000,19200000*/
ir-spi-mode = <0>;
};
};
&apps_rsc_drv2 {
rpmh-regulator-ldob9 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob9";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L9B: pm_humu_l9: regulator-pm-humu-l9 {
regulator-name = "pm_humu_l9";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2960000>;
regulator-max-microvolt = <3104000>;
qcom,init-voltage = <3104000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,74 @@
&soc {
bootloader_log {
compatible = "bootloader_log";
linux,contiguous-region = <&bootloader_log_mem>;
};
//#ifdef OPLUS_FEATURE_SECURITY_COMMON
/* 2024/04/09 add for oplus secure */
oplus_secure_common {
compatible = "oplus,secure_common";
};
//#endif /*OPLUS_FEATURE_SECURITY_COMMON*/
oplus-pmic-monitor-log {
compatible = "oplus,pmic-monitor-log";
nvmem = <&pmk8550_sdam_5>, <&pmk8550_sdam_6>;
nvmem-names = "pon_log0", "pon_log1";
};
oplus-ocp-state-log {
compatible = "oplus,pmic-ocp-log";
nvmem-cells = <&ocp_log>;
nvmem-cell-names = "ocp_log";
};
dump_device_info {
compatible = "dump_device_info";
linux,contiguous-region = <&dump_device_info_mem>;
};
oplus_kernel_state_monitor {
compatible = "oplus,kernel_state_monitor";
};
};
&reserved_memory {
/*
This size is from Core/Uefi/LAA/memmap.dtsi
reg = <0x0 0x81CE4000 0x0 0x00010000>;
MemLabel = "UEFI_Log";
so we reserve this for bootloader log
*/
bootloader_log_mem: botloader_mem@0x81CE4000 {
reg = <0 0x81CE4000 0 0x00010000>;
label = "bootloader_log_mem";
};
dump_device_info_mem: device_info_mem@0xA4F00000 {
reg = <0 0xA4F00000 0 0x00008000>;
label = "dump_device_info_mem";
};
};
&pmk8550 {
//#ifdef CONFIG_OPLUS_FEATURE_QCOM_PMICWD
//pmicwd depend on pon_pbs@800
pon_pbs@800 {
compatible = "qcom,qpnp-power-on";
reg = <0x800>;
qcom,system-reset;
qcom,store-hard-reset-reason;
};
pon_pmicwd@800 {
compatible = "oplus,pmicwd_qpnp-power-on";
qcom,pmicwd;
};
oplus_ocp_dev: oplus-ocp-dev@8200 {
compatible = "oplus,pmic-ocp-device";
reg = <0x8200>;
oplus-ocp-device;
};
//#endif /* CONFIG_OPLUS_FEATURE_QCOM_PMICWD */
};

View File

@@ -0,0 +1,504 @@
&qupv3_se4_spi{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se4_spi_mosi_active>, <&qupv3_se4_spi_miso_active>,
<&qupv3_se4_spi_clk_active>, <&qupv3_se4_spi_cs_active>;
pinctrl-1 = <&qupv3_se4_spi_sleep>, <&qupv3_se4_spi_cs_sleep>;
};
&qupv3_se4_spi {
status = "ok";
goodix-berlin@0 {
status = "disabled";
};
synaptics_tcm@0{
status = "disabled";
compatible = "synaptics-s3910";
reg = <0x0>;
chip-name = "S3910";
spi-max-frequency = <19000000>;
/* Interrupt && Irq-gpio */
interrupt-parent = <&tlmm>;
interrupts = <162 0x2008>;
/* Power Config */
enable2v8_gpio = <&pm8550vs_j_gpios 3 0x1>;
//enable1v8_gpio = <&tlmm 97 0x1>;
//vdd_2v8-supply = <&L14B>;
vcc_1v8-supply = <&L4B>;
//vdd_2v8_volt = <3008000>;
/* Other HW Resource */
irq-gpio = <&tlmm 162 0x2008>;
reset-gpio = <&tlmm 161 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <17 38>;
earsense,tx-rx-num = <17 18>;
touchpanel,panel-coords = <14400 31680>;
touchpanel,display-coords = <1440 3168>;
touchpanel,touchmajor-limit = <256 256>;
touchpanel,int-mode = <1>; /*0: interrupt and disable, 1:interrupt and not disable*/
touchpanel,curved-size = <45>;
prevention,curved_screen_V2;
prevention,grip_disable_level = <6>;
prevention,updelay_time_ms = <30>;
prevention,makeup_cnt_weight = <4 1 2 2 2>;
prevention,large_corner_range = <2564 6217>;
prevention,large_corner_judge_condition = <500 300 2194 7 7>;
prevention,trx_reject_condition = <8 7 7>;
prevention,trx_strict_reject_condition = <8 6 6>;
prevention,large_judge_time_ms = <500 50 30>;
prevention,large_exit_condition = <8 8 2>;
prevention,single_channel_width = <320 320>;
prevention,normal_tap_condition = <10 350>;
prevention,long_edge_condition = <179 90 120 80>;
prevention,long_strict_edge_condition = <160 60>;
prevention,long_fingerhold_condition = <70 6 4 4>;
prevention,short_edge_condition = <179 90 120 80>;
prevention,short_strict_edge_condition = <160 60>;
prevention,large_strict_exit_condition = <6 6>;
prevention,top_corner_config = <464 1371 1000>;
prevention,edge_swipe_config = <340 1130>;
prevention,curved_screen_V4;
prevention,long_eliminate_point_type = <2 23040 16896 445 50688 300 1>;
prevention,long_fingerhold_condition2 = <1300 3657 0 0>;
prevention,top_corner_config2 = <3 80 600 1500 0>;
prevention,hor_long_top_corner_config = <557 3657 0 0>;
prevention,top_middle_config = <23040 1858 1858 0>;
prevention,corner_eliminate_point_type = <0 3400 4150 1>;
prevention,finger_hold_differ_size = <1 0 400 300>;
prevention,finger_hold_max_rx_exit_distance = <5 650 4205>;
prevention,max_rx_exit_distance = <1 5 150 650 3657>;
prevention,dynamic_finger_hold_exit_distance = <1 650 4205 836>;
prevention,edge_sliding_matched_support = <1 150 3 0>;
//grip v4.2 reclining mode
prevention,reclining_mode_support = <1>;
prevention,long_eliminate_point_type_recli = <2 23040 16896 160 50688 500 1>;
prevention,finger_hold_differ_size_recli = <1 0 180 400>;
prevention,finger_hold_max_rx_exit_distance_recli = <4 160 1000>;
prevention,max_rx_exit_distance_recli = <1 4 100 160 800>;
prevention,dynamic_finger_hold_exit_distance_recli = <1 160 1000 320>;
prevention,edge_sliding_matched_support_recli = <1 200 3 0>;
touchpanel,smooth-level = <0 1 2 4 7 9>;
touchpanel,smooth-level-charging = <0 2 4 7 8 9>;
touchpanel,sensitive-level = <0 70 55 40 25 10>;
touchpanel,single-optimized-time = <8>;
touchpanel,high-frame-rate-time = <60>;
end_stretch_value = <480 250 16 16>;
//touchpanel,tp_ic_type = <2>;
panel_type = <3 3 3 3>;
// type of tp_dev ,TP-SAMSUNG = 8;
platform_support_project = <23821 23893 23894 23895>;
platform_support_project_dir = <23821 23821 23821 23821>;
platform_support_project_commandline = "default_commandline", "default_commandline", "default_commandline", "default_commandline";
/* SW Support Feature Control */
black_gesture_support;
//fw_edge_limit_support;
pressure_report_support;
charger_pump_support;
game_switch_support;
smart_gesture_support;
fw_update_app_support;
fingerprint_underscreen_support;
freq_hop_simulate_support;
report_flow_unlock_support;
screenoff_fingerprint_info_support;
irq_need_dev_resume_ok;
//firmware_in_dts;
//enable_point_auto_change;
kernel_grip_support;
//grip_no_driver_support;
health_monitor_support;
black_gesture_indep_support;
exception_upload_support;
sportify_aod_gesture_support;
glove_mode_support;
fingerprint_not_report_in_suspend;
snr_read_support;
//temperature_detect_support;
palm_to_sleep_support;
tp_data_record_support;
skip_reinit_device_support;
/*
*Virtual Key Config:
*1:touchpanel,button-type: <virtualkey_type supportted_button-map>
*virtualkey_type:
*Type 1: using board_properties
*Type 2: using same IC (button zone&& touch zone are seprate)
*Type 3: using diffrent IC (button zone&& touch zone are seprate)
*Type 4: No need of virtual key process
*supportted_button-map:select|menu|home|back
*
*2:touchpanel,button-map
*type (X1,Y1)(X2,Y2)(X3,Y3)(Width_X,Hight_Y)--Only when button-type is 0
*/
touchpanel,button-type = <4>;
touchpanel.button-TRx = <0 0>;
S3910 {
switch_report_rate;
report_rate_default = <60>;
report_rate_game_value = <3>;
fps_report_rate = <60 2 90 3 120 3>;//1:360Hz 2:125Hz 3:240Hz
default_gesture_mask = <8191>;
fwupdate_bootloader = <1>;
normal_config_version = <2>;
};
};
synaptics_tcm_hbp@0{
status = "okay";
compatible = "synaptics,tcm-spi-hbp";
reg = <0x0>;
chip-name = "S3910";
spi-max-frequency = <19000000>;
qcom,rt;
/* Interrupt && Irq-gpio */
interrupt-parent = <&tlmm>;
interrupts = <162 0x2008>;
/* Power Config */
synaptics,avdd-gpio = <&pm8550vs_j_gpios 3 0x1>;
vdd-supply = <&L4B>;
synaptics,vdd-name = "vdd";
/* Other HW Resource */
synaptics,irq-gpio = <&tlmm 162 0x2008>;
synaptics,reset-gpio = <&tlmm 161 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active &ts_avdd_active>;
touchpanel,panel-coords = <23040 50688>;
touchpanel,tx-rx-num = <17 38>;
//touchpanel,tp_ic_type = <2>;
panel_type = <10 3 3 3>;
// type of tp_dev ,TP-SAMSUNG = 8;
firmware_name = "AA545";
platform_support_project = <23821 23893 23894 23895>;
platform_support_project_dir = <23821 23821 23821 23821>;
platform_support_project_commandline = "mdss_dsi_panel_AA569_P_3_A0019_dsc_cmd_2nd",
"mdss_dsi_panel_AA545_P_3_A0005_dsc_cmd",
"mdss_dsi_panel_BF262_P_3_A0021_dsc_cmd",
"mdss_dsi_panel_AA569_P_3_A0019_dsc_cmd";
synaptics,power-on-state = <1>;
synaptics,power-delay-ms = <200>;
synaptics,irq-on-state = <0>;
synaptics,reset-on-state = <0>;
synaptics,reset-active-ms = <10>;
synaptics,reset-delay-ms = <80>;
synaptics,spi-mode = <0>;
synaptics,spi-byte-delay-us = <0>;
synaptics,spi-block-delay-us = <0>;
/* SW Support Feature Control */
tp_data_record_support;
stats_upload_support;
S3910_PANEL7 {
touchpanel,tx-rx-num = <18 40>;
};
};
};
&pm8550vs_j_gpios {
ts_avdd_active: ts_avdd_active {
pins = "gpio3";
function = "normal";
input-disable;
output-enable;
output-low;
power-source = <1>;
};
};
&tlmm {
gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <8 11 15 20 23 56 57 59 63 65 66 77 81 84 153 155 171 172 177 188 195>;
};
pmx_ts_int_active {
ts_int_active: ts_int_active {
mux {
pins = "gpio162";
function = "gpio";
};
config {
pins = "gpio162";
drive-strength = <8>;
bias-disable;
input-enable;
};
};
};
pmx_ts_reset_active {
ts_reset_active: ts_reset_active {
mux {
pins = "gpio161";
function = "gpio";
};
config {
pins = "gpio161";
drive-strength = <8>;
output-low;
bias-disable;
};
};
};
qupv3_se4_spi_pins: qupv3_se4_spi_pins {
qupv3_se4_spi_miso_active: qupv3_se4_spi_miso_active {
mux {
pins = "gpio48";
function = "qup1_se4_l0";
};
config {
pins = "gpio48";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_mosi_active: qupv3_se4_spi_mosi_active {
mux {
pins = "gpio49";
function = "qup1_se4_l1";
};
config {
pins = "gpio49";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_clk_active: qupv3_se4_spi_clk_active {
mux {
pins = "gpio50";
function = "qup1_se4_l2";
};
config {
pins = "gpio50";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_active: qupv3_se4_spi_cs_active {
mux {
pins = "gpio51";
function = "qup1_se4_l3";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
output-high;
};
};
};
};
&qupv3_hub_i2c9 {
status = "ok";
qcom,clk-freq-out = <400000>;
ist8801@19 {
status = "disabled";
};
ist8801@18 {
status = "disabled";
};
magnachip@0D {
status = "disabled";
};
magnachip@0C {
status = "disabled";
};
magnachip@10 {
compatible = "oplus,dhall-ak09970";
reg = <0x10>;
vcc_1v8-supply = <&L1B>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <97 0x02>;
threeaxis_hall_support;
new_posupdate_support;
health_monitor_support;
exception_upload_support;
dhall,irq-gpio = <&tlmm 97 0x2008>;
pinctrl-names = "hall_interrupt_input";
pinctrl-0 = <&hall_interrupt_input>;
interf_stable_limit = <700 700 700>;
interf_judege_limit = <4000 2000>;
interf_up_tolen = <3700 3700 3000 3000>;
interf_mid_tolen = <3000 3000 3000 3000>;
interf_down_tolen = <3000 3000 3700 3700>;
position_judge_tolen = <4000 5000>;
default_position_xtolen = <4000 5000>;
};
magneticcover@11 {
status = "ok";
compatible = "oplus,magcvr_mxm1120";
reg = <0x0f>;
vcc_1v8-supply = <&L1B>;
vdd_3v0-supply = <&L2B>;
interrupt-parent = <&tlmm>;
interrups = <65 0x02>;
mag_irq_gpio = <&tlmm 65 0x2002>;
pinctrl-names = "default";
pinctrl-0 = <&mag_cover_interrupt_input>;
// para config
magcvr_detect_step = <50>;
magcvr_farmax_th = <50>;
magcvr_far_threshold = <150>;
magcvr_far_noise_threshold = <125>;
};
};
&tlmm {
pmx_mag_cover_interrupt_input {
mag_cover_interrupt_input: mag_cover_interrupt_input {
mux {
pins = "gpio65";
function = "gpio";
};
config {
pins = "gpio65";
drive-strength = <2>;
bias-pull-up;
};
};
};
pmx_hall_interrupt_input {
hall_interrupt_input: hall_interrupt_input {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
drive-strength = <2>;
bias-pull-up;
};
};
};
};
&soc {
devinfo_dodge {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio173_sleep>;
pinctrl-2 = <&aboard_pin_gpio173_active>;
pinctrl-3 = <&aboard_pin_gpio173_idle>;
main-sub {
compatible = "hw-match, main-sub";
use_tristate_gpio;
aboard-gpio0 = <&tlmm 173 0>;
aboard-patterns = <0 0 1 1 1>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
/*main board*/
match-projects = <23821 23893 23893 23894 23895>;
};
};
};
&tlmm {
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio173_sleep:aboard_pin_gpio173_sleep {
mux {
pins = "gpio173";
function = "gpio";
};
config {
pins = "gpio173";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio173_active:aboard_pin_gpio173_active {
mux {
pins = "gpio173";
function = "gpio";
};
config {
pins = "gpio173";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio173_idle:aboard_pin_gpio173_idle {
mux {
pins = "gpio173";
function = "gpio";
};
config {
pins = "gpio173";
bias-disable;
input-enable;
};
};
};

View File

@@ -0,0 +1,222 @@
&qupv3_se4_spi{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se4_spi_mosi_active>, <&qupv3_se4_spi_miso_active>,
<&qupv3_se4_spi_clk_active>, <&qupv3_se4_spi_cs_active>;
pinctrl-1 = <&qupv3_se4_spi_sleep>, <&qupv3_se4_spi_cs_sleep>;
};
&qupv3_se4_spi {
status = "ok";
goodix-berlin@0 {
status = "disabled";
};
nt36536@0 {
status = "ok";
compatible = "novatek,nf_nt36536";
reg = <0x0>;
chip-name = "NT36536";
spi-max-frequency = <12000000>; //4800000,9600000,15000000,19200000
/* Interrupt && Irq-gpio */
interrupt-parent = <&tlmm>;
interrupts = <162 0x2002>;
/* Other HW Resource */
irq-gpio = <&tlmm 162 0x2002>;
/* reset-gpio = <&tlmm 98 0x00>; */
cs-gpio = <&tlmm 51 0x00>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active>;
touchpanel,irq_need_dev_resume_time = <500>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <60 40>;
touchpanel,panel-coords = <24000 33920>;
touchpanel,display-coords = <2400 3392>;
touchpanel,touchmajor-limit = <0 60>;
touchpanel,pen-tx-rx-num = <12 8>;
touchpanel,doze-tx-num = <12>;
touchpanel,pen-panel-coords = <24000 33920>;
touchpanel,pen-max-pressure = <16384>;
touchpanel,pen-max-tilt = <60 60>;
touchpanel,msecs-to-jiffies-time = <100>;
touchpanel,smooth-level = <255 32 64 96 128 254>;
touchpanel,sensitive-level = <255 20 15 10 6 3>;
touchpanel,sensitive-level-charging = <255 30 20 15 9 6>;
panel_type = <15>;
// type of tp_dev ,TP-HUAXING = 15;
firmware_name = "0x2XN242CN00";
platform_support_project = <24924 24974 24926 24976>;
platform_support_project_dir = <24924 24924 24924 24924>;
platform_support_project_commandline = "default_commandline";
incell_screen;
//iovcc_shutdown_support;
fw_edge_limit_support;
black_gesture_support;
charger_pump_support;
esd_handle_support;
black_gesture_test_support;
game_switch_support;
noflash_support;
lcd_trigger_load_tp_fw_support;
smart_gesture_support;
pressure_report_support;
touchz_to_pressure_support;
pen_support;
waterproof_support;
irq_need_dev_resume_ok;
fw_update_app_support;
health_monitor_support;
fw_update_in_probe_with_headfile;
black_gesture_indep_support;
report_rate_limit;
/*
*Virtual Key Config:
*1:touchpanel,button-type: <virtualkey_type supportted_button-map>
*virtualkey_type:
*Type 1: using board_properties
*Type 2: using same IC (button zone&& touch zone are seprate)
*Type 3: using diffrent IC (button zone&& touch zone are seprate)
*Type 4: No need of virtual key process
*supportted_button-map:select|menu|home|back
*
*2:touchpanel,button-map
*type (X1,Y1)(X2,Y2)(X3,Y3)(Width_X,Hight_Y)--Only when button-type is 0
*/
touchpanel,button-type = <4>;
touchpanel.button-TRx = <0 0>;
};
};
#include "erhai-oplus-tp_firmware_nt36536.dtsi"
&tlmm {
gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <8 11 15 20 23 56 57 59 63 65 66 77 81 84 153 155 171 172 177 188 195>;
};
pmx_ts_int_active {
ts_int_active: ts_int_active {
mux {
pins = "gpio162";
function = "gpio";
};
config {
pins = "gpio162";
drive-strength = <8>;
bias-disable;
input-enable;
};
};
};
/*
pmx_ts_reset_active {
ts_reset_active: ts_reset_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
drive-strength = <8>;
output-low;
bias-disable;
};
};
};
*/
qupv3_se4_spi_pins: qupv3_se4_spi_pins {
qupv3_se4_spi_miso_active: qupv3_se4_spi_miso_active {
mux {
pins = "gpio48";
function = "qup1_se4_l0";
};
config {
pins = "gpio48";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_mosi_active: qupv3_se4_spi_mosi_active {
mux {
pins = "gpio49";
function = "qup1_se4_l1";
};
config {
pins = "gpio49";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_clk_active: qupv3_se4_spi_clk_active {
mux {
pins = "gpio50";
function = "qup1_se4_l2";
};
config {
pins = "gpio50";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_active: qupv3_se4_spi_cs_active {
mux {
pins = "gpio51";
function = "qup1_se4_l3";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
output-high;
};
};
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,482 @@
&qupv3_se4_spi{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se4_spi_mosi_active>, <&qupv3_se4_spi_miso_active>,
<&qupv3_se4_spi_clk_active>, <&qupv3_se4_spi_cs_active>;
pinctrl-1 = <&qupv3_se4_spi_sleep>, <&qupv3_se4_spi_cs_sleep>;
};
&qupv3_se4_spi {
status = "ok";
goodix-berlin@0 {
status = "disabled";
};
synaptics_tcm@0{
compatible = "synaptics-s3910";
reg = <0x0>;
chip-name = "S3910";
status = "disabled";
spi-max-frequency = <19000000>;
/* Interrupt && Irq-gpio */
interrupt-parent = <&tlmm>;
interrupts = <162 0x2008>;
/* Power Config */
//enable2v8_gpio = <&pm8550vs_j_gpios 3 0x1>;
//enable1v8_gpio = <&tlmm 97 0x1>;
vdd_2v8-supply = <&L16B>;
vcc_1v8-supply = <&L4B>;
vdd_2v8_volt = <3008000>;
/* Other HW Resource */
irq-gpio = <&tlmm 162 0x2008>;
reset-gpio = <&tlmm 161 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,panel-coords = <20224 44480>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <17 38>;
earsense,tx-rx-num = <17 18>;
touchpanel,display-coords = <1264 2780>;
touchpanel,touchmajor-limit = <256 256>;
touchpanel,int-mode = <1>; /*0: interrupt and disable, 1:interrupt and not disable*/
touchpanel,curved-size = <45>;
prevention,curved_screen_V2;
prevention,grip_disable_level = <6>;
prevention,updelay_time_ms = <30>;
prevention,makeup_cnt_weight = <4 1 2 2 2>;
prevention,large_corner_range = <2564 6217>;
prevention,large_corner_judge_condition = <500 300 2194 7 7>;
prevention,trx_reject_condition = <8 7 7>;
prevention,trx_strict_reject_condition = <8 6 6>;
prevention,large_judge_time_ms = <500 50 30>;
prevention,large_exit_condition = <8 8 2>;
prevention,single_channel_width = <320 320>;
prevention,normal_tap_condition = <10 350>;
prevention,long_edge_condition = <179 90 120 80>;
prevention,long_strict_edge_condition = <160 60>;
prevention,long_fingerhold_condition = <70 6 4 4>;
prevention,short_edge_condition = <179 90 120 80>;
prevention,short_strict_edge_condition = <160 60>;
prevention,large_strict_exit_condition = <6 6>;
prevention,top_corner_config = <464 1371 1000>;
prevention,edge_swipe_config = <340 1130>;
prevention,curved_screen_V4;
prevention,long_eliminate_point_type = <2 23040 16896 445 50688 300 1>;
prevention,long_fingerhold_condition2 = <1300 3657 0 0>;
prevention,top_corner_config2 = <3 80 600 1500 0>;
prevention,hor_long_top_corner_config = <557 3657 0 0>;
prevention,top_middle_config = <23040 1858 1858 0>;
prevention,corner_eliminate_point_type = <0 3400 4150 1>;
prevention,finger_hold_differ_size = <1 0 400 300>;
prevention,finger_hold_max_rx_exit_distance = <5 650 4205>;
prevention,max_rx_exit_distance = <1 5 150 650 3657>;
prevention,dynamic_finger_hold_exit_distance = <1 650 4205 836>;
prevention,edge_sliding_matched_support = <1 150 3 0>;
//grip v4.2 reclining mode
prevention,reclining_mode_support = <1>;
prevention,long_eliminate_point_type_recli = <2 23040 16896 160 50688 500 1>;
prevention,finger_hold_differ_size_recli = <1 0 180 400>;
prevention,finger_hold_max_rx_exit_distance_recli = <4 160 1000>;
prevention,max_rx_exit_distance_recli = <1 4 100 160 800>;
prevention,dynamic_finger_hold_exit_distance_recli = <1 160 1000 320>;
prevention,edge_sliding_matched_support_recli = <1 200 3 0>;
touchpanel,smooth-level = <0 1 2 4 7 9>;
touchpanel,smooth-level-charging = <0 2 4 7 8 9>;
touchpanel,sensitive-level = <0 70 55 40 25 10>;
touchpanel,single-optimized-time = <8>;
touchpanel,high-frame-rate-time = <60>;
touchpanel,tp_ic_type = <2>;
panel_type = <3>;
// type of tp_dev ,TP-SAMSUNG = 8;
firmware_name = "AA590";
platform_support_project = <24811 24811>;
platform_support_project_dir = <24811 24811>;
platform_support_project_commandline = "default_commandline";
/* SW Support Feature Control */
black_gesture_support;
//fw_edge_limit_support;
pressure_report_support;
charger_pump_support;
game_switch_support;
smart_gesture_support;
fw_update_app_support;
fingerprint_underscreen_support;
freq_hop_simulate_support;
report_flow_unlock_support;
screenoff_fingerprint_info_support;
irq_need_dev_resume_ok;
//firmware_in_dts;
enable_point_auto_change;
report_rate_white_list_support;
kernel_grip_support;
//grip_no_driver_support;
health_monitor_support;
black_gesture_indep_support;
algorithm_support;
spi_port_support;
exception_upload_support;
sportify_aod_gesture_support;
glove_mode_support;
/*
*Virtual Key Config:
*1:touchpanel,button-type: <virtualkey_type supportted_button-map>
*virtualkey_type:
*Type 1: using board_properties
*Type 2: using same IC (button zone&& touch zone are seprate)
*Type 3: using diffrent IC (button zone&& touch zone are seprate)
*Type 4: No need of virtual key process
*supportted_button-map:select|menu|home|back
*
*2:touchpanel,button-map
*type (X1,Y1)(X2,Y2)(X3,Y3)(Width_X,Hight_Y)--Only when button-type is 0
*/
touchpanel,button-type = <4>;
touchpanel.button-TRx = <0 0>;
S3910 {
switch_report_rate;
report_rate_default = <60>;
report_rate_game_value = <3>;
fps_report_rate = <60 2 90 3 120 3>;//1:360Hz 2:125Hz 3:240Hz
default_gesture_mask = <8191>;
fwupdate_bootloader = <1>;
normal_config_version = <2>;
};
};
synaptics_tcm_hbp@0{
compatible = "synaptics,tcm-spi-hbp";
reg = <0x0>;
chip-name = "S3910";
status = "okay";
spi-max-frequency = <19000000>;
qcom,rt;
/* Interrupt && Irq-gpio */
interrupt-parent = <&tlmm>;
interrupts = <162 0x2008>;
/* Power Config */
//synaptics,avdd-gpio = <&pm8550vs_j_gpios 3 0x1>;
vcc-supply = <&L16B>;
vdd-supply = <&L4B>;
synaptics,vdd-name = "vdd";
synaptics,avdd-name = "vcc";
/* Other HW Resource */
synaptics,irq-gpio = <&tlmm 162 0x2008>;
synaptics,reset-gpio = <&tlmm 161 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,panel-coords = <20224 44480>;
touchpanel,tx-rx-num = <17 38>;
touchpanel,tp_ic_type = <2>;
panel_type = <3>;
// type of tp_dev ,TP-SAMSUNG = 8;
firmware_name = "AA590";
platform_support_project = <24811 24811>;
platform_support_project_dir = <24811 24811>;
platform_support_project_commandline = "default_commandline";
synaptics,power-on-state = <1>;
synaptics,power-delay-ms = <200>;
synaptics,irq-on-state = <0>;
synaptics,reset-on-state = <0>;
synaptics,reset-active-ms = <10>;
synaptics,reset-delay-ms = <80>;
synaptics,spi-mode = <0>;
synaptics,spi-byte-delay-us = <0>;
synaptics,spi-block-delay-us = <0>;
/* SW Support Feature Control */
tp_data_record_support;
stats_upload_support;
};
};
/*
&pm8550vs_j_gpios {
ts_avdd_active: ts_avdd_active {
pins = "gpio3";
function = "normal";
input-disable;
output-enable;
output-low;
power-source = <1>;
};
};
*/
&tlmm {
/* gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <8 11 15 20 23 56 57 59 63 65 66 77 81 84 153 155 171 172 177 188 195>;
};
*/
pmx_ts_int_active {
ts_int_active: ts_int_active {
mux {
pins = "gpio162";
function = "gpio";
};
config {
pins = "gpio162";
drive-strength = <8>;
bias-disable;
input-enable;
};
};
};
pmx_ts_reset_active {
ts_reset_active: ts_reset_active {
mux {
pins = "gpio161";
function = "gpio";
};
config {
pins = "gpio161";
drive-strength = <8>;
output-low;
bias-disable;
};
};
};
qupv3_se4_spi_pins: qupv3_se4_spi_pins {
qupv3_se4_spi_miso_active: qupv3_se4_spi_miso_active {
mux {
pins = "gpio48";
function = "qup1_se4_l0";
};
config {
pins = "gpio48";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_mosi_active: qupv3_se4_spi_mosi_active {
mux {
pins = "gpio49";
function = "qup1_se4_l1";
};
config {
pins = "gpio49";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_clk_active: qupv3_se4_spi_clk_active {
mux {
pins = "gpio50";
function = "qup1_se4_l2";
};
config {
pins = "gpio50";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_active: qupv3_se4_spi_cs_active {
mux {
pins = "gpio51";
function = "qup1_se4_l3";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
output-high;
};
};
};
};
&pm_humu_l16 {
qcom,init-voltage = <3100000>;
regulator-min-microvolt = <3100000>;
regulator-max-microvolt = <3100000>;
};
&qupv3_hub_i2c9 {
status = "ok";
qcom,clk-freq-out = <400000>;
ist8801@19 {
status = "disabled";
};
ist8801@18 {
status = "disabled";
};
magnachip@0D {
status = "disabled";
};
magnachip@0C {
status = "disabled";
};
magnachip@10 {
compatible = "oplus,dhall-ak09970";
reg = <0x10>;
vcc_1v8-supply = <&L1B>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <97 0x02>;
threeaxis_hall_support;
new_posupdate_support;
health_monitor_support;
exception_upload_support;
dhall,irq-gpio = <&tlmm 97 0x2008>;
pinctrl-names = "hall_interrupt_input";
pinctrl-0 = <&hall_interrupt_input>;
interf_stable_limit = <700 700 700>;
interf_judege_limit = <4000 2000>;
interf_up_tolen = <3700 3700 3000 3000>;
interf_mid_tolen = <3000 3000 3000 3000>;
interf_down_tolen = <3000 3000 3700 3700>;
position_judge_tolen = <4000 5000>;
default_position_xtolen = <3000 3000>;
};
};
&tlmm {
pmx_hall_interrupt_input {
hall_interrupt_input: hall_interrupt_input {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
drive-strength = <2>;
bias-pull-up;
};
};
};
};
&soc {
devinfo_corvette {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio128_sleep>;
pinctrl-2 = <&aboard_pin_gpio128_active>;
pinctrl-3 = <&aboard_pin_gpio128_idle>;
main-sub {
use_tristate_gpio;
devinfo-match-ignore-list = <24811>;
compatible = "hw-match, main-sub";
aboard-gpio0 = <&tlmm 128 0>;
aboard-patterns = <0>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
/*main board*/
match-projects = <24811>;
};
};
};
&tlmm {
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio128_sleep:aboard_pin_gpio128_sleep {
mux {
pins = "gpio128";
function = "gpio";
};
config {
pins = "gpio128";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio128_active:aboard_pin_gpio128_active {
mux {
pins = "gpio128";
function = "gpio";
};
config {
pins = "gpio128";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio128_idle:aboard_pin_gpio128_idle {
mux {
pins = "gpio128";
function = "gpio";
};
config {
pins = "gpio128";
bias-disable;
input-enable;
};
};
};
&pm8550_gpios {
key_vol_up {
key_vol_up_default: key_vol_up_default {
pins = "gpio6";
function = "normal";
input-enable;
bias-pull-up;
power-source = <1>;
};
};
};

View File

@@ -0,0 +1,445 @@
&qupv3_se4_spi{
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se4_spi_mosi_active>, <&qupv3_se4_spi_miso_active>,
<&qupv3_se4_spi_clk_active>, <&qupv3_se4_spi_cs_active>;
pinctrl-1 = <&qupv3_se4_spi_sleep>, <&qupv3_se4_spi_cs_sleep>;
};
&qupv3_se4_spi {
status = "ok";
goodix-berlin@0 {
status = "disabled";
};
synaptics_tcm@0{
compatible = "synaptics-s3910";
reg = <0x0>;
chip-name = "S3910";
status = "disabled";
spi-max-frequency = <19000000>;
/* Interrupt && Irq-gpio */
interrupt-parent = <&tlmm>;
interrupts = <162 0x2008>;
/* Power Config */
//synaptics,avdd-gpio = <&pm8550vs_j_gpios 3 0x1>;
vcc-supply = <&L16B>;
vdd-supply = <&L4B>;
synaptics,vdd-name = "vdd";
synaptics,avdd-name = "vcc";
/* Other HW Resource */
irq-gpio = <&tlmm 162 0x2008>;
reset-gpio = <&tlmm 161 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <17 37>;
touchpanel,panel-coords = <19456 42240>;
touchpanel,display-coords = <1216 2640>;
touchpanel,touchmajor-limit = <128 216>;
touchpanel,elimination-range = <20 200 200>;
touchpanel,int-mode = <1>; /*0: interrupt and disable, 1:interrupt and not disable*/
touchpanel,smooth-level = <0 1 2 4 7 9>;
touchpanel,smooth-level-charging = <0 2 4 7 8 9>;
touchpanel,sensitive-level = <0 70 55 40 25 10>;
touchpanel,single-optimized-time = <8>;
touchpanel,high-frame-rate-time = <60>;
vid_len = <2>;
panel_type = <7>; /*type:3 TM*/
platform_support_project = <24821>;
platform_support_project_dir = <24821>;
platform_support_project_commandline = "default_commandline";
prevention,curved_screen_V2;
prevention,grip_disable_level = <6>;
prevention,updelay_time_ms = <30>;
prevention,makeup_cnt_weight = <4 1 2 2 2>;
prevention,large_corner_range = <1380 3400>;
prevention,large_corner_judge_condition = <500 300 1000 7 7>;
prevention,trx_reject_condition = <8 7 7>;
prevention,trx_strict_reject_condition = <8 6 6>;
prevention,large_judge_time_ms = <500 50 30>;
prevention,large_exit_condition = <8 8 2>;
prevention,single_channel_width = <320 320>;
prevention,normal_tap_condition = <10 350>;
prevention,long_edge_condition = <179 90 120 80>;
prevention,long_strict_edge_condition = <160 60>;
prevention,long_fingerhold_condition = <70 6 4 4>;
prevention,short_edge_condition = <179 90 120 80>;
prevention,short_strict_edge_condition = <160 60>;
prevention,large_strict_exit_condition = <6 6>;
prevention,top_corner_config = <250 750 1000>;
prevention,edge_swipe_config = <340 1130>;
prevention,curved_screen_V4;
prevention,long_eliminate_point_type = <2 12400 9240 240 27720 300 1>;
prevention,long_fingerhold_condition2 = <700 2000 0 0>;
prevention,top_corner_config2 =<3 80 600 1500 0>;
prevention,hor_long_top_corner_config =<300 2000 0 0>;
prevention,top_middle_config =<12400 1000 1000 0>;
prevention,corner_eliminate_point_type =<0 1380 2270 1>;
prevention,finger_hold_differ_size = <1 0 400 300>;
prevention,finger_hold_max_rx_exit_distance = <5 350 2300>;
prevention,max_rx_exit_distance = <1 5 150 350 2000>;
prevention,dynamic_finger_hold_exit_distance = <1 350 2300 450>;
prevention,edge_sliding_matched_support = <1 150 3 0>;
//grip v4.2 reclining mode
prevention,reclining_mode_support = <1>;
prevention,long_eliminate_point_type_recli = <2 12400 9240 240 27720 500 1>;
prevention,finger_hold_differ_size_recli = <1 0 400 400>;
prevention,finger_hold_max_rx_exit_distance_recli = <5 350 2300>;
prevention,max_rx_exit_distance_recli = <1 5 100 350 2300>;
prevention,dynamic_finger_hold_exit_distance_recli = <1 350 2300 450>;
prevention,edge_sliding_matched_support_recli = <1 150 3 0>;
prevention,long_edge_condition_recli = <179 90 120 80>;
/* SW Support Feature Control */
black_gesture_support;
sportify_aod_gesture_support;
pressure_report_support;
charger_pump_support;
game_switch_support;
glove_mode_support;
smart_gesture_support;
fw_update_app_support;
fingerprint_underscreen_support;
freq_hop_simulate_support;
report_flow_unlock_support;
screenoff_fingerprint_info_support;
irq_need_dev_resume_ok;
enable_point_auto_change;
kernel_grip_support;
//grip_no_driver_support;
health_monitor_support;
black_gesture_indep_support;
snr_read_support;
palm_to_sleep_support;
exception_upload_support;
tp_data_record_support;
fingerprint_not_report_in_suspend;
/*
*Virtual Key Config:
*1:touchpanel,button-type: <virtualkey_type supportted_button-map>
*virtualkey_type:
*Type 1: using board_properties
*Type 2: using same IC (button zone&& touch zone are seprate)
*Type 3: using diffrent IC (button zone&& touch zone are seprate)
*Type 4: No need of virtual key process
*supportted_button-map:select|menu|home|back
*
*2:touchpanel,button-map
*type (X1,Y1)(X2,Y2)(X3,Y3)(Width_X,Hight_Y)--Only when button-type is 0
*/
touchpanel,button-type = <4>;
touchpanel.button-TRx = <0 0>;
S3910_PANEL10 {
touchpanel,tx-rx-num = <17 38>;
};
};
synaptics_tcm_hbp@0{
compatible = "synaptics,tcm-spi-hbp";
reg = <0x0>;
chip-name = "S3910";
status = "okay";
spi-max-frequency = <19000000>;
qcom,rt;
/* Interrupt && Irq-gpio */
interrupt-parent = <&tlmm>;
interrupts = <162 0x2008>;
/* Power Config */
//synaptics,avdd-gpio = <&pm8550vs_j_gpios 3 0x1>;
vcc-supply = <&L16B>;
vdd-supply = <&L4B>;
synaptics,vdd-name = "vdd";
synaptics,avdd-name = "vcc";
/* Other HW Resource */
synaptics,irq-gpio = <&tlmm 162 0x2008>;
synaptics,reset-gpio = <&tlmm 161 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,panel-coords = <19456 42240>;
touchpanel,tx-rx-num = <17 37>;
touchpanel,tp_ic_type = <2>;
panel_type = <10 7>;
// type of tp_dev ,TP-SAMSUNG = 8;
firmware_name = "AA590";
platform_support_project = <24821 24875>;
platform_support_project_dir = <24821 24821>;
platform_support_project_commandline = "mdss_dsi_panel_AA590_P_3_A0020_dsc_cmd", "mdss_dsi_panel_AA594_P_7_A0020_dsc_cmd";
synaptics,power-on-state = <1>;
synaptics,power-delay-ms = <200>;
synaptics,irq-on-state = <0>;
synaptics,reset-on-state = <0>;
synaptics,reset-active-ms = <10>;
synaptics,reset-delay-ms = <80>;
synaptics,spi-mode = <0>;
synaptics,spi-byte-delay-us = <0>;
synaptics,spi-block-delay-us = <0>;
/* SW Support Feature Control */
tp_data_record_support;
stats_upload_support;
fingerprint_not_report_in_suspend;
S3910_PANEL10 {
touchpanel,tx-rx-num = <17 38>;
};
};
};
/*
&pm8550vs_j_gpios {
ts_avdd_active: ts_avdd_active {
pins = "gpio3";
function = "normal";
input-disable;
output-enable;
output-low;
power-source = <1>;
};
};
*/
&tlmm {
/* gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <8 11 15 20 23 56 57 59 63 65 66 77 81 84 153 155 171 172 177 188 195>;
};
*/
pmx_ts_int_active {
ts_int_active: ts_int_active {
mux {
pins = "gpio162";
function = "gpio";
};
config {
pins = "gpio162";
drive-strength = <8>;
bias-disable;
input-enable;
};
};
};
pmx_ts_reset_active {
ts_reset_active: ts_reset_active {
mux {
pins = "gpio161";
function = "gpio";
};
config {
pins = "gpio161";
drive-strength = <8>;
output-low;
bias-disable;
};
};
};
qupv3_se4_spi_pins: qupv3_se4_spi_pins {
qupv3_se4_spi_miso_active: qupv3_se4_spi_miso_active {
mux {
pins = "gpio48";
function = "qup1_se4_l0";
};
config {
pins = "gpio48";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_mosi_active: qupv3_se4_spi_mosi_active {
mux {
pins = "gpio49";
function = "qup1_se4_l1";
};
config {
pins = "gpio49";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_clk_active: qupv3_se4_spi_clk_active {
mux {
pins = "gpio50";
function = "qup1_se4_l2";
};
config {
pins = "gpio50";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_active: qupv3_se4_spi_cs_active {
mux {
pins = "gpio51";
function = "qup1_se4_l3";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <4>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <4>;
bias-disable;
output-high;
};
};
};
};
&pm_humu_l16 {
qcom,init-voltage = <3100000>;
regulator-min-microvolt = <3100000>;
regulator-max-microvolt = <3100000>;
};
&soc {
devinfo_corvette {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio173_sleep>;
pinctrl-2 = <&aboard_pin_gpio173_active>;
pinctrl-3 = <&aboard_pin_gpio173_idle>;
main-sub {
use_tristate_gpio;
compatible = "hw-match, main-sub";
aboard-gpio0 = <&tlmm 173 0>;
aboard-patterns = <0 0>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
/*main board*/
match-projects = <24821 24875>;
};
};
};
&tlmm {
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio173_sleep:aboard_pin_gpio173_sleep {
mux {
pins = "gpio173";
function = "gpio";
};
config {
pins = "gpio173";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio173_active:aboard_pin_gpio173_active {
mux {
pins = "gpio173";
function = "gpio";
};
config {
pins = "gpio173";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio173_idle:aboard_pin_gpio173_idle {
mux {
pins = "gpio173";
function = "gpio";
};
config {
pins = "gpio173";
bias-disable;
input-enable;
};
};
};
&pm8550_gpios {
key_vol_up {
key_vol_up_default: key_vol_up_default {
pins = "gpio6";
function = "normal";
input-enable;
bias-pull-up;
power-source = <1>;
};
};
};
&soc {
gpio-hall-sensor {
compatible = "gpio-keys";
label = "gpio-keys";
status = "okay";
pinctrl-0 = <&gpio_hall_sensor_default>;
pinctrl-names = "default";
oplus-magic-buttom {
label = "oplus_magic_buttom";
gpios = <&tlmm 97 GPIO_ACTIVE_LOW>;
linux,input-type = <EV_KEY>;
linux,code = <735>; /* means: BTN_TRIGGER_HAPPY32 */
linux,can-disable;
gpio-key,wakeup;
debounce-interval = <32>; /* standard debounce time 32ms */
};
};
};
&tlmm {
gpio_hall_sensor_default: gpio-hall-sensor-default-state {
pins = "gpio97";
function = "gpio";
drive-strength = <6>;
bias-disable;
};
};

View File

@@ -0,0 +1,88 @@
&soc {
bootloader_log {
compatible = "bootloader_log";
linux,contiguous-region = <&bootloader_log_mem>;
};
//#ifdef OPLUS_FEATURE_SECURITY_COMMON
/* 2024/04/09 add for oplus secure */
oplus_secure_common {
compatible = "oplus,secure_common";
};
//#endif /*OPLUS_FEATURE_SECURITY_COMMON*/
oplus-pmic-monitor-log {
compatible = "oplus,pmic-monitor-log";
nvmem = <&pmk8550_sdam_5>, <&pmk8550_sdam_6>;
nvmem-names = "pon_log0", "pon_log1";
};
oplus-ocp-state-log {
compatible = "oplus,pmic-ocp-log";
nvmem-cells = <&ocp_log>;
nvmem-cell-names = "ocp_log";
};
dump_device_info {
compatible = "dump_device_info";
linux,contiguous-region = <&dump_device_info_mem>;
};
//#ifdef OPLUS_FEATURE_THERMAL_HORAE
shell_front {
compatible = "oplus,shell-temp";
};
shell_frame {
compatible = "oplus,shell-temp";
};
shell_back {
compatible = "oplus,shell-temp";
};
//#endif /* OPLUS_FEATURE_THERMAL_HORAE */
oplus_kernel_state_monitor {
compatible = "oplus,kernel_state_monitor";
};
};
&reserved_memory {
/*
This size is from Core/Uefi/LAA/memmap.dtsi
reg = <0x0 0x81CE4000 0x0 0x00010000>;
MemLabel = "UEFI_Log";
so we reserve this for bootloader log
*/
bootloader_log_mem: botloader_mem@0x81CE4000 {
reg = <0 0x81CE4000 0 0x00010000>;
label = "bootloader_log_mem";
};
dump_device_info_mem: device_info_mem@0xA4F00000 {
reg = <0 0xA4F00000 0 0x00008000>;
label = "dump_device_info_mem";
};
};
&pmk8550 {
//#ifdef CONFIG_OPLUS_FEATURE_QCOM_PMICWD
//pmicwd depend on pon_pbs@800
pon_pbs@800 {
compatible = "qcom,qpnp-power-on";
reg = <0x800>;
qcom,system-reset;
qcom,store-hard-reset-reason;
};
pon_pmicwd@800 {
compatible = "oplus,pmicwd_qpnp-power-on";
qcom,pmicwd;
};
oplus_ocp_dev: oplus-ocp-dev@8200 {
compatible = "oplus,pmic-ocp-device";
reg = <0x8200>;
oplus-ocp-device;
};
//#endif /* CONFIG_OPLUS_FEATURE_QCOM_PMICWD */
};

View File

@@ -9,10 +9,12 @@
#include <dt-bindings/spmi/spmi.h>
&sdhc_2 {
// #ifdef OPLUS_SENSOR_FEATURE
/*
vdd-supply = <&L13B>;
qcom,vdd-voltage-level = <2960000 2960000>;
qcom,vdd-current-level = <0 976270>;
*/
vdd-io-supply = <&L23B>;
qcom,vdd-io-voltage-level = <1800000 2960000>;
qcom,vdd-io-current-level = <0 5830>;
@@ -25,7 +27,7 @@
qcom,uses_level_shifter;
status = "ok";
status = "disable";
};
&wcd_usbss {

View File

@@ -500,7 +500,6 @@
bias-disable;
};
};
qupv3_se2_spi_sleep: qupv3_se2_spi_sleep {
mux {
pins = "gpio52", "gpio53",
@@ -887,14 +886,20 @@
qupv3_se6_spi_sleep: qupv3_se6_spi_sleep {
mux {
/*
pins = "gpio40", "gpio54",
"gpio42", "gpio55";
*/
pins = "gpio54";
function = "gpio";
};
config {
/*
pins = "gpio40", "gpio54",
"gpio42", "gpio55";
*/
pins = "gpio54";
drive-strength = <2>;
bias-disable;
};

View File

@@ -353,8 +353,12 @@
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>,
<&aggre1_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "sleep";
//#ifdef OPLUS_FEATURE_SENSOR_IR
/*
pinctrl-0 = <&qupv3_se6_spi_mosi_active>, <&qupv3_se6_spi_miso_active>,
<&qupv3_se6_spi_clk_active>, <&qupv3_se6_spi_cs_active>;
*/
pinctrl-0 = <&qupv3_se6_spi_mosi_active>;
pinctrl-1 = <&qupv3_se6_spi_sleep>;
dmas = <&gpi_dma1 0 6 1 64 0>,
<&gpi_dma1 1 6 1 64 0>;

View File

@@ -11,5 +11,5 @@
/ {
model = "Qualcomm Technologies, Inc. Parrot WCN6750 VM IDP + AMOLED + RCM";
compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp";
qcom,board-id = <34 2>;
qcom,board-id = <34 2>, <34 6>;
};

View File

@@ -11,5 +11,5 @@
/ {
model = "Qualcomm Technologies, Inc. Parrot SVM IDP";
compatible = "qcom,parrot-idp", "qcom,parrot", "qcom,idp";
qcom,board-id = <34 0>;
qcom,board-id = <34 0>, <34 5>;
};

View File

@@ -11,5 +11,5 @@
/ {
model = "Qualcomm Technologies, Inc. Parrot SVM QRD + WCN6750";
compatible = "qcom,parrot-qrd", "qcom,parrot", "qcom,qrd";
qcom,board-id = <0x1000B 1>;
qcom,board-id = <0x1000B 1>, <0x1000B 2>;
};

View File

@@ -466,7 +466,13 @@
};
socd_trip: socd-trip {
temperature = <90>;
//#ifdef OPLUS_FEATURE_THERMAL
temperature = <100>;
//#else
/*
temperature = <90>;
*/
//#endif /* OPLUS_FEATURE_THERMAL */
hysteresis = <0>;
type = "passive";
};

View File

@@ -482,7 +482,13 @@
};
socd_trip: socd-trip {
temperature = <90>;
//#ifdef OPLUS_FEATURE_THERMAL
temperature = <100>;
//#else
/*
temperature = <90>;
*/
//#endif /* OPLUS_FEATURE_THERMAL */
hysteresis = <0>;
type = "passive";
};

View File

@@ -18,7 +18,7 @@
interrupt-controller;
#interrupt-cells = <4>;
qcom,pmk8550@0 {
pmk8550: qcom,pmk8550@0 {
compatible = "qcom,spmi-pmic";
reg = <0x0 SPMI_USID>;
#address-cells = <1>;
@@ -159,7 +159,7 @@
resin {
compatible = "qcom,pmk8350-resin";
interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_VOLUMEDOWN>;
linux,code = <KEY_VOLUMEUP>;
};
};

View File

@@ -35,7 +35,7 @@
#interrupt-cells = <2>;
};
led-controller {
pmxr2230_led_controller: led-controller {
compatible = "qcom,pm8350c-pwm";
#address-cells = <1>;
#size-cells = <0>;
@@ -62,6 +62,15 @@
};
};
pmxr2230_pwm_2: pwms@eb00 {
compatible = "qcom,pwm-lpg";
reg = <0xeb00>;
reg-names = "lpg-base";
#pwm-cells = <2>;
qcom,num-lpg-channels = <1>;
status = "disabled";
};
pmxr2230_flash: qcom,flash_led@ee00 {
compatible = "qcom,qti-pm8350c-flash-led";
reg = <0xee00>;

File diff suppressed because it is too large Load Diff

View File

@@ -16,15 +16,15 @@
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
pinctrl-0 = <&key_vol_down_default>;
vol_up {
label = "volume_up";
vol_down {
label = "volume_down";
gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEUP>;
linux,code = <KEY_VOLUMEDOWN>;
gpio-key,wakeup;
debounce-interval = <15>;
debounce-interval = <32>;
linux,can-disable;
};
};
@@ -264,10 +264,14 @@
};
&sdhc_2 {
status = "ok";
// #ifdef OPLUS_SENSOR_FEATURE
status = "disabled";
// #else
/* status = "ok";
vdd-supply = <&pm_humu_l9>;
qcom,vdd-voltage-level = <2950000 2960000>;
qcom,vdd-current-level = <0 800000>;
qcom,vdd-current-level = <0 800000>; */
// #endif
vdd-io-supply = <&pm_humu_l8>;
qcom,vdd-io-voltage-level = <1800000 2960000>;
@@ -292,16 +296,18 @@
qcom,external-fb-clk;
};
&pmih010x_eusb2_repeater {
qcom,param-override-seq =
/* <value reg_offset> */
/* Adjust HS trasmit amplitude */
<0xa 0x51
/* Squelch detection threshold */
0x4 0x54
/* Tx pre-emphasis tuning */
0x3 0x57>;
};
// #ifndef OPLUS_FEATURE_CHG_BASIC
//&pmih010x_eusb2_repeater {
// qcom,param-override-seq =
// /* <value reg_offset> */
// /* Adjust HS trasmit amplitude */
// <0xa 0x51
// /* Squelch detection threshold */
// 0x4 0x54
// /* Tx pre-emphasis tuning */
// 0x3 0x57>;
//};
// #endif
&eusb2_phy0 {
dummy-supply = <&pmih010x_eusb2_repeater>;
@@ -312,7 +318,11 @@
#address-cells = <1>;
#size-cells = <0>;
status = "ok";
// #ifdef OPLUS_TP_FEATURE
status = "disabled";
// #else
/* status = "ok"; */
// #endif
qcom,touch-active = "st,fts";
st_fts@49 {

View File

@@ -17,9 +17,10 @@
<0x40000f20 0xa8>,
<0x40001000 0x1000>,
<0x40100000 0x100000>,
<0x01D07000 0x7000>;
<0x01D07000 0x7000>,
<0x01c03000 0x1000>;
reg-names = "parf", "phy", "dm_core", "elbi", "iatu", "conf",
"pcie_sm";
"pcie_sm", "mhi";
cell-index = <0>;
linux,pci-domain = <0>;

View File

@@ -45,6 +45,112 @@
};
};
qupv3_se15_4uart_pins: qupv3_se15_4uart_pins {
qupv3_se15_default_cts: qupv3_se15_default_cts {
mux {
pins = "gpio28";
function = "gpio";
};
config {
pins = "gpio28";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se15_default_rts: qupv3_se15_default_rts {
mux {
pins = "gpio29";
function = "gpio";
};
config {
pins = "gpio29";
drive-strength = <2>;
bias-pull-down;
};
};
qupv3_se15_default_tx: qupv3_se15_default_tx {
mux {
pins = "gpio30";
function = "gpio";
};
config {
pins = "gpio30";
drive-strength = <2>;
bias-pull-up;
};
};
qupv3_se15_default_rx: qupv3_se15_default_rx {
mux {
pins = "gpio31";
function = "gpio";
};
config {
pins = "gpio31";
drive-strength = <2>;
bias-pull-down;
};
};
qupv3_se15_cts: qupv3_se15_cts {
mux {
pins = "gpio28";
function = "qup2_se7_l0";
};
config {
pins = "gpio28";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se15_rts: qupv3_se15_rts {
mux {
pins = "gpio29";
function = "qup2_se7_l1";
};
config {
pins = "gpio29";
drive-strength = <2>;
bias-pull-down;
};
};
qupv3_se15_tx: qupv3_se15_tx {
mux {
pins = "gpio30";
function = "qup2_se7_l2";
};
config {
pins = "gpio30";
drive-strength = <2>;
bias-pull-up;
};
};
qupv3_se15_rx: qupv3_se15_rx {
mux {
pins = "gpio31";
function = "qup2_se7_l3";
};
config {
pins = "gpio31";
drive-strength = <2>;
bias-disable;
};
};
};
i2s0_sck {
i2s0_sck_sleep: i2s0_sck_sleep {
mux {
@@ -1833,7 +1939,8 @@
pins = "gpio0";
drive-strength = <2>;
bias-pull-up;
qcom,i2c_pull;
//qcom,i2c_pull;
qcom,apps;
};
};
@@ -1847,7 +1954,8 @@
pins = "gpio1";
drive-strength = <2>;
bias-pull-up;
qcom,i2c_pull;
//qcom,i2c_pull;
qcom,apps;
};
};
@@ -1860,6 +1968,7 @@
config {
pins = "gpio0", "gpio1";
drive-strength = <2>;
qcom,remote;
};
};
};
@@ -2015,7 +2124,7 @@
pins = "gpio4";
drive-strength = <2>;
bias-pull-up;
qcom,i2c_pull;
//qcom,i2c_pull;
qcom,apps;
};
};
@@ -2030,7 +2139,7 @@
pins = "gpio5";
drive-strength = <2>;
bias-pull-up;
qcom,i2c_pull;
//qcom,i2c_pull;
qcom,apps;
};
};
@@ -2541,6 +2650,74 @@
};
};
qupv3_se11_2uart_pins: qupv3_se11_2uart_pins {
qupv3_se11_default_tx: qupv3_se11_default_tx {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
drive-strength = <2>;
bias-pull-down;
};
};
qupv3_se11_default_rx: qupv3_se11_default_rx {
mux {
pins = "gpio15";
function = "gpio";
};
config {
pins = "gpio15";
drive-strength = <2>;
bias-pull-down;
};
};
qupv3_se11_tx: qupv3_se11_tx {
mux {
pins = "gpio14";
function = "qup2_se3_l2";
};
config {
pins = "gpio14";
drive-strength = <2>;
bias-pull-up;
};
};
qupv3_se11_rx_active: qupv3_se11_rx_active {
mux {
pins = "gpio15";
function = "qup2_se3_l3";
};
config {
pins = "gpio15";
drive-strength = <2>;
bias-disable;
};
};
/* RX to be in gpio mode for sleep config */
qupv3_se11_rx_wake: qupv3_se11_rx_wake {
mux {
pins = "gpio15";
function = "gpio";
};
config {
pins = "gpio15";
drive-strength = <2>;
bias-disable;
};
};
};
qupv3_se12_i2c_pins: qupv3_se12_i2c_pins {
qupv3_se12_i2c_sda_active: qupv3_se12_i2c_sda_active {
mux {
@@ -2638,14 +2815,22 @@
qupv3_se12_spi_sleep: qupv3_se12_spi_sleep {
mux {
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pins = "gpio16", "gpio17",
"gpio18", "gpio19";
*/
pins = "gpio17";
function = "gpio";
};
config {
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pins = "gpio16", "gpio17",
"gpio18", "gpio19";
*/
pins = "gpio17";
drive-strength = <2>;
bias-disable;
};

View File

@@ -55,8 +55,8 @@
};
&pm8550_gpios {
key_vol_up {
key_vol_up_default: key_vol_up_default {
key_vol_down {
key_vol_down_default: key_vol_down_default {
pins = "gpio6";
function = "normal";
input-enable;
@@ -359,19 +359,19 @@
};
trip_config0: trip-config0 {
temperature = <78000>;
temperature = <88000>;
hysteresis = <8000>;
type = "passive";
};
trip_config1: trip-config1 {
temperature = <80000>;
temperature = <90000>;
hysteresis = <10000>;
type = "passive";
};
shutdown-trip {
temperature = <90000>;
temperature = <100000>;
hysteresis = <0>;
type = "hot";
};

View File

@@ -582,8 +582,8 @@
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se8_i2c_sda_active>, <&qupv3_se8_i2c_scl_active>;
pinctrl-1 = <&qupv3_se8_i2c_sleep>;
dmas = <&gpi_dma2 0 0 3 64 0>,
<&gpi_dma2 1 0 3 64 0>;
dmas = <&gpi_dma2 0 0 3 1024 0>,
<&gpi_dma2 1 0 3 1024 0>;
dma-names = "tx", "rx";
status = "disabled";
};
@@ -843,6 +843,29 @@
status = "disabled";
};
/*ICC UART Instance */
qupv3_se11_2uart: qcom,qup_uart@88c000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0x88c000 0x4000>;
#address-cells = <1>;
#size-cells = <0>;
reg-names = "se_phys";
interrupts-extended = <&intc GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
clock-names = "se-clk";
clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
interconnect-names = "qup-core", "qup-config", "qup-memory";
interconnects =
<&clk_virt MASTER_QUP_CORE_2 &clk_virt SLAVE_QUP_CORE_2>,
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_2>,
<&aggre2_noc MASTER_QUP_2 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "active", "sleep", "shutdown";
pinctrl-0 = <&qupv3_se11_default_tx>, <&qupv3_se11_default_rx>;
pinctrl-1 = <&qupv3_se11_default_tx>, <&qupv3_se11_rx_active>;
pinctrl-2 = <&qupv3_se11_default_tx>, <&qupv3_se11_default_rx>;
pinctrl-3 = <&qupv3_se11_default_tx>, <&qupv3_se11_default_rx>;
status = "disabled";
};
/* I3C Instance QUPV3_2, SE3: NAON */
i3c6: i3c-master@88c000 {
compatible = "qcom,geni-i3c";
@@ -913,8 +936,12 @@
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_2>,
<&aggre2_noc MASTER_QUP_2 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "sleep";
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pinctrl-0 = <&qupv3_se12_spi_mosi_active>, <&qupv3_se12_spi_miso_active>,
<&qupv3_se12_spi_clk_active>, <&qupv3_se12_spi_cs_active>;
*/
pinctrl-0 = <&qupv3_se12_spi_mosi_active>;
pinctrl-1 = <&qupv3_se12_spi_sleep>;
dmas = <&gpi_dma2 0 4 1 64 0>,
<&gpi_dma2 1 4 1 64 0>;
@@ -1053,14 +1080,15 @@
status = "disabled";
};
/* Secondary Tounch */
qupv3_se15_spi: spi@89c000 {
compatible = "qcom,spi-geni";
/* rpc uart */
qupv3_se15_4uart: qcom,qup_uart@89c000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0x89c000 0x4000>;
#address-cells = <1>;
#size-cells = <0>;
reg-names = "se_phys";
interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>;
interrupts-extended = <&intc GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>,
<&tlmm 31 IRQ_TYPE_LEVEL_HIGH>;
clock-names = "se-clk";
clocks = <&gcc GCC_QUPV3_WRAP2_S7_CLK>;
interconnect-names = "qup-core", "qup-config", "qup-memory";
@@ -1068,15 +1096,17 @@
<&clk_virt MASTER_QUP_CORE_2 &clk_virt SLAVE_QUP_CORE_2>,
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_2>,
<&aggre2_noc MASTER_QUP_2 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se15_spi_mosi_active>, <&qupv3_se15_spi_miso_active>,
<&qupv3_se15_spi_clk_active>, <&qupv3_se15_spi_cs_active>;
pinctrl-1 = <&qupv3_se15_spi_sleep>;
dmas = <&gpi_dma2 0 7 1 64 2>,
<&gpi_dma2 1 7 1 64 2>;
dma-names = "tx", "rx";
spi-max-frequency = <50000000>;
status = "disabled";
pinctrl-names = "default", "active", "sleep", "shutdown";
pinctrl-0 = <&qupv3_se15_default_cts>, <&qupv3_se15_default_rts>,
<&qupv3_se15_default_tx>, <&qupv3_se15_default_rx>;
pinctrl-1 = <&qupv3_se15_cts>, <&qupv3_se15_rts>,
<&qupv3_se15_tx>, <&qupv3_se15_rx>;
pinctrl-2 = <&qupv3_se15_cts>, <&qupv3_se15_rts>,
<&qupv3_se15_tx>, <&qupv3_se15_default_rx>;
pinctrl-3 = <&qupv3_se15_default_cts>, <&qupv3_se15_default_rts>,
<&qupv3_se15_default_tx>, <&qupv3_se15_default_rx>;
qcom,wakeup-byte = <0xFD>;
status = "disabled";
};
/* I3C Instance */

View File

@@ -543,7 +543,7 @@
regulator-name = "pm_humu_l12";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1800000>;
regulator-max-microvolt = <1900000>;
qcom,init-voltage = <1800000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
qcom,proxy-consumer-enable;
@@ -1027,9 +1027,9 @@
L1I: pm_v8i_l1: regulator-pm-v8i-l1 {
regulator-name = "pm_v8i_l1";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1200000>;
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1200000>;
qcom,init-voltage = <1200000>;
qcom,init-voltage = <1100000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
@@ -1368,9 +1368,9 @@
L6M: pm8010m_l6: regulator-pm8010m-l6 {
regulator-name = "pm8010m_l6";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
};
@@ -1381,9 +1381,9 @@
L7M: pm8010m_l7: regulator-pm8010m-l7 {
regulator-name = "pm8010m_l7";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2960000>;
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2960000>;
qcom,init-voltage = <2960000>;
qcom,init-voltage = <2800000>;
};
};
@@ -1399,9 +1399,9 @@
L1N: pm8010n_l1: regulator-pm8010n-l1 {
regulator-name = "pm8010n_l1";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1104000>;
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1104000>;
qcom,init-voltage = <1104000>;
qcom,init-voltage = <800000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
@@ -1418,9 +1418,9 @@
L2N: pm8010n_l2: regulator-pm8010n-l2 {
regulator-name = "pm8010n_l2";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1104000>;
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1104000>;
qcom,init-voltage = <1104000>;
qcom,init-voltage = <800000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
@@ -1432,9 +1432,9 @@
L3N: pm8010n_l3: regulator-pm8010n-l3 {
regulator-name = "pm8010n_l3";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
};
@@ -1445,9 +1445,9 @@
L4N: pm8010n_l4: regulator-pm8010n-l4 {
regulator-name = "pm8010n_l4";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
};
@@ -1459,7 +1459,7 @@
regulator-name = "pm8010n_l5";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-max-microvolt = <3304000>;
qcom,init-voltage = <2800000>;
};
};
@@ -1471,9 +1471,9 @@
L6N: pm8010n_l6: regulator-pm8010n-l6 {
regulator-name = "pm8010n_l6";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
};

View File

@@ -36,12 +36,13 @@
aliases: aliases {
serial0 = &qupv3_se7_2uart;
hsuart0 = &qupv3_se14_4uart;
hsuart3 = &qupv3_se15_4uart;
ufshc1 = &ufshc_mem; /* Embedded UFS Slot */
mmc1 = &sdhc_2; /* SDC2 SD card slot */
};
chosen: chosen {
bootargs = "log_buf_len=512K loglevel=6 cpufreq.default_governor=performance sysctl.kernel.sched_pelt_multiplier=4 no-steal-acc kpti=0 swiotlb=0 loop.max_part=7 irqaffinity=0-1 pcie_ports=compat printk.console_no_auto_verbose=1 kasan=off rcupdate.rcu_expedited=1 rcu_nocbs=0-7 kernel.panic_on_rcu_stall=1 disable_dma32=on cgroup_disable=pressure fw_devlink.strict=1 can.stats_timer=0 pci-msm-drv.pcie_sm_regs=0x1D07000,0x1040,0x1048,0x3000,0x1 ftrace_dump_on_oops slub_debug=-";
bootargs = "log_buf_len=512K loglevel=6 cpufreq.default_governor=performance sysctl.kernel.sched_pelt_multiplier=4 no-steal-acc kpti=0 swiotlb=0 loop.max_part=7 irqaffinity=0-1 pcie_ports=compat printk.console_no_auto_verbose=0 kasan=off rcupdate.rcu_expedited=1 rcu_nocbs=0-7 kernel.panic_on_rcu_stall=1 disable_dma32=on cgroup_disable=pressure fw_devlink.strict=1 can.stats_timer=0 pci-msm-drv.pcie_sm_regs=0x1D07000,0x1040,0x1048,0x3000,0x1 ftrace_dump_on_oops slub_debug=- minidump.stack_dump=true";
stdout-path = "serial0:115200n8";
};
@@ -929,6 +930,7 @@
/* Need to update different value for V2 device */
qcom,freq-threshold-idx = <11>, <10>;
qcom,frequency-threshold-residency = <5000>, <5000>;
heuristics_scid_thread_interval = <16000>;
qcom,scid-heuristics-enabled;
};
};
@@ -2214,6 +2216,7 @@
compatible = "qcom,ramoops";
memory-region = <&ramoops_mem>;
pmsg-size = <0x200000>;
console-size = <0x40000>;
mem-type = <2>;
};
@@ -3939,9 +3942,10 @@
reg = <0x0 0x9ed80000 0x0 0x80000>;
};
/*reg = <0x0 0x9ee00000 0x0 0x3a80000>;*/
adspslpi_mem: adspslpi_region@9ee00000 {
no-map;
reg = <0x0 0x9ee00000 0x0 0x3a80000>;
reg = <0x0 0x9ee00000 0x0 0x5080000>;
};
/* uefi region can be reused by apps */
@@ -4054,7 +4058,7 @@
ramoops_mem: ramoops-region {
alloc-ranges = <0x1 0x00000000 0xfffffffe 0xffffffff>;
size = <0x0 0x200000>;
size = <0x0 0x240000>;
no-map;
};
@@ -4089,7 +4093,7 @@
#include "sun-walt.dtsi"
&qupv3_se7_2uart {
status = "ok";
status = "disabled";
};
&qupv3_se3_i2c {

View File

@@ -133,6 +133,6 @@
qcom,uses_level_shifter;
status = "ok";
status = "disabled";
};

View File

@@ -14,5 +14,5 @@
compatible = "qcom,tuna-mtp", "qcom,tuna", "qcom,tunap-mtp", "qcom,tunap",
"qcom,mtp";
qcom,msm-id = <681 0x10000>, <655 0x10000>, <694 0x10000>;
qcom,board-id = <8 2>;
qcom,board-id = <8 0>;
};

View File

@@ -107,7 +107,7 @@
qcom,uses_level_shifter;
status = "ok";
status = "disabled";
};
&usb0 {

View File

@@ -1448,14 +1448,22 @@
qupv3_se11_spi_sleep: qupv3_se11_spi_sleep {
mux {
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pins = "gpio36", "gpio37",
"gpio38", "gpio39";
*/
pins = "gpio37";
function = "gpio";
};
config {
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pins = "gpio36", "gpio37",
"gpio38", "gpio39";
*/
pins = "gpio37";
drive-strength = <2>;
bias-disable;
};

View File

@@ -85,7 +85,11 @@
};
&pmk8550_vadc {
/*#ifndef OPLUS_FEATURE_CHG_BASIC
pinctrl-0 = <&sys_therm_7_gpio6_default &sys_therm_6_gpio7_default>;
else*/
pinctrl-0 = <&sys_therm_6_gpio7_default>;
/*#endif*/
pinctrl-names = "default";
/* PM7550BA Channel nodes */
@@ -127,7 +131,7 @@
reg = <PM7550BA_ADC5_GEN3_ICHG_FB>;
label = "pm7550ba_ichg_fb";
};
/*#ifndef OPLUS_FEATURE_CHG_BASIC
pm7550ba_sys_therm_7 {
reg = <PM7550BA_ADC5_GEN3_AMUX_THM6_GPIO6_100K_PU>;
label = "pm7550ba_sys_therm_7";
@@ -136,7 +140,7 @@
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
#endif*/
pm7550ba_sys_therm_8 {
reg = <PM7550BA_ADC5_GEN3_AMUX_THM4_USB_THERM_100K_PU>;
label = "pm7550ba_sys_therm_8";
@@ -175,7 +179,7 @@
qcom,thermal-mitigation-step = <500000>;
#cooling-cells = <2>;
};
/*#ifndef OPLUS_FEATURE_CHG_BASIC
&pm7550ba_gpios {
sys_therm_7_gpio6 {
sys_therm_7_gpio6_default: sys_therm_7_gpio6_default {
@@ -184,7 +188,7 @@
};
};
};
#endif*/
&thermal_zones {
sys-therm-7 {
polling-delay-passive = <0>;

View File

@@ -101,23 +101,7 @@
};
&sdhc_2 {
vdd-supply = <&L13B>;
qcom,vdd-voltage-level = <2960000 2960000>;
qcom,vdd-current-level = <0 976310>;
vdd-io-supply = <&L23B>;
qcom,vdd-io-voltage-level = <1800000 2960000>;
qcom,vdd-io-current-level = <0 5830>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&sdc2_on>;
pinctrl-1 = <&sdc2_off>;
cd-gpios = <&tlmm 39 GPIO_ACTIVE_LOW>;
qcom,uses_level_shifter;
status = "ok";
status = "disabled";
};
&thermal_zones {

View File

@@ -608,8 +608,12 @@
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_2>,
<&aggre2_noc MASTER_QUP_2 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "sleep";
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pinctrl-0 = <&qupv3_se11_spi_mosi_active>, <&qupv3_se11_spi_miso_active>,
<&qupv3_se11_spi_clk_active>, <&qupv3_se11_spi_cs_active>;
*/
pinctrl-0 = <&qupv3_se12_spi_mosi_active>;
pinctrl-1 = <&qupv3_se11_spi_sleep>;
dmas = <&gpi_dma2 0 3 1 64 0>,
<&gpi_dma2 1 3 1 64 0>;

View File

@@ -200,7 +200,9 @@
adspslpi_mem: adspslpi_region@99e00000 {
no-map;
reg = <0x0 0x99e00000 0x0 0x3200000>;
/* reg = <0x0 0x99e00000 0x0 0x3200000>; */
reg = <0x0 0x9a300000 0x0 0x4c80000>;
};
wlan_msa_mem: wlan_msa_region@a6400000 {

View File

@@ -71,7 +71,7 @@
};
chosen: chosen {
bootargs = "log_buf_len=512K loglevel=6 cpufreq.default_governor=performance sysctl.kernel.sched_pelt_multiplier=4 no-steal-acc kpti=0 swiotlb=0 loop.max_part=7 pcie_ports=compat irqaffinity=0-1 printk.console_no_auto_verbose=1 kasan=off rcupdate.rcu_expedited=1 rcu_nocbs=0-7 kernel.panic_on_rcu_stall=1 disable_dma32=on cgroup_disable=pressure fw_devlink.strict=1 can.stats_timer=0 ftrace_dump_on_oops cpufreq.default_governor=performance page_poison=on cgroup.memory=nokmem,nosocket pci-msm-drv.pcie_sm_regs=0x1D07000,0x1040,0x1048,0x3000,0x1";
bootargs = "log_buf_len=512K loglevel=6 cpufreq.default_governor=performance sysctl.kernel.sched_pelt_multiplier=4 minidump.stack_dump=true no-steal-acc kpti=0 swiotlb=0 loop.max_part=7 pcie_ports=compat irqaffinity=0-1 printk.console_no_auto_verbose=0 kasan=off rcupdate.rcu_expedited=1 rcu_nocbs=0-7 kernel.panic_on_rcu_stall=1 disable_dma32=on cgroup_disable=pressure fw_devlink.strict=1 can.stats_timer=0 ftrace_dump_on_oops cpufreq.default_governor=performance page_poison=on cgroup.memory=nokmem,nosocket pci-msm-drv.pcie_sm_regs=0x1D07000,0x1040,0x1048,0x3000,0x1";
stdout-path = "serial0:115200n8";
};
@@ -79,13 +79,6 @@
ddr-regions { };
mem-offline {
compatible = "qcom,mem-offline";
offline-sizes = <0x2 0xc0000000 0x1 0x0>;
granule = <512>;
qcom,qmp = <&aoss_qmp>;
};
firmware: firmware {
qcom_scm: qcom_scm {};
};
@@ -472,7 +465,7 @@
ramoops_mem: ramoops-region {
alloc-ranges = <0x1 0x00000000 0xfffffffe 0xffffffff>;
size = <0x0 0x200000>;
size = <0x0 0x240000>;
no-map;
};
};
@@ -2146,6 +2139,7 @@
compatible = "qcom,ramoops";
memory-region = <&ramoops_mem>;
pmsg-size = <0x200000>;
console-size = <0x40000>;
mem-type = <2>;
};
@@ -2541,7 +2535,7 @@
<0x1da5000 0x2000>,
<0x1da4000 0x10>;
reg-names = "ufs_mem", "ice", "mcq_sqd", "mcq_vs";
disable-ah8;
interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
phys = <&ufsphy_mem>;
phy-names = "ufsphy";