kernel-devicetree: Import changes from OnePlus 12 15.0.0.501(EX01)

Change-Id: Ib74b6f936ead7653d605030d762ba93ac9bdeeb9
Signed-off-by: chandu078 <chandudyavanapelli03@gmail.com>
This commit is contained in:
chandu078
2025-03-15 15:01:22 +05:30
parent 9cf12220dc
commit c218aea6ec
94 changed files with 46021 additions and 68 deletions

View File

@@ -1,5 +1,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

28
oplus/Makefile Normal file
View File

@@ -0,0 +1,28 @@
PINEAPPLE_BASE_DTB += ../qcom/pineapple.dtb ../qcom/pineapple-v2.dtb ../qcom/cliffs.dtb ../qcom/cliffs7.dtb ../qcom/volcano.dtb ../qcom/volcano6.dtb ../qcom/volcano6i.dtb
PINEAPPLE_APQ_BASE_DTB += ../qcom/pineapplep.dtb ../qcom/pineapplep-v2.dtb
OPLUS_PINEAPPLE_BOARDS += waffle-22825-pineapple-overlay.dtbo\
waffle-22825-pineapple-overlay-EVB.dtbo\
waffle-22825-pineapple-overlay-EVT1.dtbo\
waffle-22877-pineapple-overlay.dtbo\
waffle-22877-pineapple-overlay-EVB.dtbo\
waffle-22877-pineapple-overlay-EVT1.dtbo\
corvette-23814-pineapple-overlay.dtbo\
caihong-23926-pineapple-overlay.dtbo\
caihong-23976-pineapple-overlay.dtbo\
caihong-23926-pineapple-overlay-T0.dtbo\
caihong-23976-pineapple-overlay-T0.dtbo\
audi-23803-cliffs-overlay.dtbo\
audi-23865-cliffs-overlay.dtbo\
avalon-24211-cliffs-overlay.dtbo\
giulia-23851-pineapple-overlay-T0.dtbo\
giulia-23851-pineapple-overlay.dtbo\
giulia-23867-pineapple-overlay-T0.dtbo\
giulia-23867-pineapple-overlay-T0-EU.dtbo\
giulia-23867-pineapple-overlay.dtbo\
dtb-y += $(OPLUS_PINEAPPLE_BOARDS) $(PINEAPPLE_BASE_DTB) $(PINEAPPLE_APQ_BASE_DTB)
always-y := $(dtb-y)
subdir-y := $(dts-dirs)
clean-files := *.dtb *.dtbo

View File

@@ -0,0 +1,50 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/cliffs-mtp-overlay.dts"
#include "cliffs_overlay_common.dtsi"
#include "audi_overlay_common.dtsi"
#include "tp/audi-oplus-tp-23803.dtsi"
#include "nfc/audi-nfc-sn220.dtsi"
#include "oplus_misc/oplus-misc-23803.dtsi"
#include "oplus_chg/oplus-chg-23803.dtsi"
#include "sensor/audi-sensor-23803.dtsi"
#include "oplus_fp/oplus_fp_23803.dtsi"
/ {
model = "Qualcomm Technologies, Inc. cliffs MTP,Audi";
oplus,project-id = <23803>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_T0 OPLUS_EVT1 OPLUS_DVT1 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio100";
function = "gpio";
};
config {
pins = "gpio100";
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 100 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 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/cliffs-mtp-overlay.dts"
#include "cliffs_overlay_common.dtsi"
#include "audi_overlay_common.dtsi"
#include "tp/audi-oplus-tp-23803.dtsi"
#include "nfc/audi-nfc-sn220.dtsi"
#include "oplus_misc/oplus-misc-23803.dtsi"
#include "oplus_chg/oplus-chg-23803.dtsi"
#include "oplus_chg/oplus-chg-23865-pps.dtsi"
#include "sensor/audi-sensor-23803.dtsi"
#include "oplus_fp/oplus_fp_23803.dtsi"
/ {
model = "Qualcomm Technologies, Inc. cliffs MTP,Audi";
oplus,project-id = <23865 23866>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_T0 OPLUS_EVT1 OPLUS_DVT1 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio100";
function = "gpio";
};
config {
pins = "gpio100";
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 100 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};

View File

View File

@@ -0,0 +1,50 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/cliffs-mtp-overlay.dts"
#include "cliffs_overlay_common.dtsi"
#include "audi_overlay_common.dtsi"
#include "oplus_misc/oplus-misc-24211.dtsi"
#include "oplus_chg/oplus-chg-24211.dtsi"
#include "oplus_chg/oplus-chg-24211-pps.dtsi"
#include "tp/avalon-oplus-tp-24211.dtsi"
#include "sensor/avalon-sensor-24211.dtsi"
#include "oplus_fp/oplus_fp_24211.dtsi"
/ {
model = "Qualcomm Technologies, Inc. cliffs MTP,Avalon";
oplus,project-id = <24211 24212>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_T0 OPLUS_EVT1 OPLUS_DVT1 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio100";
function = "gpio";
};
config {
pins = "gpio100";
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 100 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
};

View File

View File

@@ -0,0 +1,79 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "caihong_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23926-T0.dtsi"
#include "oplus_misc/oplus-misc-23926.dtsi"
#include "tp/caihong-oplus-tp-23926.dtsi"
#include "tp/caihong-oplus-tp-23926_firmware.dtsi"
#include "sensor/caihong-sensor-23926.dtsi"
#include "oplus_pogo_kb/caihong-oplus-pogopin-kb-23926.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,caihong";
oplus,project-id = <23926 23927>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB3 OPLUS_T0>;
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&spmi_bus {
qcom,pmk8550@0 {
pon_hlos@1300 {
compatible = "qcom,pm8998-pon";
reg = <0x1300>, <0x800>;
reg-names = "pon_hlos", "pon_pbs";
pwrkey {
compatible = "qcom,pmk8350-pwrkey";
interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_POWER>;
};
resin {
compatible = "qcom,pmk8350-resin";
interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_VOLUMEUP>;
};
pwrkey-resin {
compatible = "qcom,pmk8350-pwrkey-resin";
interrupts = <0x0 0x13 0x2 IRQ_TYPE_EDGE_BOTH>;
};
};
};
};

View File

@@ -0,0 +1,78 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "caihong_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23926.dtsi"
#include "oplus_misc/oplus-misc-23926.dtsi"
#include "tp/caihong-oplus-tp-23926.dtsi"
#include "tp/caihong-oplus-tp-23926_firmware.dtsi"
#include "sensor/caihong-sensor-23926.dtsi"
#include "oplus_pogo_kb/caihong-oplus-pogopin-kb-23926.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,caihong";
oplus,project-id = <23926 23927>;
oplus,hw-id = <OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1 OPLUS_MP1 OPLUS_MP2 OPLUS_MP3>;
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&spmi_bus {
qcom,pmk8550@0 {
pon_hlos@1300 {
compatible = "qcom,pm8998-pon";
reg = <0x1300>, <0x800>;
reg-names = "pon_hlos", "pon_pbs";
pwrkey {
compatible = "qcom,pmk8350-pwrkey";
interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_POWER>;
};
resin {
compatible = "qcom,pmk8350-resin";
interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_VOLUMEUP>;
};
pwrkey-resin {
compatible = "qcom,pmk8350-pwrkey-resin";
interrupts = <0x0 0x13 0x2 IRQ_TYPE_EDGE_BOTH>;
};
};
};
};

View File

@@ -0,0 +1,80 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "caihong_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23926-T0.dtsi"
#include "oplus_chg/oplus-chg-23976-pps.dtsi"
#include "oplus_misc/oplus-misc-23926.dtsi"
#include "tp/caihong-oplus-tp-23926.dtsi"
#include "tp/caihong-oplus-tp-23926_firmware.dtsi"
#include "sensor/caihong-sensor-23926.dtsi"
#include "oplus_pogo_kb/caihong-oplus-pogopin-kb-23926.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,caihong";
oplus,project-id = <23976 23978>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB3 OPLUS_T0>;
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&spmi_bus {
qcom,pmk8550@0 {
pon_hlos@1300 {
compatible = "qcom,pm8998-pon";
reg = <0x1300>, <0x800>;
reg-names = "pon_hlos", "pon_pbs";
pwrkey {
compatible = "qcom,pmk8350-pwrkey";
interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_POWER>;
};
resin {
compatible = "qcom,pmk8350-resin";
interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_VOLUMEUP>;
};
pwrkey-resin {
compatible = "qcom,pmk8350-pwrkey-resin";
interrupts = <0x0 0x13 0x2 IRQ_TYPE_EDGE_BOTH>;
};
};
};
};

View File

@@ -0,0 +1,80 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "caihong_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23926.dtsi"
#include "oplus_chg/oplus-chg-23976-pps.dtsi"
#include "oplus_misc/oplus-misc-23926.dtsi"
#include "tp/caihong-oplus-tp-23926.dtsi"
#include "tp/caihong-oplus-tp-23926_firmware.dtsi"
#include "sensor/caihong-sensor-23926.dtsi"
#include "oplus_pogo_kb/caihong-oplus-pogopin-kb-23926.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,caihong";
oplus,project-id = <23976 23978>;
oplus,hw-id = <OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1 OPLUS_MP1 OPLUS_MP2 OPLUS_MP3>;
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&spmi_bus {
qcom,pmk8550@0 {
pon_hlos@1300 {
compatible = "qcom,pm8998-pon";
reg = <0x1300>, <0x800>;
reg-names = "pon_hlos", "pon_pbs";
pwrkey {
compatible = "qcom,pmk8350-pwrkey";
interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_POWER>;
};
resin {
compatible = "qcom,pmk8350-resin";
interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_VOLUMEUP>;
};
pwrkey-resin {
compatible = "qcom,pmk8350-pwrkey-resin";
interrupts = <0x0 0x13 0x2 IRQ_TYPE_EDGE_BOTH>;
};
};
};
};

View File

@@ -0,0 +1,136 @@
// Add the thermistors for shell-temp
&pmk8550_vadc {
pm8550_pa_therm_2 {
reg = <PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
label = "pm8550_pa_therm_2";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
pa-therm-2 {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
oplus_thermal_ipa {
thermal-governor = "user_space";
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&oplus_ipa>;
trips {
ipa_switch_on: ipa-switch-on {
temperature = <33000>;
hysteresis = <2000>;
type = "active";
};
ipa_control_temp: ipa-control-temp {
temperature = <56000>;
hysteresis = <2000>;
type = "passive";
};
ipa_hot: ipa-hot {
temperature = <115000>;
hysteresis = <3000>;
type = "hot";
};
};
cooling-maps {
map0 {
trip = <&ipa_control_temp>;
contribution = <512>;
cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map1 {
trip = <&ipa_control_temp>;
contribution = <1536>;
cooling-device = <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map2 {
trip = <&ipa_control_temp>;
contribution = <1024>;
cooling-device = <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map3 {
trip = <&ipa_control_temp>;
contribution = <1536>;
cooling-device = <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
};
&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 */
oplus,f2fs {
seqzone {
switch = "supported";
};
};
oplus_ipa: ipa {
compatible = "oplus,oplus-thermal";
thermal_name = "oplus_thermal_ipa";
id = <0>;
thermal_type = <0>;
#thermal-sensor-cells = <0>;
use-ipa-thermal;
use-power-budget = <1>;
polling_delay_on = <100>;
polling_delay_off = <3000>;
k_po = <1>;
k_pu = <1>;
k_i = <1>;
k_d = <0>;
i_max = <2>;
integral_cutoff = <10>;
sustainable_power = <9999>;
thermal_work_affinity = "0-8";
cdev_min_power = <230 200 350 90 0 0>;
use-thermalcontrol-limit = <1>;
clt_state_limit = <0 0 0 0 0 0>;
};
};
&modem_pas {
status = "disabled";
};
&mpss_dsm_mem {
status = "disabled";
};
&mpss_dsm_mem_2{
status = "disabled";
};
&mpss_mem{
status = "disabled";
};

View File

@@ -0,0 +1,184 @@
&soc {
bootloader_log {
compatible = "bootloader_log";
linux,contiguous-region = <&bootloader_log_mem>;
};
oplus-pmic-monitor-log {
compatible = "oplus,pmic-monitor-log";
nvmem = <&pmk8550_sdam_5>, <&pmk8550_sdam_6>;
nvmem-names = "pon_log0", "pon_log1";
};
dump_device_info {
compatible = "dump_device_info";
linux,contiguous-region = <&dump_device_info_mem>;
};
//#ifdef OPLUS_FEATURE_SECURITY_COMMON
/* 2022/08/29 add for oplus secure */
oplus_secure_common {
compatible = "oplus,secure_common";
oplus,sec_reg_num = <0x221C8C70>;
oplus,sec_en_anti_reg = <0x221C8314>;
oplus,sec_override1_reg = <0x221C8314>;
oplus,override1_en_value = <0x1>;
};
//#endif /*OPLUS_FEATURE_SECURITY_COMMON*/
//#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 */
};
&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";
};
ramoops_mem: ramoops_region {
compatible = "ramoops";
alloc-ranges = <0x0 0x00000000 0xffffffff 0xffffffff>;
size = <0x0 0x240000>;
pmsg-size = <0x200000>;
console-size = <0x40000>;
mem-type = <2>;
};
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;
};
//#endif /* CONFIG_OPLUS_FEATURE_QCOM_PMICWD */
};
/* add for not occupying display unused GPIO */
&display_panel_avdd {
status = "disabled";
};
/* Remove sdhc reference to L13B */
&sdhc_2 {
status = "disabled";
vdd-io-supply = <&L23B>;
qcom,vdd-io-voltage-level = <1800000 2960000>;
qcom,vdd-io-current-level = <0 22000>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&sdc2_on>;
pinctrl-1 = <&sdc2_off>;
cd-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>;
};
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
&apps_rsc_drv2 {
rpmh-regulator-ldom5 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldom5";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 30000>;
L5M:
pm8010m_l5: regulator-pm8010m-l5 {
regulator-name = "pm8010m_l5";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
};
rpmh-regulator-ldob14 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob14";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L14B:
pmxr2230_l14: regulator-pmxr2230-l14 {
regulator-name = "pmxr2230_l14";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <3008000>;
regulator-max-microvolt = <3200000>;
qcom,init-voltage = <3008000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
rpmh-regulator-ldob15 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob15";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L15B:
pmxr2230_l15: regulator-pmxr2230-l15 {
regulator-name = "pmxr2230_l15";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
rpmh-regulator-ldob13 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob13";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L13B:
pmxr2230_l13: regulator-pmxr2230-l13 {
regulator-name = "pmxr2230_l13";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1504000>;
regulator-max-microvolt = <3544000>;
qcom,init-voltage = <2700000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,126 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "corvette_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23814.dtsi"
#include "oplus_misc/oplus-misc-23814.dtsi"
#include "tp/corvette-oplus-tp-23814.dtsi"
#include "oplus_fp/oplus_fp_23814.dtsi"
#include "sensor/corvette-sensor-23814.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,corvette";
oplus,project-id = <23814>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB3 OPLUS_T0 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 = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 0>;
rf,cable-support-timer = <0>;
pinctrl-names = "rf_cable_active";
pinctrl-0 = <&rf_cable0_active>;
};
//#endif /* OPLUS_FEATURE_RF_CABLE_DETECT */
//#ifdef OPLUS_FEATRUE_DUAL_SIM_DETECT
oplus-gpio {
compatible = "oplus,oplus-gpio";
pinctrl-names = "sim2_det_no_pull", "sim2_det_pull_high", "sim2_det_pull_low";
pinctrl-0 = <&sim2_det_no_pull>;
pinctrl-1 = <&sim2_det_pull_high>;
pinctrl-2 = <&sim2_det_pull_low>;
oplus,oplus-sim2-det = <&pm8550vs_c_gpios 5 GPIO_ACTIVE_LOW>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /* OPLUS_FEATRUE_DUAL_SIM_DETECT */
};
&pm8550vs_c_gpios {
//#ifdef OPLUS_FEATRUE_DUAL_SIM_DETECT
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
//#endif OPLUS_FEATRUE_DUAL_SIM_DETECT
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};

View File

@@ -0,0 +1,72 @@
// Add the thermistors for shell-temp
&pmk8550_vadc {
pm8550_gpio03_therm {
reg = <PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
label = "pm8550_gpio03_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
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_gpio03_usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
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 */
oplus,f2fs {
seqzone {
switch = "supported";
};
};
};

View File

@@ -0,0 +1,97 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "giulia_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23851-T0.dtsi"
#include "oplus_fp/oplus_fp_23851_23867_23868_23869.dtsi"
#include "oplus_misc/oplus-misc-23851.dtsi"
#include "tp/giulia-oplus-tp-23851.dtsi"
#include "oplus_nfc/giulia_nfc.dtsi"
#include "sensor/giulia-sensor-23851.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,giulia-T0";
oplus,project-id = <23851>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_T0>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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";
pinctrl-0 = <&esim_gpio &esim_det_gpio &esim_en_gpio>;
oplus,oplus-gpio-esim = <&pm8550_gpios 9 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
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_gpio: esim_gpio {
pins = "gpio9";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <1>; /* 1.2V */
output-high;
};
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};

View File

@@ -0,0 +1,98 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "giulia_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23851.dtsi"
#include "oplus_chg/oplus-chg-23851-silicon-x24.dtsi"
#include "oplus_fp/oplus_fp_23851_23867_23868_23869.dtsi"
#include "oplus_misc/oplus-misc-23851.dtsi"
#include "tp/giulia-oplus-tp-23851.dtsi"
#include "oplus_nfc/giulia_nfc.dtsi"
#include "sensor/giulia-sensor-23851.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,giulia";
oplus,project-id = <23851>;
oplus,hw-id = <OPLUS_EVT1 OPLUS_DVT1 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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";
pinctrl-0 = <&esim_gpio &esim_det_gpio &esim_en_gpio>;
oplus,oplus-gpio-esim = <&pm8550_gpios 9 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
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_gpio: esim_gpio {
pins = "gpio9";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <1>; /* 1.2V */
output-high;
};
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};

View File

@@ -0,0 +1,99 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "region-id.h.dtsi"
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "giulia_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23851.dtsi"
#include "oplus_chg/oplus-chg-23867-pps.dtsi"
#include "oplus_fp/oplus_fp_23851_23867_23868_23869.dtsi"
#include "oplus_misc/oplus-misc-23851.dtsi"
#include "tp/giulia-oplus-tp-23851.dtsi"
#include "sensor/giulia-sensor-23851.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,giulia-T0-EU";
oplus,project-id = <23867>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_T0>;
oplus,region-id = <REGION_EU>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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";
pinctrl-0 = <&esim_gpio &esim_det_gpio &esim_en_gpio>;
oplus,oplus-gpio-esim = <&pm8550_gpios 9 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
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_gpio: esim_gpio {
pins = "gpio9";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <1>; /* 1.2V */
output-high;
};
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};

View File

@@ -0,0 +1,99 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "region-id.h.dtsi"
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "giulia_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23851-T0.dtsi"
#include "oplus_chg/oplus-chg-23867-pps.dtsi"
#include "oplus_fp/oplus_fp_23851_23867_23868_23869.dtsi"
#include "oplus_misc/oplus-misc-23851.dtsi"
#include "tp/giulia-oplus-tp-23851.dtsi"
#include "sensor/giulia-sensor-23851.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,giulia-T0";
oplus,project-id = <23867>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_T0>;
oplus,region-id = <REGION_UNKNOWN REGION_CN REGION_IN REGION_US REGION_APAC REGION_JP>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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";
pinctrl-0 = <&esim_gpio &esim_det_gpio &esim_en_gpio>;
oplus,oplus-gpio-esim = <&pm8550_gpios 9 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
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_gpio: esim_gpio {
pins = "gpio9";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <1>; /* 1.2V */
output-high;
};
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};

View File

@@ -0,0 +1,98 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "region-id.h.dtsi"
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "giulia_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-23851.dtsi"
#include "oplus_chg/oplus-chg-23867-pps.dtsi"
#include "oplus_fp/oplus_fp_23851_23867_23868_23869.dtsi"
#include "oplus_misc/oplus-misc-23851.dtsi"
#include "tp/giulia-oplus-tp-23851.dtsi"
#include "sensor/giulia-sensor-23851.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,giulia";
oplus,project-id = <23867>;
oplus,hw-id = <OPLUS_EVT1 OPLUS_DVT1 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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";
pinctrl-0 = <&esim_gpio &esim_det_gpio &esim_en_gpio>;
oplus,oplus-gpio-esim = <&pm8550_gpios 9 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-det = <&pm8550_gpios 11 GPIO_ACTIVE_LOW>;
oplus,oplus-esim-en = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
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_gpio: esim_gpio {
pins = "gpio9";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <1>; /* 1.2V */
output-high;
};
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};

View File

@@ -0,0 +1,72 @@
// Add the thermistors for shell-temp
&pmk8550_vadc {
pm8550_gpio03_therm {
reg = <PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
label = "pm8550_gpio03_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
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_gpio03_usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
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 */
oplus,f2fs {
seqzone {
switch = "supported";
};
};
};

View File

@@ -0,0 +1,94 @@
#include <dt-bindings/clock/qcom,rpmh.h>
&soc {
//add for nfc_chipset
nfc_chipset {
compatible = "oplus-nfc-chipset";
chipset-23871 = "pn560";
};
};
&tlmm {
nfc {
nfc_int_active: nfc_int_active {
/* active state */
mux {
/* GPIO 61 NFC Read Interrupt */
pins = "gpio61";
function = "gpio";
};
config {
pins = "gpio61";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
};
};
nfc_int_suspend: nfc_int_suspend {
/* sleep state */
mux {
/* GPIO 61 NFC Read Interrupt */
pins = "gpio61";
function = "gpio";
};
config {
pins = "gpio61";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
};
};
nfc_enable_active: nfc_enable_active {
mux {
pins = "gpio114";
function = "gpio";
};
config {
pins = "gpio114";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
};
};
nfc_enable_suspend: nfc_enable_suspend {
mux {
pins = "gpio114";
function = "gpio";
};
config {
pins = "gpio114";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
};
};
&qupv3_se9_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
#address-cells = <1>;
#size-cells = <0>;
nq@28 {
compatible = "qcom,sn-nci";
reg = <0x28>;
qcom,sn-irq = <&tlmm 61 0x00>;
qcom,sn-ven = <&tlmm 114 0x00>;
qcom,sn-clkreq = <&tlmm 115 0x00>;
qcom,sn-vdd-1p8-supply = <&L5B>;
qcom,sn-vdd-1p8-voltage = <1200000 1200000>;
qcom,sn-vdd-1p8-current = <157000>;
interrupt-parent = <&tlmm>;
interrupts = <61 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,94 @@
#include <dt-bindings/clock/qcom,rpmh.h>
&soc {
//add for nfc_chipset
nfc_chipset {
compatible = "oplus-nfc-chipset";
chipset-23803 = "SN220T";
};
};
&tlmm {
nfc {
nfc_int_active: nfc_int_active {
/* active state */
mux {
/* GPIO 61 NFC Read Interrupt */
pins = "gpio61";
function = "gpio";
};
config {
pins = "gpio61";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
};
};
nfc_int_suspend: nfc_int_suspend {
/* sleep state */
mux {
/* GPIO 61 NFC Read Interrupt */
pins = "gpio61";
function = "gpio";
};
config {
pins = "gpio61";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
};
};
nfc_enable_active: nfc_enable_active {
mux {
pins = "gpio114";
function = "gpio";
};
config {
pins = "gpio114";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
};
};
nfc_enable_suspend: nfc_enable_suspend {
mux {
pins = "gpio114";
function = "gpio";
};
config {
pins = "gpio114";
drive-strength = <2>; /* 2 MA */
bias-disable;
};
};
};
};
&qupv3_se9_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
#address-cells = <1>;
#size-cells = <0>;
nq@28 {
compatible = "qcom,sn-nci";
reg = <0x28>;
qcom,sn-irq = <&tlmm 61 0x00>;
qcom,sn-ven = <&tlmm 114 0x00>;
qcom,sn-clkreq = <&tlmm 115 0x00>;
qcom,sn-vdd-1p8-supply = <&L5B>;
qcom,sn-vdd-1p8-voltage = <1200000 1200000>;
qcom,sn-vdd-1p8-current = <157000>;
interrupt-parent = <&tlmm>;
interrupts = <61 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>;
};
};

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

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,400 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
&oplus_cpa {
/* format: <protocol_type power_w> */
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,cpa_region_cfg_no_pps {
oplus,region_id = /bits/ 8 <0x97>;
oplus,protocol_list = <CHG_PROTOCOL_PD 18
CHG_PROTOCOL_VOOC 100
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
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,impedance_unit = <&oplus_pps_impedance_unit>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <3000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <50>;
oplus,pps_strategy_normal_current = <3000>;
oplus,pps_over_high_or_low_current = <3000>;
oplus,pps_timeout_third = <10800>;
oplus,pps_timeout_oplus = <10800>;
oplus,pps_ibat_over_third = <4000>;
oplus,pps_ibat_over_oplus = <4000>;
oplus,pps_full_cool_sw_vbat = <4470>;
oplus,pps_full_normal_sw_vbat = <4470>;
oplus,pps_full_normal_hw_vbat = <4480>;
oplus,pps_full_ffc_vbat = <4520>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4470>;
oplus,pps_full_normal_sw_vbat_third= <4470>;
oplus,pps_full_normal_hw_vbat_third = <4480>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_r_default = <270 45 10 45 20 20 20>;
oplus,pps_rmos_mohm = <5>;
oplus,pps_r_limit = <150 100 80 70 30>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <3000 2000 2000 3000 3000 3000>;
oplus,pps_charge_strategy_soc = <0 20 35 50 75 85 90>;
oplus,pps_charge_strategy_temp = <0 50 120 200 350 440 530>;
oplus,pps_low_curr_full_strategy_temp = <0 200 350 440>;
pps_charge_low_curr_full {
strategy_temp_little_cool = <1550 4490 0
1450 4485 0
1350 4470 0
1250 4460 0
1150 4450 1>;
strategy_temp_normal_low = <1550 4490 0
1450 4485 0
1350 4470 0
1250 4460 0
1150 4450 1>;
strategy_temp_normal_high = <1750 4490 0
1650 4485 0
1550 4470 0
1450 4460 0
1350 4450 1>;
};
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 91>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <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_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 1440 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <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_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 1440 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <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_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 1440 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <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_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 1100 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <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_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 1100 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 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 1100 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 91>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_low = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1600 1 0>;
strategy_temp_warm = <11000 4130 1440 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_low = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1600 1 0>;
strategy_temp_warm = <11000 4130 1440 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_low = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1600 1 0>;
strategy_temp_warm = <11000 4130 1440 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_low = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1600 1 0>;
strategy_temp_warm = <11000 4130 1100 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 1800 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_low = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1600 1 0>;
strategy_temp_warm = <11000 4130 1100 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_low = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1450 1 0>;
strategy_temp_normal_high = <11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1600 1 0>;
strategy_temp_warm = <11000 4130 1100 1 0>;
};
};
};
};
//#endif OPLUS_FEATURE_CHG_BASIC

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,158 @@
#include "oplus-chg-23851.dtsi"
&tlmm {
maxim_active: maxim_active {
mux {
pins = "gpio105";
function = "gpio";
};
config {
pins = "gpio105";
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 105 0x00>;
gpio-addr-set-out = <0xF169000>;
gpio-addr-set-in = <0xF169000>;
gpio-addr-level_high = <0xF169004>;
gpio-addr-level_low = <0xF169004>;
gpio-addr-data-in = <0xF169004>;
gpio-addr-offset = <0x0>;
gpio-set-out-val = <0x1bc3>;
gpio-set-in-val = <0x19c3>;
gpio_level_high_val = <0x3>;
gpio_level_low_val = <0x0>;
oplus,batt_info = /bits/ 8 <0x36 0x31 0x31 0x33 0x30 0x33 0x30 0x30 0x30 0x31 0x31 0x39 /* 611303000119 */
0x36 0x31 0x31 0x33 0x30 0x33 0x30 0x30 0x30 0x31 0x32 0x30 /* 611303000120 */
0x36 0x31 0x31 0x33 0x30 0x33 0x30 0x30 0x30 0x30 0x36 0x33>; /* 611303000063 S2 SN */
oplus,ic_type = <OPLUS_CHG_IC_GAUGE>;
oplus,ic_index = <1>;
};
oplus_chg_core {
oplus-gauge {
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
>;
};
};
};
};
&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
>;
};
&oplus_mms_gauge {
oplus,voocphy_ic = <&oplus_virtual_vphy>;
};
&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 = <6000>;
oplus,ic_type = <OPLUS_CHG_IC_VIRTUAL_GAUGE>;
oplus,ic_index = <0>;
};
&oplus_chg_comm {
/delete-property/ oplus_spec,wired-aging-ffc-version;
/delete-property/ oplus_spec,wired-aging-ffc-offset-mv;
/delete-property/ oplus_spec,wired-aging-ffc-cycle-thr;
/delete-property/ oplus,smooth_switch;
/delete-property/ oplus,reserve_chg_soc;
/delete-property/ oplus,reserve_dis_soc;
};
&oplus_vooc {
/delete-property/ oplus,smart_chg_bcc_support;
};
&oplus_smart_charge {
/delete-property/ oplus,smart_chg_soh_support;
};
&oplus_monitor {
/delete-property/ track,gauge_status_ctrl;
/delete-property/ track,nominal_qmax1;
/delete-property/ track,nominal_fcc1;
/delete-property/ track,external_gauge_num;
/delete-property/ track,gauge_max_cell_vol;
/delete-property/ track,gauge_max_charge_curr;
/delete-property/ track,gauge_max_dischg_curr;
/delete-property/ track,gauge_min_cell_temp;
/delete-property/ track,gauge_max_cell_temp;
/delete-property/ track,gauge_lifetime_support;
};
&qupv3_se8_i2c {
status = "disabled";
};
/delete-node/ &bq27541_groups;
/delete-node/ &oplus_ext_gauge;
&oplus_sc8547d {
/delete-property/ oplus_spec,external_gauge_support;
};

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,485 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
&oplus_cpa {
/* format: <protocol_type power_w> */
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,impedance_unit = <&oplus_pps_impedance_unit>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <5000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <50>;
oplus,pps_strategy_normal_current = <5000>;
oplus,pps_over_high_or_low_current = <5000>;
oplus,pps_timeout_third = <10800>;
oplus,pps_timeout_oplus = <10800>;
oplus,pps_ibat_over_third = <6000>;
oplus,pps_ibat_over_oplus = <6000>;
oplus,pps_full_cool_sw_vbat = <4470>;
oplus,pps_full_normal_sw_vbat = <4470>;
oplus,pps_full_normal_hw_vbat = <4480>;
oplus,pps_full_ffc_vbat = <4520>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4470>;
oplus,pps_full_normal_sw_vbat_third= <4470>;
oplus,pps_full_normal_hw_vbat_third = <4480>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_r_default = <270 45 10 45 20 20 20>;
oplus,pps_rmos_mohm = <5>;
oplus,pps_r_limit = <150 100 80 70 30>;
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_charge_strategy_soc = <0 20 35 50 75 85 90>;
oplus,pps_charge_strategy_temp = <0 50 120 200 350 440 530>;
oplus,pps_low_curr_full_strategy_temp = <0 200 350 440>;
pps_charge_low_curr_full {
strategy_temp_little_cool = <1600 4540 0
1500 4535 0
1400 4520 0
1300 4510 0
1200 4500 1>;
strategy_temp_normal_low = <1600 4540 0
1500 4535 0
1400 4520 0
1300 4510 0
1200 4500 1>;
strategy_temp_normal_high = <1800 4540 0
1700 4535 0
1600 4520 0
1500 4510 0
1400 4500 1>;
};
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 91>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 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 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 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 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 2000 0 0
11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 91>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 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 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 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 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 2000 0 0
11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 3000 0 0
11000 4460 2500 0 0
11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4460 2000 0 0
11000 4470 1800 1 0>;
strategy_temp_normal_high = <11000 4460 2000 0 0
11000 4470 1900 1 0>;
strategy_temp_warm = <11000 4120 1500 0 0
11000 4130 1000 1 0>;
};
};
};
};
//#endif OPLUS_FEATURE_CHG_BASIC

View File

@@ -0,0 +1,18 @@
&oplus_cpa {
compatible = "oplus,cpa";
oplus,protocol_list = <CHG_PROTOCOL_VOOC 80
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
CHG_PROTOCOL_VOOC>;
oplus,cpa_region_cfg_power_pps {
oplus,region_id = /bits/ 8 <0x44 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>;
};
};

View File

@@ -0,0 +1,42 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
//BSP.CHG.Basic, 2024/3/13, Add for charging
#include "oplus-chg-23926.dtsi"
/delete-node/ &maxim_encryption_gauge;
/delete-node/ &maxim_encryption_gauge_groups;
&oplus_virtual_gauge {
oplus,gauge_ic = <&oplus_adsp_gauge &optiga_encryption_gauge>;
oplus,gauge_ic_func_group = <&adsp_gauge_groups &optiga_encryption_gauge_groups>;
};
&tlmm {
optiga_active: optiga_active {
mux {
pins = "gpio3";
function = "gpio";
};
config {
pins = "gpio3";
bias-pull-up;
drive-strength = <8>;
};
};
};
&soc {
optiga_encryption_gauge: optiga_gauge {
compatible = "oplus-optiga";
status = "ok";
pinctrl-names = "optiga_active";
pinctrl-0 = <&optiga_active>;
data-gpio = <&tlmm 3 0x00>;
cpu-id = <2>;
key-id = <1>;
oplus,ic_type = <OPLUS_CHG_IC_GAUGE>;
oplus,ic_index = <1>;
};
};
//#endif OPLUS_FEATURE_CHG_BASIC

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,472 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
&oplus_cpa {
/* format: <protocol_type power_w> */
oplus,protocol_list = <CHG_PROTOCOL_PPS 55
CHG_PROTOCOL_PD 18
CHG_PROTOCOL_VOOC 67
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PPS
CHG_PROTOCOL_PD
CHG_PROTOCOL_VOOC>;
oplus,cpa_region_cfg_no_pps {
oplus,region_id = /bits/ 8 <0xA1 0x1B 0x37 0x33 0x1A 0x38>;
oplus,protocol_list = <CHG_PROTOCOL_PD 18
CHG_PROTOCOL_VOOC 67
CHG_PROTOCOL_QC 18>;
oplus,default_protocol_list = <CHG_PROTOCOL_PD
CHG_PROTOCOL_VOOC>;
};
};
&battery_charger {
oplus_ap_pps: oplus,ap_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_ap_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,impedance_unit = <&oplus_pps_impedance_unit>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <5000>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <50>;
oplus,pps_strategy_normal_current = <5000>;
oplus,pps_over_high_or_low_current = <5000>;
oplus,pps_timeout_third = <10800>;
oplus,pps_timeout_oplus = <10800>;
oplus,pps_ibat_over_third = <12000>;
oplus,pps_ibat_over_oplus = <12000>;
oplus,pps_full_cool_sw_vbat = <4470>;
oplus,pps_full_normal_sw_vbat = <4470>;
oplus,pps_full_normal_hw_vbat = <4480>;
oplus,pps_full_ffc_vbat = <4520>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4470>;
oplus,pps_full_normal_sw_vbat_third= <4470>;
oplus,pps_full_normal_hw_vbat_third = <4480>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_r_default = <270 45 10 45 20 20 20>;
oplus,pps_rmos_mohm = <5>;
oplus,pps_r_limit = <150 100 80 70 30>;
oplus,pps_strategy_batt_high_temp = <410 420 430 400 410 420>;
oplus,pps_strategy_high_current = <3000 2000 2000 3000 3000 3000>;
oplus,pps_charge_strategy_soc = <0 20 35 50 75 85 90>;
oplus,pps_charge_strategy_temp = <0 50 120 200 350 440 530>;
oplus,pps_low_curr_full_strategy_temp = <0 200 350 440>;
pps_charge_low_curr_full {
strategy_temp_little_cool = <1500 4490 0
1400 4480 0
1300 4470 0
1200 4460 0
1100 4450 1>;
strategy_temp_normal_low = <1500 4490 0
1400 4480 0
1300 4470 0
1200 4460 0
1100 4450 1>;
strategy_temp_normal_high = <1600 4490 0
1400 4480 0
1300 4470 0
1200 4460 0
1100 4450 1>;
};
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 90>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_low {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_low {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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 {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4400 4000 0 0
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_normal_high = <11000 4400 4000 0 0
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_high {
strategy_temp_little_cold = <11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <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_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 1100 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 90>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_low {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_low {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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 {
strategy_temp_little_cold = <11000 4200 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4180 4000 0 0
11000 4455 3000 0 0
11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4200 5000 0 0
11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4250 5000 0 0
11000 4400 4000 0 0
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_normal_high = <11000 4250 5000 0 0
11000 4400 4000 0 0
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 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4400 3000 0 0
11000 4400 2500 0 0
11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4400 4000 0 0
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_normal_high = <11000 4400 4000 0 0
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_high {
strategy_temp_little_cold = <11000 4465 2000 0 0
11000 4465 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_cool = <11000 4455 2500 0 0
11000 4455 2000 0 0
11000 4455 1500 0 0
11000 4465 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <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_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 1100 1 0>;
};
};
};
};
//#endif OPLUS_FEATURE_CHG_BASIC

View File

@@ -0,0 +1,510 @@
//ifdef OPLUS_FEATURE_CHG_BASIC
&oplus_cpa {
/* format: <protocol_type power_w> */
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,cpa_region_cfg_power_pps {
oplus,region_id = /bits/ 8 <0x44>;
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,impedance_unit = <&oplus_pps_impedance_unit>;
oplus,target_vbus_mv = <11000>;
oplus,curr_max_ma = <5000>;
oplus,delta_vbus = <0 600>;
oplus,pps_warm_allow_vol = <4000>;
oplus,pps_warm_allow_soc = <50>;
oplus,pps_strategy_normal_current = <5000>;
oplus,pps_over_high_or_low_current = <5000>;
oplus,pps_timeout_third = <13782>;
oplus,pps_timeout_oplus = <13782>;
oplus,pps_ibat_over_third = <6400>;
oplus,pps_ibat_over_oplus = <6400>;
oplus,pps_full_cool_sw_vbat = <4470>;
oplus,pps_full_normal_sw_vbat = <4470>;
oplus,pps_full_normal_hw_vbat = <4480>;
oplus,pps_full_ffc_vbat = <4520>;
oplus,pps_full_warm_vbat = <4130>;
oplus,pps_full_cool_sw_vbat_third = <4470>;
oplus,pps_full_normal_sw_vbat_third= <4470>;
oplus,pps_full_normal_hw_vbat_third = <4510>;
oplus,pps_current_change_timeout = <100>;
oplus,pps_r_default = <270 45 10 45 20 20 20>;
oplus,pps_rmos_mohm = <5>;
oplus,pps_r_limit = <150 100 80 70 30>;
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_charge_strategy_soc = <0 20 35 50 75 85 90>;
oplus,pps_charge_strategy_temp = <0 50 120 200 350 440 530>;
oplus,pps_low_curr_full_strategy_temp = <0 200 350 440>;
pps_charge_low_curr_full {
strategy_temp_little_cool = <1700 4540 0
1600 4535 0
1500 4520 0
1400 4510 0
1300 4500 1>;
strategy_temp_normal_low = <1700 4540 0
1600 4535 0
1500 4520 0
1400 4510 0
1300 4500 1>;
strategy_temp_normal_high = <1900 4540 0
1800 4535 0
1700 4520 0
1600 4510 0
1500 4500 1>;
};
pps_charge_third_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 90>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 2000 0 0
11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <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_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 1100 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_high = <11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1100 1 0>;
};
};
pps_charge_oplus_strategy {
oplus,temp_type = <OPLUS_STRATEGY_USE_SHELL_TEMP>;
oplus,soc_range = <0 20 35 50 75 85 90>;
oplus,temp_range = <0 50 120 200 350 440 530>;
strategy_soc_range_min {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_mid_low {
strategy_temp_little_cold = <11000 4150 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4150 3500 0 0
11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1800 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_mid {
strategy_temp_little_cold = <11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4350 3000 0 0
11000 4350 2500 0 0
11000 4350 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_low = <11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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_normal_high = <11000 4460 5000 0 0
11000 4460 4500 0 0
11000 4460 4000 0 0
11000 4460 3500 0 0
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 1100 1 0>;
};
strategy_soc_range_mid_high {
strategy_temp_little_cold = <11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 2000 0 0
11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <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_normal_low = <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_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 1100 1 0>;
};
strategy_soc_range_high {
strategy_temp_little_cold = <11000 4470 1000 1 0>;
strategy_temp_cool = <11000 4460 1500 1 0
11000 4470 1000 1 0>;
strategy_temp_little_cool = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_low = <11000 4460 2000 0 0
11000 4460 1500 0 0
11000 4470 1000 1 0>;
strategy_temp_normal_high = <11000 4470 1000 1 0>;
strategy_temp_warm = <11000 4130 1100 1 0>;
};
};
};
};
//#endif OPLUS_FEATURE_CHG_BASIC

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,493 @@
//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_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)
/* 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)
/* 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)
/* 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_SET_SEAL_FLAG (OPLUS_IC_FUNC_NUM_GAUGE_START + 91)
/* 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 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 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
//endif OPLUS_FEATURE_CHG_BASIC

View File

@@ -0,0 +1,57 @@
&soc {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev {
status = "ok";
compatible = "oplus,fp_spi";
interrupt-parent = <&tlmm>;
interrupts = <92 0>;
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_irq = <&tlmm 92 0x1>;
uff,gpio_reset = <&tlmm 89 0x0>;
pinctrl-names = "default";
pinctrl-0 = <&fp_irq_gpio_default>,<&fp_reset_gpio_default>;
notify_tpinfo_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_irq_gpio_default: fp_irq_gpio_default {
mux {
pins = "gpio92";
function = "gpio";
};
config {
pins = "gpio92";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
fp_reset_gpio_default: fp_reset_gpio_default {
mux {
pins = "gpio89";
function = "gpio";
};
config {
pins = "gpio89";
drive-strength = <2>;
bias-disable;
output-low;
};
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};

View File

@@ -0,0 +1,57 @@
&soc {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev {
status = "ok";
compatible = "oplus,fp_spi";
interrupt-parent = <&tlmm>;
interrupts = <21 0>;
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_irq = <&tlmm 21 0x1>;
uff,gpio_reset = <&tlmm 55 0x0>;
pinctrl-names = "default";
pinctrl-0 = <&fp_irq_gpio_default>,<&fp_reset_gpio_default>;
notify_tpinfo_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_irq_gpio_default: fp_irq_gpio_default {
mux {
pins = "gpio21";
function = "gpio";
};
config {
pins = "gpio21";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
fp_reset_gpio_default: fp_reset_gpio_default {
mux {
pins = "gpio55";
function = "gpio";
};
config {
pins = "gpio55";
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 = <&L14B>;
ldo-config = <3008000 3008000 150000>;
uff,gpio_reset = <&tlmm 89 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 = "gpio89";
function = "gpio";
};
config {
pins = "gpio89";
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 = <&L14B>;
ldo-config = <3008000 3008000 150000>;
uff,gpio_reset = <&tlmm 89 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 = "gpio89";
function = "gpio";
};
config {
pins = "gpio89";
drive-strength = <2>;
bias-disable;
output-low;
};
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};

View File

@@ -0,0 +1,57 @@
&soc {
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
fingerprint_dev {
status = "ok";
compatible = "oplus,fp_spi";
interrupt-parent = <&tlmm>;
interrupts = <21 0>;
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_irq = <&tlmm 21 0x1>;
uff,gpio_reset = <&tlmm 55 0x0>;
pinctrl-names = "default";
pinctrl-0 = <&fp_irq_gpio_default>,<&fp_reset_gpio_default>;
notify_tpinfo_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_irq_gpio_default: fp_irq_gpio_default {
mux {
pins = "gpio21";
function = "gpio";
};
config {
pins = "gpio21";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
fp_reset_gpio_default: fp_reset_gpio_default {
mux {
pins = "gpio55";
function = "gpio";
};
config {
pins = "gpio55";
drive-strength = <2>;
bias-disable;
output-low;
};
};
};
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
};

View File

@@ -0,0 +1,36 @@
&pm8550b_haptics {
qcom,vmax-mv = <2400>;
qcom,cl-vmax-mv = <2400>;
qcom,lra-period-us = <7692>;
qcom,fifo-vmax-mv = <7900>;
qcom,old-steady-vmax-mv = <7900>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <9999>;//luxun
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pm8550b_eusb2_repeater {
qcom,param-override-seq = <0x0b 0x51 0x07 0x53 0x06 0x54 0x03 0x55 0x03 0x57>;
qcom,param-override-seq-host = <0x0b 0x51 0x07 0x53 0x06 0x54 0x03 0x55 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;
};
};

View File

@@ -0,0 +1,36 @@
&pm8550b_haptics {
qcom,vmax-mv = <1720>;
qcom,cl-vmax-mv = <1720>;
qcom,lra-period-us = <7692>;
qcom,fifo-vmax-mv = <7800>;
qcom,old-steady-vmax-mv = <7800>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <9999>;//luxun
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pm8550b_eusb2_repeater {
qcom,param-override-seq = <0x0b 0x51 0x07 0x53 0x06 0x54 0x03 0x55 0x03 0x57>;
qcom,param-override-seq-host = <0x0b 0x51 0x07 0x53 0x06 0x54 0x03 0x55 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;
};
};

View File

@@ -0,0 +1,93 @@
&pm7550ba_eusb2_repeater {
qcom,param-override-seq = <0x0f 0x51 0x06 0x53 0x02 0x54 0x06 0x57>;
qcom,param-override-seq-host = <0x0b 0x51 0x06 0x53 0x02 0x54 0x07 0x57>;
};
&usb0 {
dwc3@a600000 {
maximum-speed = "high-speed";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&tlmm {
aw_haptics: aw_haptics {
aw_irq_gpio_default: aw_irq_gpio_default {
mux {
pins = "gpio145";
function = "gpio";
};
config {
pins = "gpio145";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
};
};
&pm7550ba_vib {
status = "disabled";
};
&qupv3_se3_i2c {
qcom,clk-freq-out = <1000000>;
status = "ok";
/* AWINIC AW8697 Haptic */
aw8697_haptic@5A {
compatible = "awinic,aw8697_haptic";
reg = <0x5A>;
reset-gpio = <&tlmm 147 0>;
irq-gpio = <&tlmm 145 0>;
status = "ok";
qcom,device_id = <809>; /* 809 */
/* haptic ic : aw86927 */
oplus,aw86927_boost_voltage = <80>; /* 0x50 */
haptic_hv_vmax = /bits/ 8 < 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2C 0x30 0x34 0x38 0x3C 0x40 0x44 0x48 0x4C 0x50 >;
haptic_hv_gain = /bits/ 8 < 0x49 0x51 0x5A 0x62 0x6B 0x73 0x7C 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 >;
pinctrl-names = "default";
pinctrl-0 = <&aw_irq_gpio_default>;
oplus,livetap_support;
oplus,auto_break_mode_support;
oplus,d2s_gain = /bits/ 8 <0x6>;
oplus,brk_time = /bits/ 8 <0x6>;
oplus,brk_gain = /bits/ 8 <0x8>;
};
/* AWINIC AW8697 Haptic End */
// SIH6887 Haptic
sih_haptic_688x@6B {
compatible = "silicon,sih_haptic_688X";
reg = <0x6B>;
reset-gpio = <&tlmm 147 0x0>;
irq-gpio = <&tlmm 145 0x0>;
qcom,device_id = <809>;
lra_name = "0809";
pinctrl-names = "default";
pinctrl-0 = <&aw_irq_gpio_default>;
oplus,sih6887_boost_voltage = <91>; /* 9.1v */
haptic_vmax = /bits/ 8 < 60 60 60 60 60 60 60 60 62 66 70 74 79 83 86 90 91 >;
haptic_gain = /bits/ 8 < 0x40 0x49 0x51 0x5A 0x62 0x6B 0x73 0x7C 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 >;
oplus,livetap_support;
status = "okay";
};
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&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>;
};

View File

@@ -0,0 +1,71 @@
&pm8550b_haptics {
qcom,vmax-mv = <2400>;
qcom,cl-vmax-mv = <2400>;
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-fifo-vmax-mv = <6700>;
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pm8550b_eusb2_repeater {
qcom,param-override-seq = <0x0f 0x51 0x07 0x53 0x02 0x54 0x03 0x55 0x07 0x57>;
qcom,param-override-seq-host = <0x08 0x51 0x07 0x53 0x06 0x54 0x01 0x55 0x03 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>;
};
&pm8550b_bcl {
compatible = "qcom,bcl-v5";
bcl,support_track;
};
&pm8550_bcl {
compatible = "qcom,bcl-v5";
bcl,support_track;
};

View File

@@ -0,0 +1,74 @@
&pm8550b_haptics {
qcom,vmax-mv = <1260>;
qcom,cl-vmax-mv = <1260>;
qcom,lra-period-us = <5882>;
qcom,fifo-vmax-mv = <7700>;
qcom,old-steady-vmax-mv = <7700>;
qcom,brake-mode = <BRAKE_OPEN_LOOP>;
qcom,cal-data-restore;
qcom,fifo-empty-threshold = <480>;
qcom,vibrator-type = <809>;//0809
oplus,livetap_support;
qcom,vbat-low-soc = <5>;
qcom,vbat-low-soc-cold = <20>;
qcom,vbat-low-temp = <(-50)>;/*-5C*/
qcom,vbat-low-fifo-vmax-mv = <6800>;
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&pm8550b_eusb2_repeater {
qcom,param-override-seq = <0x0f 0x51 0x07 0x53 0x04 0x54 0x03 0x55 0x07 0x57>;
qcom,param-override-seq-host = <0x0b 0x51 0x07 0x53 0x04 0x54 0x03 0x55 0x07 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>;
};
&pm8550b_bcl {
compatible = "qcom,bcl-v5";
bcl,support_track;
};
&pm8550_bcl {
compatible = "qcom,bcl-v5";
bcl,support_track;
};

View File

@@ -0,0 +1,41 @@
&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>;
};
&pm8550b_eusb2_repeater {
qcom,param-override-seq = <0x0d 0x51 0x06 0x53 0x06 0x54 0x03 0x57>;
qcom,param-override-seq-host = <0x0d 0x51 0x06 0x53 0x04 0x54 0x03 0x57>;
};
&wcd_usbss {
qcom,wcd_usbss_equalizer1 = /bits/ 8 <0xa>;
};
&usb0 {
qcom,wcd_usbss = <&wcd_usbss>;
dwc3@a600000 {
maximum-speed = "super-speed";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};

View File

@@ -0,0 +1,99 @@
&pm7550ba_eusb2_repeater {
qcom,param-override-seq = <0x0f 0x51 0x06 0x53 0x02 0x54 0x03 0x55 0x06 0x57>;
qcom,param-override-seq-host = <0x08 0x51 0x06 0x53 0x01 0x54 0x0 0x55 0x05 0x57>;
};
&usb0 {
dwc3@a600000 {
maximum-speed = "high-speed";
snps,usb2-lpm-disable;
snps,usb2-gadget-lpm-disable;
};
};
&tlmm {
aw_haptics: aw_haptics {
aw_irq_gpio_default: aw_irq_gpio_default {
mux {
pins = "gpio145";
function = "gpio";
};
config {
pins = "gpio145";
drive-strength = <2>;
input-enable;
bias-pull-up;
};
};
};
};
&pm7550ba_vib {
status = "disabled";
};
&qupv3_se3_i2c {
qcom,clk-freq-out = <1000000>;
status = "ok";
/* AWINIC AW8697 Haptic */
aw8697_haptic@5A {
compatible = "awinic,aw8697_haptic";
reg = <0x5A>;
reset-gpio = <&tlmm 147 0>;
irq-gpio = <&tlmm 145 0>;
status = "ok";
qcom,device_id = <809>; /* 809 */
/* haptic ic : aw86927 */
oplus,aw86927_boost_voltage = <88>; /* 0x50 */
haptic_hv_vmax = /bits/ 8 < 0x28 0x28 0x28 0x28 0x28 0x2C 0x30 0x34 0x38 0x3C 0x40 0x44 0x48 0x4C 0x50 0x54 0x58 >;
haptic_hv_gain = /bits/ 8 < 0x49 0x51 0x5A 0x62 0x6B 0x73 0x7C 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 >;
pinctrl-names = "default";
pinctrl-0 = <&aw_irq_gpio_default>;
oplus,livetap_support;
oplus,auto_break_mode_support;
oplus,d2s_gain = /bits/ 8 <0x6>;
oplus,brk_time = /bits/ 8 <0x6>;
oplus,brk_gain = /bits/ 8 <0x8>;
};
/* AWINIC AW8697 Haptic End */
// SIH6887 Haptic
sih_haptic_688x@6B {
compatible = "silicon,sih_haptic_688X";
reg = <0x6B>;
reset-gpio = <&tlmm 147 0x0>;
irq-gpio = <&tlmm 145 0x0>;
qcom,device_id = <809>;
lra_name = "0809";
pinctrl-names = "default";
pinctrl-0 = <&aw_irq_gpio_default>;
oplus,sih6887_boost_voltage = <88>; /* 8.8v */
haptic_vmax = /bits/ 8 < 60 60 60 60 60 62 64 67 69 71 74 76 78 81 83 85 88 >;
haptic_gain = /bits/ 8 < 0x49 0x51 0x5A 0x62 0x6B 0x73 0x7C 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 0x80 >;
oplus,livetap_support;
status = "okay";
};
};
&soc {
feedback_fb: feedback_fb {
compatible = "oplus,haptic-feedback";
};
};
&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>;
periph-c40-supply = <0>;
periph-c41-supply = <0>;
periph-c42-supply = <0>;
periph-c43-supply = <0>;
periph-c45-supply = <0>;
periph-c46-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-23851 = "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 177 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,139 @@
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interconnect/qcom,pineapple.h>
&tlmm {
qupv3_se7_2uart_tx_active: qupv3_se7_2uart_tx_active {
mux {
pins = "gpio62";
function = "qup1_se7_l2";
};
config {
pins = "gpio62";
drive-strength = <8>;
bias-disable;
};
};
};
&qupv3_1 {
qupv3_se7_2uart: qcom,qup_uart@a9c000 {
compatible = "qcom,msm-geni-serial-hs";
reg = <0xa9c000 0x4000>;
reg-names = "se_phys";
interrupts-extended = <&intc GIC_SPI 579 IRQ_TYPE_LEVEL_HIGH>,
<&tlmm 63 IRQ_TYPE_NONE>;
clock-names = "se-clk";
clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>;
interconnect-names = "qup-core", "qup-config", "qup-memory";
interconnects =
<&clk_virt MASTER_QUP_CORE_1 &clk_virt SLAVE_QUP_CORE_1>,
<&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>,
<&aggre1_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&qupv3_se7_2uart_tx_active>;
pinctrl-1 = <&qupv3_se7_2uart_tx_active>;
qcom,wakeup-byte = <0xFD>;
qcom,auto-suspend-disable;
status = "ok";
};
};
&tlmm {
uart_rx_set: uart_rx_set {
mux {
pins = "gpio63";
function = "qup1_se7_l3";
};
config {
pins = "gpio63";
drive-strength = <2>;
bias-disable;
};
};
uart_rx_clear: uart_rx_clear {
mux {
pins = "gpio63";
function = "gpio";
};
config {
pins = "gpio63";
drive-strength = <2>;
input-enable;
bias-disable;
};
};
uart_wake_gpio: uart_wake_gpio {
mux {
pins = "gpio137";
function = "gpio";
};
config {
pins = "gpio137";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
pogo_power_enable: pogo_power_enable {
mux {
pins = "gpio100";
function = "gpio";
};
config {
pins = "gpio100";
output-high;
};
};
pogo_power_disable: pogo_power_disable {
mux {
pins = "gpio100";
function = "gpio";
};
config {
pins = "gpio100";
output-low;
};
};
};
&soc {
pogo_keyboard {
compatible = "tinno,pogo_keyboard";
status = "ok";
uart-tx-en-gpio = <&tlmm 14 0x00>;
uart-wake-gpio = <&tlmm 137 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 =
"OPPO Pad 3 Pro Keyboard(Pogo Pin)",
"OnePlus Pad Pro Keyboard(Pogo Pin)",
"OnePlus Pad Smart Keyboard(Pogo Pin)";
keyboard-ble-name-strings =
"OPPO Pad 3 Pro Keyboard",
"OnePlus Pad Pro Keyboard",
"OnePlus Pad Smart Keyboard";
touchpad-xy-max = <2764 1630>;
};
};

View File

@@ -0,0 +1,108 @@
&soc {
bootloader_log {
compatible = "bootloader_log";
linux,contiguous-region = <&bootloader_log_mem>;
};
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";
};
//#ifdef CONFIG_OPLUS_OMRG
oplus-omrg {
compatible = "oplus,oplus-omrg";
oplus-omrg0 {
oplus,divider-cells = <2>;
oplus,omrg-master = <&CPU5 1497600 1920000>, <&CPU2 1497600 1920000>;
oplus,omrg-slave = <&CPU0 1459200 1804800>;
master_vote_max;
up_limit_enable;
/* down_limit_enable; */
/* thermal_enable; */
};
};
//#endif
dump_device_info {
compatible = "dump_device_info";
linux,contiguous-region = <&dump_device_info_mem>;
};
//#ifdef OPLUS_FEATURE_SECURITY_COMMON
/* 2022/08/29 add for oplus secure */
oplus_secure_common {
compatible = "oplus,secure_common";
oplus,sec_reg_num = <0x221C8C70>;
oplus,sec_en_anti_reg = <0x221C8314>;
oplus,sec_override1_reg = <0x221C8314>;
oplus,override1_en_value = <0x1>;
};
//#endif /*OPLUS_FEATURE_SECURITY_COMMON*/
/*Do not delete pcie1 node, will caused probe failed issue.*/
pcie1: qcom,pcie@1c08000 {
status = "disabled";
};
};
&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";
};
};
&ramoops_mem {
alloc-ranges = <0x0 0x00000000 0xffffffff 0xffffffff>;
size = <0x0 0x240000>;
pmsg-size = <0x200000>;
console-size = <0x40000>;
mem-type = <2>;
};
&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 */
};
&soc {
oplus_kernel_state_monitor {
compatible = "oplus,kernel_state_monitor";
};
};

189
oplus/platform_map.bzl Normal file
View File

@@ -0,0 +1,189 @@
_platform_map = {
"autoghgvm": {
"dtb_list": [
],
"dtbo_list": [
],
},
"autogvm": {
"dtb_list": [
],
"dtbo_list": [
],
},
"gen3auto": {
"dtb_list": [
],
"dtbo_list": [
],
},
"gen4auto": {
"dtb_list": [
],
"dtbo_list": [
],
},
"sdmsteppeauto": {
"dtb_list": [
],
"dtbo_list": [
],
},
"kalama": {
"dtb_list": [
],
"dtbo_list": [
],
},
"kalama-tuivm": {
"dtb_list": [
],
},
"kalama-oemvm": {
"dtb_list": [
],
},
"pineapple": {
"dtb_list": [
{"name": "pineapple.dtb"},
{"name": "pineapple-v2.dtb"},
{
"name": "pineapplep.dtb",
"apq": True,
},
{
"name": "pineapplep-v2.dtb",
"apq": True,
},
],
"dtbo_list": [
{"name": "waffle-22825-pineapple-overlay.dtbo"},
{"name": "waffle-22825-pineapple-overlay-EVB.dtbo"},
{"name": "waffle-22825-pineapple-overlay-EVT1.dtbo"},
{"name": "waffle-22877-pineapple-overlay.dtbo"},
{"name": "waffle-22877-pineapple-overlay-EVB.dtbo"},
{"name": "waffle-22877-pineapple-overlay-EVT1.dtbo"},
{"name": "corvette-23814-pineapple-overlay.dtbo"},
{"name": "caihong-23926-pineapple-overlay.dtbo"},
{"name": "caihong-23976-pineapple-overlay.dtbo"},
{"name": "caihong-23926-pineapple-overlay-T0.dtbo"},
{"name": "caihong-23976-pineapple-overlay-T0.dtbo"},
{"name": "giulia-23851-pineapple-overlay-T0.dtbo"},
{"name": "giulia-23851-pineapple-overlay.dtbo"},
{"name": "giulia-23867-pineapple-overlay-T0.dtbo"},
{"name": "giulia-23867-pineapple-overlay-T0-EU.dtbo"},
{"name": "giulia-23867-pineapple-overlay.dtbo"},
],
"binary_compatible_with": ["cliffs", "volcano"],
},
"niobe": {
"dtb_list": [
],
"dtbo_list": [
],
},
"cliffs": {
"dtb_list": [
{"name": "cliffs.dtb"},
{"name": "cliffs7.dtb"},
],
"dtbo_list": [
{"name": "audi-23803-cliffs-overlay.dtbo"},
{"name": "audi-23865-cliffs-overlay.dtbo"},
{"name": "avalon-24211-cliffs-overlay.dtbo"},
],
},
"volcano": {
"dtb_list": [
{"name": "volcano.dtb"},
{"name": "volcano6.dtb"},
],
"dtbo_list": [
],
},
"pineapple-tuivm": {
"dtb_list": [
],
},
"pineapple-oemvm": {
"dtb_list": [
],
},
"blair": {
"dtb_list": [
],
"dtbo_list": [
],
},
"pitti": {
"dtb_list": [
],
"dtbo_list": [
],
},
"niobe-tuivm": {
"dtb_list": [
{"name": "niobe-vm-idp.dtb"},
{"name": "niobep-vm-idp.dtb"},
],
},
"anorak": {
"dtb_list": [
{"name": "anorak.dtb"},
],
},
}
def _get_dtb_lists(target, dt_overlay_supported):
if not target in _platform_map:
fail("{} not in device tree platform map!".format(target))
ret = {
"dtb_list": [],
"dtbo_list": [],
}
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,108 @@
/**********************************************************************************
* 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_se11_i2c {
status = "disabled";
};
&qupv3_se11_spi {
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se11_spi_mosi_active>;
pinctrl-1 = <&qupv3_se11_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>;
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";
als-row-coe = <250>; /* old underLCD mode need config in dtsi */
/*virtual sensor*/
mag_fusion {
sensor-type = <6>;//OPLUS_MAG_FUSION
is-virtual-sensor;
fusion-type = <1>;//AKM_FUSION
fold-feature = <1>;
};
};
consumer_ir_core {
compatible = "oplus,kookong_ir_core";
status = "okay";
vdd-type = <0>; /*0: internal LDO , 1: external LOD*/
vdd-supply = <&L13B>;
vdd-min-vol = <3008000>;
vdd-max-vol = <3008000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
&tlmm {
qupv3_se11_spi_pins: qupv3_se11_spi_pins {
qupv3_se11_spi_mosi_active: qupv3_se11_spi_mosi_active {
mux {
pins = "gpio45";
function = "qup1_se3_l1";
};
config {
pins = "gpio45";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se11_spi_sleep: qupv3_se11_spi_sleep {
mux {
pins = "gpio45";
function = "gpio";
};
config {
pins = "gpio45";
drive-strength = <2>;
bias-disable;
};
};
};
};
//add for oplus consumerIr SPI mode
&qupv3_se11_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>;
};
};

View File

@@ -0,0 +1,108 @@
/**********************************************************************************
* 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_se11_i2c {
status = "disabled";
};
&qupv3_se11_spi {
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_se11_spi_mosi_active>;
pinctrl-1 = <&qupv3_se11_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>;
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";
als-row-coe = <250>; /* old underLCD mode need config in dtsi */
/*virtual sensor*/
mag_fusion {
sensor-type = <6>;//OPLUS_MAG_FUSION
is-virtual-sensor;
fusion-type = <1>;//AKM_FUSION
fold-feature = <1>;
};
};
consumer_ir_core {
compatible = "oplus,kookong_ir_core";
status = "okay";
vdd-type = <0>; /*0: internal LDO , 1: external LOD*/
vdd-supply = <&L13B>;
vdd-min-vol = <3008000>;
vdd-max-vol = <3008000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
&tlmm {
qupv3_se11_spi_pins: qupv3_se11_spi_pins {
qupv3_se11_spi_mosi_active: qupv3_se11_spi_mosi_active {
mux {
pins = "gpio45";
function = "qup1_se3_l1";
};
config {
pins = "gpio45";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se11_spi_sleep: qupv3_se11_spi_sleep {
mux {
pins = "gpio45";
function = "gpio";
};
config {
pins = "gpio45";
drive-strength = <2>;
bias-disable;
};
};
};
};
//add for oplus consumerIr SPI mode
&qupv3_se11_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>;
};
};

View File

@@ -0,0 +1,25 @@
/**********************************************************************************
* 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>
***********************************************************************************/
&soc {
//#ifdef OPLUS_FEATURE_SENSOR_SMEM
sensor_fb: sensor_fb {
compatible = "oplus,sensor-feedback";
master-id = <3>;
smem-id = <608>;
};
oplus_sensor {
compatible = "oplus,sensor-devinfo";
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};

View File

@@ -0,0 +1,86 @@
/**********************************************************************************
* Copyright (c) 2022-2024 Guangdong oplus Mobile Comm Corp., Ltd
* Description: oplus sensor dtsi
*
* Version: 1.0
* Date: 2023-12-20
*
* ------------------------------ 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>;
report_blank_mode = <1>;
receive_screenshot_info = <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 = <1>;//AKM_FUSION
fold-feature = <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 = <3200000>;
vdd-max-vol = <3200000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
//add for oplus consumerIr SPI mode
&qupv3_se11_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 = <3160000>;
qcom,init-voltage = <2960000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,86 @@
/**********************************************************************************
* Copyright (c) 2022-2024 Guangdong oplus Mobile Comm Corp., Ltd
* Description: oplus sensor dtsi
*
* Version: 1.0
* Date: 2023-12-20
*
* ------------------------------ 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>;
report_blank_mode = <1>;
receive_screenshot_info = <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 = <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 = <3200000>;
vdd-max-vol = <3200000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
//add for oplus consumerIr SPI mode
&qupv3_se11_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 = <3160000>;
qcom,init-voltage = <2960000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,85 @@
/**********************************************************************************
* 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>;
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 = <3100000>;
vdd-max-vol = <3100000>;
};
//#endif /*OPLUS_FEATURE_SENSOR_SMEM*/
};
//add for oplus consumerIr SPI mode
&qupv3_se11_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 = <3160000>;
qcom,init-voltage = <2960000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
};

View File

@@ -0,0 +1,482 @@
&qupv3_se0_i2c {
status = "ok";
qcom,clk-freq-out = <400000>;
/delete-node/ magnachip@0D;
/delete-node/ magnachip@0C;
/delete-node/ ist8801@19;
/delete-node/ ist8801@18;
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 = <&L11B>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <136 0x02>;
threeaxis_hall_support;
dhall,irq-gpio = <&tlmm 136 0x2008>;
pinctrl-names = "hall_interrupt_input";
pinctrl-0 = <&hall_interrupt_input>;
turn_upside_down;
interf_stable_limit = <700 700 700>;
interf_judege_limit = <4000 2000>;
interf_up_tolen = <2500 2000 2500 2000>;
interf_mid_tolen = <2500 2000 2500 2000>;
interf_down_tolen = <2500 2000 2500 2000>;
position_judge_tolen = <3300 3300>;
default_position_xtolen = <2500 2500>;
exception_upload_support;
health_monitor_support;
};
};
&soc {
devinfo {
status = "disabled";
};
devinfo_salami {
status = "disabled";
};
devinfo_waffle {
status = "disabled";
};
devinfo_audi {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio0_sleep>;
pinctrl-2 = <&aboard_pin_gpio0_active>;
pinctrl-3 = <&aboard_pin_gpio0_idle>;
main-sub {
compatible = "hw-match, main-sub";
use_tristate_gpio;
aboard-gpio0 = <&tlmm 97 0>;
aboard-patterns = <0 0 1>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
/*region id*/
region-patterns = <1 2 3>;
/*main board*/
match-projects = <23803 23865 23865>;
};
};
};
&pmxr2230_gpios {
/delete-node/ key_vol_up;
key_vol_up {
key_vol_up_default: key_vol_up_default {
pins = "gpio6";
function = "normal";
input-enable;
power-source = <1>;
};
};
};
&qupv3_se4_i2c {
status = "disabled";
};
&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 = <129 0x2008>;
/* Power Config */
vdd_2v8-supply = <&L22B>;
vcc_1v8-supply = <&L5M>;
vdd_2v8_volt = <3008000>;
/* Other HW Resource */
irq-gpio = <&tlmm 129 0x2008>;
reset-gpio = <&tlmm 128 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <16 36>;
earsense,tx-rx-num = <17 18>;
touchpanel,panel-coords = <12400 27720>;
touchpanel,display-coords = <1240 2772>;
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>;
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 = <7 7 7>;
// type of tp_dev ,TP-SAMSUNG = 8;
platform_support_project = <23803 23865 23866>;
platform_support_project_dir = <23803 23803 23803>;
platform_support_project_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{
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 = <129 0x2008>;
/* Power Config */
vdd-supply = <&L22B>;
vcc-supply = <&L5M>;
synaptics,avdd-name = "vdd";
synaptics,vdd-name = "vcc";
/* Other HW Resource */
synaptics,irq-gpio = <&tlmm 129 0x2008>;
synaptics,reset-gpio = <&tlmm 128 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,panel-coords = <19840 44352>;
touchpanel,tx-rx-num = <16 36>;
panel_type = <7 7 7>;
firmware_name = "AH553";
platform_support_project = <23803 23865 23866>;
platform_support_project_dir = <23803 23803 23803>;
platform_support_project_commandline = "mdss_dsi_panel_AA553_P_7_A0001_dsc_cmd", "default_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;
};
};
&tlmm {
/delete-node/ pmx_ts_reset_suspend;
/delete-node/ pmx_ts_int_suspend;
/delete-node/ pmx_ts_release;
/delete-node/ pmx_ts_active;
gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <2 6 7 20 24 25 30 31 34 44 54 66 67 69 74 75 78 98 99 101 102 103 104 107 108 109 110 111 112 119 130 133 135 138 148 153 157 166 167 171>;
};
pmx_ts_int_active {
ts_int_active: ts_int_active {
mux {
pins = "gpio129";
function = "gpio";
};
config {
pins = "gpio129";
drive-strength = <8>;
bias-disable;
input-enable;
};
};
};
pmx_ts_reset_active {
ts_reset_active: ts_reset_active {
mux {
pins = "gpio128";
function = "gpio";
};
config {
pins = "gpio128";
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 = "gpio16";
function = "qup0_se4_l0";
};
config {
pins = "gpio16";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_mosi_active: qupv3_se4_spi_mosi_active {
mux {
pins = "gpio17";
function = "qup0_se4_l1";
};
config {
pins = "gpio17";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_clk_active: qupv3_se4_spi_clk_active {
mux {
pins = "gpio18";
function = "qup0_se4_l2";
};
config {
pins = "gpio18";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_active: qupv3_se4_spi_cs_active {
mux {
pins = "gpio19";
function = "qup0_se4_l3";
};
config {
pins = "gpio19";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio16", "gpio17",
"gpio18";
function = "gpio";
};
config {
pins = "gpio16", "gpio17",
"gpio18";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio19";
function = "gpio";
};
config {
pins = "gpio19";
drive-strength = <6>;
bias-disable;
output-high;
};
};
};
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio0_sleep:aboard_pin_gpio0_sleep {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio0_active:aboard_pin_gpio0_active {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio0_idle:aboard_pin_gpio0_idle {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
bias-disable;
input-enable;
};
};
//#ifdef OPLUS_FEATURE_TRI_KEY
hall_interrupt_input: hall_interrupt_input {
mux {
pins = "gpio136";
function = "gpio";
};
config {
pins = "gpio136";
drive-strength = <2>;
bias-pull-up;
};
};
};
&soc {
/delete-node/ gpio_key;
gpio_key {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
vol_up {
label = "volume_up";
gpios = <&pmxr2230_gpios 6 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEDOWN>;
gpio-key,wakeup;
debounce-interval = <32>;
linux,can-disable;
};
};
};

View File

@@ -0,0 +1,493 @@
&pm8550vs_c_gpios {
ts_vddio_active_primary: ts_vddio_active_primary {
pins = "gpio3";
function = "normal";
input-enable;
power-source = <1>; /* 1.8V */
bias-disable;
qcom,drive-strength = <2>;
};
};
&qupv3_se0_i2c {
status = "ok";
qcom,clk-freq-out = <400000>;
/delete-node/ magnachip@0D;
/delete-node/ magnachip@0C;
/delete-node/ ist8801@19;
/delete-node/ ist8801@18;
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 = <&L11B>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <136 0x02>;
threeaxis_hall_support;
dhall,irq-gpio = <&tlmm 136 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 = <2500 2000 2500 2000>;
interf_mid_tolen = <2500 2000 2500 2000>;
interf_down_tolen = <2500 2000 2500 2000>;
position_judge_tolen = <3300 3300>;
default_position_xtolen = <2500 2500>;
new_posupdate_support;
exception_upload_support;
health_monitor_support;
};
};
&soc {
devinfo {
status = "disabled";
};
devinfo_salami {
status = "disabled";
};
devinfo_waffle {
status = "disabled";
};
devinfo_audi {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio0_sleep>;
pinctrl-2 = <&aboard_pin_gpio0_active>;
pinctrl-3 = <&aboard_pin_gpio0_idle>;
main-sub {
compatible = "hw-match, main-sub";
use_tristate_gpio;
aboard-gpio0 = <&tlmm 97 0>;
aboard-patterns = <0 0 1>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
/*region id*/
region-patterns = <1 2 3>;
/*main board*/
match-projects = <23803 24211 24211>;
};
};
};
&pmxr2230_gpios {
/delete-node/ key_vol_up;
key_vol_up {
key_vol_up_default: key_vol_up_default {
pins = "gpio6";
function = "normal";
input-enable;
power-source = <1>;
};
};
};
&qupv3_se4_i2c {
status = "disabled";
};
&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 = <129 0x2008>;
/* Power Config */
vdd_2v8-supply = <&L22B>;
vcc_1v8-supply = <&L5M>;
vdd_2v8_volt = <3008000>;
/* Other HW Resource */
irq-gpio = <&tlmm 129 0x2008>;
reset-gpio = <&tlmm 128 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <16 36>;
earsense,tx-rx-num = <17 18>;
touchpanel,panel-coords = <12400 27720>;
touchpanel,display-coords = <1240 2772>;
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>;
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 = <7 7>;
// type of tp_dev ,TP-SAMSUNG = 8;
platform_support_project = <24211 24212>;
platform_support_project_dir = <24211 24211>;
platform_support_project_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{
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 = <129 0x2008>;
/* Other HW Resource */
synaptics,irq-gpio = <&tlmm 129 0x2008>;
synaptics,reset-gpio = <&tlmm 128 0x1>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active &ts_vddio_active_primary>;
/* Power Config */
synaptics,avdd-gpio = <&pm8550vs_c_gpios 3 0x1>;
vdd-supply = <&L22B>;
synaptics,avdd-name = "vdd";
touchpanel,panel-coords = <19840 44352>;
touchpanel,tx-rx-num = <16 36>;
panel_type = <7 7>;
firmware_name = "AH553";
platform_support_project = <24211 24212>;
platform_support_project_dir = <24211 24211>;
platform_support_project_commandline = "default_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;
};
};
&tlmm {
/delete-node/ pmx_ts_reset_suspend;
/delete-node/ pmx_ts_int_suspend;
/delete-node/ pmx_ts_release;
/delete-node/ pmx_ts_active;
gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <2 6 7 20 24 25 30 31 34 44 54 66 67 69 74 75 78 98 99 101 102 103 104 107 108 109 110 111 112 119 130 133 135 138 148 153 157 166 167 171>;
};
pmx_ts_int_active {
ts_int_active: ts_int_active {
mux {
pins = "gpio129";
function = "gpio";
};
config {
pins = "gpio129";
drive-strength = <8>;
bias-disable;
input-enable;
};
};
};
pmx_ts_reset_active {
ts_reset_active: ts_reset_active {
mux {
pins = "gpio128";
function = "gpio";
};
config {
pins = "gpio128";
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 = "gpio16";
function = "qup0_se4_l0";
};
config {
pins = "gpio16";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_mosi_active: qupv3_se4_spi_mosi_active {
mux {
pins = "gpio17";
function = "qup0_se4_l1";
};
config {
pins = "gpio17";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_clk_active: qupv3_se4_spi_clk_active {
mux {
pins = "gpio18";
function = "qup0_se4_l2";
};
config {
pins = "gpio18";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_active: qupv3_se4_spi_cs_active {
mux {
pins = "gpio19";
function = "qup0_se4_l3";
};
config {
pins = "gpio19";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio16", "gpio17",
"gpio18";
function = "gpio";
};
config {
pins = "gpio16", "gpio17",
"gpio18";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio19";
function = "gpio";
};
config {
pins = "gpio19";
drive-strength = <6>;
bias-disable;
output-high;
};
};
};
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio0_sleep:aboard_pin_gpio0_sleep {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio0_active:aboard_pin_gpio0_active {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio0_idle:aboard_pin_gpio0_idle {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
bias-disable;
input-enable;
};
};
//#ifdef OPLUS_FEATURE_TRI_KEY
hall_interrupt_input: hall_interrupt_input {
mux {
pins = "gpio136";
function = "gpio";
};
config {
pins = "gpio136";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
};
&soc {
/delete-node/ gpio_key;
gpio_key {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
vol_up {
label = "volume_up";
gpios = <&pmxr2230_gpios 6 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEDOWN>;
gpio-key,wakeup;
debounce-interval = <32>;
linux,can-disable;
};
};
};

View File

@@ -0,0 +1,205 @@
&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";
};
nt36532@0 {
status = "okay";
compatible = "novatek,nf_nt36532";
reg = <0x0>;
chip-num = <1>;
chip-name = "NT36532";
project_id = <23926>;
firmware_name = "0X21N2NI9N19";
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 161 0x0>;
cs-gpio = <&tlmm 51 0x00>;
pinctrl-names = "default";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
touchpanel,irq_need_dev_resume_time = <500>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <60 40>;
touchpanel,panel-coords = <21200 30000>;
touchpanel,display-coords = <2120 3000>;
touchpanel,touchmajor-limit = <0 60>;
touchpanel,pen-tx-rx-num = <12 8>;
touchpanel,doze-tx-num = <12>;
touchpanel,pen-panel-coords = <21200 30000>;
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 40 30 15 9 3>;
touchpanel,sensitive-level-charging = <255 50 40 25 15 8>;
tp_type = <15>;//HUAXING
panel_type = <15>;
platform_support_project = <23926 23927 23976 23978>;
platform_support_project_dir = <23926 23926 23926 23926>;
platform_support_project_commandline = "mdss_dsi_panel_csot_nt36532_2120_3000_dual_dsc_144hz_vid";
platform_support_project_external_name = "FA261";
vid_len = <7>;
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;
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;
touchpanel,button-type = <4>;
};
};
&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 = <6>;
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 = <6>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <2>;
bias-disable;
};
};
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,509 @@
&qupv3_hub_i2c8 {
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_i2c8_sda_active>, <&qupv3_i2c8_scl_active>;
pinctrl-1 = <&qupv3_i2c8_sleep>;
};
&qupv3_hub_i2c8 {
status = "ok";
qcom,clk-freq-out = <400000>;
/delete-node/ magnachip@0D;
/delete-node/ magnachip@0C;
/delete-node/ ist8801@19;
/delete-node/ ist8801@18;
magnachip@10 {
compatible = "oplus,dhall-ak09970";
reg = <0x10>;
vcc_1v8-supply = <&L1B>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <99 0x02>;
threeaxis_hall_support;
new_posupdate_support;
dhall,irq-gpio = <&tlmm 99 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>;
exception_upload_support;
health_monitor_support;
};
};
&soc {
devinfo_corvette {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio0_sleep>;
pinctrl-2 = <&aboard_pin_gpio0_active>;
pinctrl-3 = <&aboard_pin_gpio0_idle>;
main-sub {
compatible = "hw-match, main-sub";
use_tristate_gpio;
aboard-gpio0 = <&tlmm 90 0>;
aboard-patterns = <0 1 2>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
/*main board*/
match-projects = <23814 23814 23814>;
};
};
};
&soc {
/delete-node/ gpio_key;
gpio_keys {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
vol_up {
label = "volume_up";
gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEDOWN>;
gpio-key,wakeup;
debounce-interval = <32>;
linux,can-disable;
};
};
};
&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 = <&tlmm 108 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,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 = "AA567";
platform_support_project = <23814>;
platform_support_project_dir = <23814>;
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 = <&tlmm 108 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>;
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 = "AA567";
platform_support_project = <23814>;
platform_support_project_dir = <23814>;
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;
};
};
&tlmm {
gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <10 11 15 20 21 22 23 52 53 56 57 58 59 65 67 77 81 87 90 92 93 103 109 111 112 119 120 138 140 141 145 146 147 153 155 163 171 172 175 176 181 182 186 188 189 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 = <6>;
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 = <6>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <6>;
bias-disable;
output-high;
};
};
};
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio0_sleep:aboard_pin_gpio0_sleep {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio0_active:aboard_pin_gpio0_active {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio0_idle:aboard_pin_gpio0_idle {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
bias-disable;
input-enable;
};
};
//#ifdef OPLUS_FEATURE_TRI_KEY
hall_interrupt_input: hall_interrupt_input {
mux {
pins = "gpio99";
function = "gpio";
};
config {
pins = "gpio99";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
qupv3_i2c8_pins: qupv3_i2c8_pins {
qupv3_i2c8_sda_active: qupv3_i2c8_sda_active {
mux {
pins = "gpio206";
function = "i2chub0_se8_l0";
};
config {
pins = "gpio206";
drive-strength = <2>;
bias-disable;
qcom,apps;
};
};
qupv3_i2c8_scl_active: qupv3_i2c8_scl_active {
mux {
pins = "gpio207";
function = "i2chub0_se8_l1";
};
config {
pins = "gpio207";
drive-strength = <2>;
bias-disable;
qcom,apps;
};
};
qupv3_i2c8_sleep: qupv3_i2c8_sleep {
mux {
pins = "gpio206", "gpio207";
function = "gpio";
};
config {
pins = "gpio206", "gpio207";
drive-strength = <2>;
input-enable;
bias-disable;
qcom,apps;
};
};
};
};

View File

@@ -0,0 +1,514 @@
&qupv3_hub_i2c8 {
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_i2c8_sda_active>, <&qupv3_i2c8_scl_active>;
pinctrl-1 = <&qupv3_i2c8_sleep>;
};
&qupv3_hub_i2c8 {
status = "ok";
qcom,clk-freq-out = <400000>;
/delete-node/ magnachip@0D;
/delete-node/ magnachip@0C;
/delete-node/ ist8801@19;
/delete-node/ ist8801@18;
magnachip@10 {
compatible = "oplus,dhall-ak09970";
reg = <0x10>;
vcc_1v8-supply = <&L1B>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <99 0x02>;
threeaxis_hall_support;
new_posupdate_support;
dhall,irq-gpio = <&tlmm 99 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>;
exception_upload_support;
health_monitor_support;
};
};
&soc {
devinfo_giulia {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio0_sleep>;
pinctrl-2 = <&aboard_pin_gpio0_active>;
pinctrl-3 = <&aboard_pin_gpio0_idle>;
main-sub {
compatible = "hw-match, main-sub";
use_tristate_gpio;
rf_match_support;
aboard-gpio0 = <&tlmm 90 0>;
aboard-patterns = <0 0 1 1>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
rf-patterns = <0 1 2 3>;
/*main board*/
match-projects = <23851 23867 23867 23867>;
};
};
};
&soc {
/delete-node/ gpio_key;
gpio_keys {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
vol_up {
label = "volume_up";
gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEDOWN>;
gpio-key,wakeup;
debounce-interval = <32>;
linux,can-disable;
};
};
};
&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 = <&tlmm 108 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,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 = "AA567";
platform_support_project = <23851 23867>;
platform_support_project_dir = <23851 23851>;
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;
tp_data_record_support;
stats_upload_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 = <&tlmm 108 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>;
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 = "AA567";
platform_support_project = <23851 23867>;
platform_support_project_dir = <23851 23851>;
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;
};
};
&tlmm {
gpio_wakeup: gpio_wakeup {
compatible = "gpio_wakeup";
gpio_table = <5 9 10 11 28 65 66 67 81 112 128 171 172 186 188 189>;
};
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 = <6>;
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 = <6>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <6>;
bias-disable;
output-high;
};
};
};
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio0_sleep:aboard_pin_gpio0_sleep {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio0_active:aboard_pin_gpio0_active {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio0_idle:aboard_pin_gpio0_idle {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
bias-disable;
input-enable;
};
};
//#ifdef OPLUS_FEATURE_TRI_KEY
hall_interrupt_input: hall_interrupt_input {
mux {
pins = "gpio99";
function = "gpio";
};
config {
pins = "gpio99";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
qupv3_i2c8_pins: qupv3_i2c8_pins {
qupv3_i2c8_sda_active: qupv3_i2c8_sda_active {
mux {
pins = "gpio206";
function = "i2chub0_se8_l0";
};
config {
pins = "gpio206";
drive-strength = <2>;
bias-disable;
qcom,apps;
};
};
qupv3_i2c8_scl_active: qupv3_i2c8_scl_active {
mux {
pins = "gpio207";
function = "i2chub0_se8_l1";
};
config {
pins = "gpio207";
drive-strength = <2>;
bias-disable;
qcom,apps;
};
};
qupv3_i2c8_sleep: qupv3_i2c8_sleep {
mux {
pins = "gpio206", "gpio207";
function = "gpio";
};
config {
pins = "gpio206", "gpio207";
drive-strength = <2>;
input-enable;
bias-disable;
qcom,apps;
};
};
};
};

View File

@@ -0,0 +1,590 @@
&qupv3_hub_i2c8 {
/delete-property/ pinctrl-0;
/delete-property/ pinctrl-1;
pinctrl-0 = <&qupv3_i2c8_sda_active>, <&qupv3_i2c8_scl_active>;
pinctrl-1 = <&qupv3_i2c8_sleep>;
};
&qupv3_hub_i2c8 {
status = "ok";
qcom,clk-freq-out = <400000>;
/delete-node/ magnachip@0D;
/delete-node/ magnachip@0C;
/delete-node/ ist8801@19;
/delete-node/ ist8801@18;
magnachip@0D {
compatible = "oplus,hall-mxm1120,up";
reg = <0x0D>;
vdd-supply = <&L2B>;
vdd_volt = <3008000>;
vio-supply = <&L1B>;
vio_volt = <1800000>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <112 0x02>;
dhall,irq-gpio = <&tlmm 112 0x2008>;
pinctrl-names = "uphall_tri_state_key_active";
pinctrl-0 = <&uphall_tri_state_key_active>;
tolen = <16 16 16>;
updown-to-mid-support;
esd-check-support;
new_threshold_support;
exception_upload_support;
health_monitor_support;
};
magnachip@0C {
compatible = "oplus,hall-mxm1120,down";
reg = <0x0C>;
vdd-supply = <&L2B>;
vdd_volt = <3008000>;
vio-supply = <&L1B>;
vio_volt = <1800000>;
magnachip,init-interval = <200>;
interrupt-parent = <&tlmm>;
interrups = <99 0x02>;
dhall,irq-gpio = <&tlmm 99 0x2008>;
pinctrl-names = "downhall_tri_state_key_active";
pinctrl-0 = <&downhall_tri_state_key_active>;
tolen = <16 16 16>;
updown-to-mid-support;
esd-check-support;
new_threshold_support;
exception_upload_support;
health_monitor_support;
};
};
&soc {
devinfo_waffle {
compatible = "oplus-devinfo";
pinctrl-names = "default", "sleep", "active", "idle";
pinctrl-0 = <&hw_pins_default>;
pinctrl-1 = <&aboard_pin_gpio0_sleep>;
pinctrl-2 = <&aboard_pin_gpio0_active>;
pinctrl-3 = <&aboard_pin_gpio0_idle>;
main-sub {
compatible = "hw-match, main-sub";
use_tristate_gpio;
rf_match_support;
aboard-gpio0 = <&tlmm 90 0>;
aboard-patterns = <0 0 1 0 1>; /*0[high-resistance] 1[pull-down] 2[pull-up]*/
/*rf value*/
rf-patterns = <0 0 2 3 6>; /*0[CN/IN] 2[EU] 3[NA]*/
/*main board*/
match-projects = <22825 22877 22877 22877 22877>;
};
};
};
&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 = <&tlmm 108 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 = <23040 50688>;
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 7 8>;
// type of tp_dev ,TP-SAMSUNG = 8;
platform_support_project = <22825 22877>;
platform_support_project_dir = <22825 22825>;
platform_support_project_commandline = "mdss_dsi_panel_AA545_P_3_A0005_dsc_cmd", "mdss_dsi_panel_AA545_P_2_A0007_dsc_cmd", "mdss_dsi_panel_AA545_P_1_A0006_dsc_cmd";
/* 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>;
};
S3910_PANEL7 {
interrupts = <162 0x2008>;
irq-gpio = <&tlmm 162 0x2008>;
reset-gpio = <&tlmm 161 0x1>;
touchpanel,max-num-support = <10>;
touchpanel,tx-rx-num = <18 40>;
touchpanel,panel-coords = <23040 50688>;
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>;
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>;
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>;
};
};
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 = <&tlmm 108 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>;
touchpanel,panel-coords = <23040 50688>;
touchpanel,tx-rx-num = <17 38>;
//touchpanel,tp_ic_type = <2>;
panel_type = <3 7 8>;
// type of tp_dev ,TP-SAMSUNG = 8;
firmware_name = "AA545";
platform_support_project = <22825 22877>;
platform_support_project_dir = <22825 22825>;
platform_support_project_commandline = "mdss_dsi_panel_AA545_P_3_A0005_dsc_cmd", "mdss_dsi_panel_AA545_P_2_A0007_dsc_cmd", "mdss_dsi_panel_AA545_P_1_A0006_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>;
};
};
};
&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 = <6>;
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 = <6>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio48", "gpio49",
"gpio50";
function = "gpio";
};
config {
pins = "gpio48", "gpio49",
"gpio50";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_cs_sleep: qupv3_se4_spi_cs_sleep {
mux {
pins = "gpio51";
function = "gpio";
};
config {
pins = "gpio51";
drive-strength = <6>;
bias-disable;
output-high;
};
};
};
uphall_tri_state_key_active: uphall_tri_state_key_active {
mux {
pins = "gpio112";
function = "gpio";
};
config {
pins = "gpio112";
drive-strength = <2>;
bias-pull-up;
};
};
downhall_tri_state_key_active: downhall_tri_state_key_active {
mux {
pins = "gpio99";
function = "gpio";
};
config {
pins = "gpio99";
drive-strength = <2>;
bias-pull-up;
};
};
hw_pins_default:hw_pins_default {
};
aboard_pin_gpio0_sleep:aboard_pin_gpio0_sleep {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
drive-strength = <2>;
bias-pull-down;
input-enable;
};
};
aboard_pin_gpio0_active:aboard_pin_gpio0_active {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
drive-strength = <2>;
bias-pull-up;
input-enable;
};
};
aboard_pin_gpio0_idle:aboard_pin_gpio0_idle {
mux {
pins = "gpio90";
function = "gpio";
};
config {
pins = "gpio90";
bias-disable;
input-enable;
};
};
qupv3_i2c8_pins: qupv3_i2c8_pins {
qupv3_i2c8_sda_active: qupv3_i2c8_sda_active {
mux {
pins = "gpio206";
function = "i2chub0_se8_l0";
};
config {
pins = "gpio206";
drive-strength = <2>;
bias-disable;
qcom,apps;
};
};
qupv3_i2c8_scl_active: qupv3_i2c8_scl_active {
mux {
pins = "gpio207";
function = "i2chub0_se8_l1";
};
config {
pins = "gpio207";
drive-strength = <2>;
bias-disable;
qcom,apps;
};
};
qupv3_i2c8_sleep: qupv3_i2c8_sleep {
mux {
pins = "gpio206", "gpio207";
function = "gpio";
};
config {
pins = "gpio206", "gpio207";
drive-strength = <2>;
input-enable;
bias-disable;
qcom,apps;
};
};
};
};

View File

@@ -0,0 +1,21 @@
&soc {
//add for 7635
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";
};
oplus_secure_common {
compatible = "oplus,secure_common";
oplus,sec_reg_num = <0x221C8C70>;
oplus,sec_en_anti_reg = <0x221C8314>;
oplus,sec_override1_reg = <0x221C8314>;
oplus,override1_en_value = <0x1>;
};
};

View File

@@ -0,0 +1,148 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "waffle_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-22825-EVB.dtsi"
#include "oplus_misc/oplus-misc-22825.dtsi"
#include "sensor/waffle-sensor-22825.dtsi"
#include "tp/waffle-oplus-tp-22825.dtsi"
#include "oplus_fp/oplus_fp_22825.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,waffle";
oplus,project-id = <22825>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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 = <&pm8550b_gpios 4 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550vs_c_gpios 5 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;
};
};
&pm8550b_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio4";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550vs_c_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};

View File

@@ -0,0 +1,148 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "waffle_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-22825-EVT1.dtsi"
#include "oplus_misc/oplus-misc-22825.dtsi"
#include "sensor/waffle-sensor-22825.dtsi"
#include "tp/waffle-oplus-tp-22825.dtsi"
#include "oplus_fp/oplus_fp_22825.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,waffle";
oplus,project-id = <22825>;
oplus,hw-id = <OPLUS_T0 OPLUS_EVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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 = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550vs_c_gpios 5 GPIO_ACTIVE_LOW>;
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550vs_c_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};

View File

@@ -0,0 +1,152 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "waffle_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-22825.dtsi"
#include "oplus_misc/oplus-misc-22825.dtsi"
#include "sensor/waffle-sensor-22825.dtsi"
#include "tp/waffle-oplus-tp-22825.dtsi"
#include "oplus_fp/oplus_fp_22825.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,waffle";
oplus,project-id = <22825>;
oplus,hw-id = <OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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 = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550vs_c_gpios 5 GPIO_ACTIVE_LOW>;
oplus,uim-reset-pin = "modem_solution";
};
oplus_sim_detect {
compatible = "oplus, sim_detect";
Hw,sim_det = "modem_det";
};
//#endif /*OPLUS_FEATURE_ESIM*/
oplus,blk-mq {
block_graded_thread_enable = "y";
};
};
&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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550vs_c_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};

View File

@@ -0,0 +1,148 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "waffle_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-22825-EVB.dtsi"
#include "oplus_misc/oplus-misc-22877.dtsi"
#include "sensor/waffle-sensor-22825.dtsi"
#include "tp/waffle-oplus-tp-22825.dtsi"
#include "oplus_fp/oplus_fp_22825.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,waffle";
oplus,project-id = <22877>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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 = <&pm8550b_gpios 4 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550vs_c_gpios 5 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;
};
};
&pm8550b_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio4";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550vs_c_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};

View File

@@ -0,0 +1,149 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "waffle_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-22825-EVT1.dtsi"
#include "oplus_chg/oplus-chg-22877-pps.dtsi"
#include "oplus_misc/oplus-misc-22877.dtsi"
#include "sensor/waffle-sensor-22825.dtsi"
#include "tp/waffle-oplus-tp-22825.dtsi"
#include "oplus_fp/oplus_fp_22825.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,waffle";
oplus,project-id = <22877>;
oplus,hw-id = <OPLUS_T0 OPLUS_EVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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 = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550vs_c_gpios 5 GPIO_ACTIVE_LOW>;
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550vs_c_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};

View File

@@ -0,0 +1,149 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/oplus/hw-id.h>
#include "../qcom/pineapple-mtp-overlay.dts"
#include "pineapple_overlay_common.dtsi"
#include "waffle_overlay_common.dtsi"
#include "oplus_chg/oplus-chg-22825.dtsi"
#include "oplus_chg/oplus-chg-22877-pps.dtsi"
#include "oplus_misc/oplus-misc-22877.dtsi"
#include "sensor/waffle-sensor-22825.dtsi"
#include "tp/waffle-oplus-tp-22825.dtsi"
#include "oplus_fp/oplus_fp_22825.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,waffle";
oplus,project-id = <22877>;
oplus,hw-id = <OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};
&tlmm {
//#ifdef OPLUS_FEATURE_RF_CABLE_DETECT
rf_cable0_active: rf_cable0_active {
mux {
pins = "gpio98";
function = "gpio";
};
config {
pins = "gpio98";
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 98 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 = <&pm8550vs_g_gpios 6 GPIO_ACTIVE_LOW>;
oplus,oplus-sim2-det = <&pm8550vs_c_gpios 5 GPIO_ACTIVE_LOW>;
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;
};
};
&pm8550vs_g_gpios {
esim_en_gpio: esim_en_gpio {
pins = "gpio6";
function = "normal";
bias-disable; /* NO pull */
qcom,drive-strength = <2>; /* 2 MA */
power-source = <2>; /* 1.2V */
output-high;
};
};
&pm8550vs_c_gpios {
sim2_det_no_pull: sim2_det_no_pull {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-disable;
};
sim2_det_pull_high: sim2_det_pull_high {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-up;
};
sim2_det_pull_low: sim2_det_pull_low {
pins = "gpio5";
function = "normal";
input-enable;
power-source = <1>;
bias-pull-down;
};
};
&pmk8550_vadc {
pm8550b_batt_therm {
reg = <PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
label = "pm8550b_batt_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
batt-therm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550B_ADC5_GEN3_AMUX_THM1_BATT_THERM_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};

View File

@@ -0,0 +1,155 @@
//#if defined(PXLW_IRIS)
&pmk8550_gpios {
/delete-property/ pinctrl-0;
pinctrl-0 = <&alt_sleep_clk_default &pxlw_clk_default>;
pinctrl-names = "default";
pxlw_clk {
pxlw_clk_default: pxlw_clk_default {
pins = "gpio5";
function = "func2";
input-disable;
output-enable;
bias-disable;
power-source = <0>;
};
};
};
//#endif /* PXLW_IRIS */
//#ifdef OPLUS_FEATURE_DISPLAY
&L13B {
regulator-max-microvolt = <3200000>;
qcom,init-voltage = <3200000>;
};
&tlmm {
pinctrl-names = "default";
pinctrl-0 = <&GPIO163_default>;
GPIO163_default: GPIO163_default {
config {
pins = "gpio163";
drive-strength = <2>;
bias-pull-up;
};
};
};
//#endif /* OPLUS_FEATURE_DISPLAY */
&pmk8550_vadc {
pm8550_gpio03_therm {
reg = <PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
label = "pm8550_gpio03_therm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
qcom,adc-tm-type = <1>;
};
};
&thermal_zones {
pm8550_gpio03_usr {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&pmk8550_vadc PM8550_ADC5_GEN3_AMUX1_GPIO3_100K_PU>;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
active-config1 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
oplus_thermal_ipa {
thermal-governor = "user_space";
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&oplus_ipa>;
trips {
ipa_switch_on: ipa-switch-on {
temperature = <33000>;
hysteresis = <2000>;
type = "active";
};
ipa_control_temp: ipa-control-temp {
temperature = <56000>;
hysteresis = <2000>;
type = "passive";
};
ipa_hot: ipa-hot {
temperature = <115000>;
hysteresis = <3000>;
type = "hot";
};
};
cooling-maps {
map0 {
trip = <&ipa_control_temp>;
contribution = <512>;
cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map1 {
trip = <&ipa_control_temp>;
contribution = <1536>;
cooling-device = <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map2 {
trip = <&ipa_control_temp>;
contribution = <1024>;
cooling-device = <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map3 {
trip = <&ipa_control_temp>;
contribution = <1536>;
cooling-device = <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
};
&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 */
oplus_ipa: ipa {
compatible = "oplus,oplus-thermal";
thermal_name = "oplus_thermal_ipa";
id = <0>;
thermal_type = <0>;
#thermal-sensor-cells = <0>;
use-ipa-thermal;
use-power-budget = <1>;
polling_delay_on = <100>;
polling_delay_off = <3000>;
k_po = <1>;
k_pu = <1>;
k_i = <1>;
k_d = <0>;
i_max = <2>;
integral_cutoff = <10>;
sustainable_power = <9999>;
thermal_work_affinity = "0-8";
cdev_min_power = <230 200 350 90 0 0>;
use-thermalcontrol-limit = <1>;
clt_state_limit = <0 0 0 0 0 0>;
};
midas_pdev {
compatible = "oplus,midas-pdev";
};
};

View File

@@ -2325,6 +2325,412 @@
<DCC_READ 0x24331010 2 0>,
<DCC_LOOP 0x1 0 0>,
<DCC_READ 0x24341008 1 0>,
<DCC_READ 0x24102810 1 0>,
<DCC_READ 0x24102820 1 0>,
<DCC_READ 0x24102828 2 0>,
<DCC_READ 0x24102C10 1 0>,
<DCC_READ 0x24102C20 1 0>,
<DCC_READ 0x24102C28 2 0>,
<DCC_READ 0x24142810 1 0>,
<DCC_READ 0x24142820 1 0>,
<DCC_READ 0x24142828 2 0>,
<DCC_READ 0x24142C10 1 0>,
<DCC_READ 0x24142C20 1 0>,
<DCC_READ 0x24142C28 2 0>,
<DCC_READ 0x17A80000 17 0>,
<DCC_READ 0x17A82000 17 0>,
<DCC_READ 0x17A84000 17 0>,
<DCC_READ 0x17A86000 17 0>,
<DCC_READ 0x17BA3C94 1 0>,
<DCC_READ 0x17B93C94 1 0>,
<DCC_READ 0x25021000 1 0>,
<DCC_READ 0x25021008 1 0>,
<DCC_READ 0x25021010 1 0>,
<DCC_READ 0x25021018 1 0>,
<DCC_READ 0x25021020 1 0>,
<DCC_READ 0x25021028 1 0>,
<DCC_READ 0x25021030 1 0>,
<DCC_READ 0x25021038 1 0>,
<DCC_READ 0x25021040 1 0>,
<DCC_READ 0x25021048 1 0>,
<DCC_READ 0x25021050 1 0>,
<DCC_READ 0x25021058 1 0>,
<DCC_READ 0x25021060 1 0>,
<DCC_READ 0x25021068 1 0>,
<DCC_READ 0x25021070 1 0>,
<DCC_READ 0x25021078 1 0>,
<DCC_READ 0x25021080 1 0>,
<DCC_READ 0x25021088 1 0>,
<DCC_READ 0x25021090 1 0>,
<DCC_READ 0x25021098 1 0>,
<DCC_READ 0x250210a0 1 0>,
<DCC_READ 0x250210a8 1 0>,
<DCC_READ 0x250210b0 1 0>,
<DCC_READ 0x250210b8 1 0>,
<DCC_READ 0x250210c0 1 0>,
<DCC_READ 0x250210c8 1 0>,
<DCC_READ 0x250210d0 1 0>,
<DCC_READ 0x250210d8 1 0>,
<DCC_READ 0x250210e0 1 0>,
<DCC_READ 0x250210e8 1 0>,
<DCC_READ 0x250210f0 1 0>,
<DCC_READ 0x250210f8 1 0>,
<DCC_READ 0x25021004 1 0>,
<DCC_READ 0x2502100c 1 0>,
<DCC_READ 0x25021014 1 0>,
<DCC_READ 0x2502101c 1 0>,
<DCC_READ 0x25021024 1 0>,
<DCC_READ 0x2502102c 1 0>,
<DCC_READ 0x25021034 1 0>,
<DCC_READ 0x2502103c 1 0>,
<DCC_READ 0x25021044 1 0>,
<DCC_READ 0x2502104c 1 0>,
<DCC_READ 0x25021054 1 0>,
<DCC_READ 0x2502105c 1 0>,
<DCC_READ 0x25021064 1 0>,
<DCC_READ 0x2502106c 1 0>,
<DCC_READ 0x25021074 1 0>,
<DCC_READ 0x2502107c 1 0>,
<DCC_READ 0x25021084 1 0>,
<DCC_READ 0x2502108c 1 0>,
<DCC_READ 0x25021094 1 0>,
<DCC_READ 0x2502109c 1 0>,
<DCC_READ 0x250210a4 1 0>,
<DCC_READ 0x250210ac 1 0>,
<DCC_READ 0x250210b4 1 0>,
<DCC_READ 0x250210bc 1 0>,
<DCC_READ 0x250210c4 1 0>,
<DCC_READ 0x250210cc 1 0>,
<DCC_READ 0x250210d4 1 0>,
<DCC_READ 0x250210dc 1 0>,
<DCC_READ 0x250210e4 1 0>,
<DCC_READ 0x250210ec 1 0>,
<DCC_READ 0x250210f4 1 0>,
<DCC_READ 0x250210fc 1 0>,
<DCC_READ 0x25021100 1 0>,
<DCC_READ 0x25021104 1 0>,
<DCC_READ 0x25021108 1 0>,
<DCC_READ 0x2502110c 1 0>,
<DCC_READ 0x25021110 1 0>,
<DCC_READ 0x25021114 1 0>,
<DCC_READ 0x25021118 1 0>,
<DCC_READ 0x2502111c 1 0>,
<DCC_READ 0x25021120 1 0>,
<DCC_READ 0x25021124 1 0>,
<DCC_READ 0x25021128 1 0>,
<DCC_READ 0x2502112c 1 0>,
<DCC_READ 0x25021130 1 0>,
<DCC_READ 0x25021134 1 0>,
<DCC_READ 0x25021138 1 0>,
<DCC_READ 0x2502113c 1 0>,
<DCC_READ 0x25021140 1 0>,
<DCC_READ 0x25021144 1 0>,
<DCC_READ 0x25021148 1 0>,
<DCC_READ 0x2502114c 1 0>,
<DCC_READ 0x25021150 1 0>,
<DCC_READ 0x25021154 1 0>,
<DCC_READ 0x25021158 1 0>,
<DCC_READ 0x2502115c 1 0>,
<DCC_READ 0x25021160 1 0>,
<DCC_READ 0x25021164 1 0>,
<DCC_READ 0x25021168 1 0>,
<DCC_READ 0x2502116c 1 0>,
<DCC_READ 0x25021170 1 0>,
<DCC_READ 0x25021174 1 0>,
<DCC_READ 0x25021178 1 0>,
<DCC_READ 0x2502117c 1 0>,
<DCC_READ 0x25421000 1 0>,
<DCC_READ 0x25421008 1 0>,
<DCC_READ 0x25421010 1 0>,
<DCC_READ 0x25421018 1 0>,
<DCC_READ 0x25421020 1 0>,
<DCC_READ 0x25421028 1 0>,
<DCC_READ 0x25421030 1 0>,
<DCC_READ 0x25421038 1 0>,
<DCC_READ 0x25421040 1 0>,
<DCC_READ 0x25421048 1 0>,
<DCC_READ 0x25421050 1 0>,
<DCC_READ 0x25421058 1 0>,
<DCC_READ 0x25421060 1 0>,
<DCC_READ 0x25421068 1 0>,
<DCC_READ 0x25421070 1 0>,
<DCC_READ 0x25421078 1 0>,
<DCC_READ 0x25421080 1 0>,
<DCC_READ 0x25421088 1 0>,
<DCC_READ 0x25421090 1 0>,
<DCC_READ 0x25421098 1 0>,
<DCC_READ 0x254210a0 1 0>,
<DCC_READ 0x254210a8 1 0>,
<DCC_READ 0x254210b0 1 0>,
<DCC_READ 0x254210b8 1 0>,
<DCC_READ 0x254210c0 1 0>,
<DCC_READ 0x254210c8 1 0>,
<DCC_READ 0x254210d0 1 0>,
<DCC_READ 0x254210d8 1 0>,
<DCC_READ 0x254210e0 1 0>,
<DCC_READ 0x254210e8 1 0>,
<DCC_READ 0x254210f0 1 0>,
<DCC_READ 0x254210f8 1 0>,
<DCC_READ 0x25421004 1 0>,
<DCC_READ 0x2542100c 1 0>,
<DCC_READ 0x25421014 1 0>,
<DCC_READ 0x2542101c 1 0>,
<DCC_READ 0x25421024 1 0>,
<DCC_READ 0x2542102c 1 0>,
<DCC_READ 0x25421034 1 0>,
<DCC_READ 0x2542103c 1 0>,
<DCC_READ 0x25421044 1 0>,
<DCC_READ 0x2542104c 1 0>,
<DCC_READ 0x25421054 1 0>,
<DCC_READ 0x2542105c 1 0>,
<DCC_READ 0x25421064 1 0>,
<DCC_READ 0x2542106c 1 0>,
<DCC_READ 0x25421074 1 0>,
<DCC_READ 0x2542107c 1 0>,
<DCC_READ 0x25421084 1 0>,
<DCC_READ 0x2542108c 1 0>,
<DCC_READ 0x25421094 1 0>,
<DCC_READ 0x2542109c 1 0>,
<DCC_READ 0x254210a4 1 0>,
<DCC_READ 0x254210ac 1 0>,
<DCC_READ 0x254210b4 1 0>,
<DCC_READ 0x254210bc 1 0>,
<DCC_READ 0x254210c4 1 0>,
<DCC_READ 0x254210cc 1 0>,
<DCC_READ 0x254210d4 1 0>,
<DCC_READ 0x254210dc 1 0>,
<DCC_READ 0x254210e4 1 0>,
<DCC_READ 0x254210ec 1 0>,
<DCC_READ 0x254210f4 1 0>,
<DCC_READ 0x254210fc 1 0>,
<DCC_READ 0x25421100 1 0>,
<DCC_READ 0x25421104 1 0>,
<DCC_READ 0x25421108 1 0>,
<DCC_READ 0x2542110c 1 0>,
<DCC_READ 0x25421110 1 0>,
<DCC_READ 0x25421114 1 0>,
<DCC_READ 0x25421118 1 0>,
<DCC_READ 0x2542111c 1 0>,
<DCC_READ 0x25421120 1 0>,
<DCC_READ 0x25421124 1 0>,
<DCC_READ 0x25421128 1 0>,
<DCC_READ 0x2542112c 1 0>,
<DCC_READ 0x25421130 1 0>,
<DCC_READ 0x25421134 1 0>,
<DCC_READ 0x25421138 1 0>,
<DCC_READ 0x2542113c 1 0>,
<DCC_READ 0x25421140 1 0>,
<DCC_READ 0x25421144 1 0>,
<DCC_READ 0x25421148 1 0>,
<DCC_READ 0x2542114c 1 0>,
<DCC_READ 0x25421150 1 0>,
<DCC_READ 0x25421154 1 0>,
<DCC_READ 0x25421158 1 0>,
<DCC_READ 0x2542115c 1 0>,
<DCC_READ 0x25421160 1 0>,
<DCC_READ 0x25421164 1 0>,
<DCC_READ 0x25421168 1 0>,
<DCC_READ 0x2542116c 1 0>,
<DCC_READ 0x25421170 1 0>,
<DCC_READ 0x25421174 1 0>,
<DCC_READ 0x25421178 1 0>,
<DCC_READ 0x2542117c 1 0>,
<DCC_READ 0x25221000 1 0>,
<DCC_READ 0x25221008 1 0>,
<DCC_READ 0x25221010 1 0>,
<DCC_READ 0x25221018 1 0>,
<DCC_READ 0x25221020 1 0>,
<DCC_READ 0x25221028 1 0>,
<DCC_READ 0x25221030 1 0>,
<DCC_READ 0x25221038 1 0>,
<DCC_READ 0x25221040 1 0>,
<DCC_READ 0x25221048 1 0>,
<DCC_READ 0x25221050 1 0>,
<DCC_READ 0x25221058 1 0>,
<DCC_READ 0x25221060 1 0>,
<DCC_READ 0x25221068 1 0>,
<DCC_READ 0x25221070 1 0>,
<DCC_READ 0x25221078 1 0>,
<DCC_READ 0x25221080 1 0>,
<DCC_READ 0x25221088 1 0>,
<DCC_READ 0x25221090 1 0>,
<DCC_READ 0x25221098 1 0>,
<DCC_READ 0x252210a0 1 0>,
<DCC_READ 0x252210a8 1 0>,
<DCC_READ 0x252210b0 1 0>,
<DCC_READ 0x252210b8 1 0>,
<DCC_READ 0x252210c0 1 0>,
<DCC_READ 0x252210c8 1 0>,
<DCC_READ 0x252210d0 1 0>,
<DCC_READ 0x252210d8 1 0>,
<DCC_READ 0x252210e0 1 0>,
<DCC_READ 0x252210e8 1 0>,
<DCC_READ 0x252210f0 1 0>,
<DCC_READ 0x252210f8 1 0>,
<DCC_READ 0x25221004 1 0>,
<DCC_READ 0x2522100c 1 0>,
<DCC_READ 0x25221014 1 0>,
<DCC_READ 0x2522101c 1 0>,
<DCC_READ 0x25221024 1 0>,
<DCC_READ 0x2522102c 1 0>,
<DCC_READ 0x25221034 1 0>,
<DCC_READ 0x2522103c 1 0>,
<DCC_READ 0x25221044 1 0>,
<DCC_READ 0x2522104c 1 0>,
<DCC_READ 0x25221054 1 0>,
<DCC_READ 0x2522105c 1 0>,
<DCC_READ 0x25221064 1 0>,
<DCC_READ 0x2522106c 1 0>,
<DCC_READ 0x25221074 1 0>,
<DCC_READ 0x2522107c 1 0>,
<DCC_READ 0x25221084 1 0>,
<DCC_READ 0x2522108c 1 0>,
<DCC_READ 0x25221094 1 0>,
<DCC_READ 0x2522109c 1 0>,
<DCC_READ 0x252210a4 1 0>,
<DCC_READ 0x252210ac 1 0>,
<DCC_READ 0x252210b4 1 0>,
<DCC_READ 0x252210bc 1 0>,
<DCC_READ 0x252210c4 1 0>,
<DCC_READ 0x252210cc 1 0>,
<DCC_READ 0x252210d4 1 0>,
<DCC_READ 0x252210dc 1 0>,
<DCC_READ 0x252210e4 1 0>,
<DCC_READ 0x252210ec 1 0>,
<DCC_READ 0x252210f4 1 0>,
<DCC_READ 0x252210fc 1 0>,
<DCC_READ 0x25221100 1 0>,
<DCC_READ 0x25221104 1 0>,
<DCC_READ 0x25221108 1 0>,
<DCC_READ 0x2522110c 1 0>,
<DCC_READ 0x25221110 1 0>,
<DCC_READ 0x25221114 1 0>,
<DCC_READ 0x25221118 1 0>,
<DCC_READ 0x2522111c 1 0>,
<DCC_READ 0x25221120 1 0>,
<DCC_READ 0x25221124 1 0>,
<DCC_READ 0x25221128 1 0>,
<DCC_READ 0x2522112c 1 0>,
<DCC_READ 0x25221130 1 0>,
<DCC_READ 0x25221134 1 0>,
<DCC_READ 0x25221138 1 0>,
<DCC_READ 0x2522113c 1 0>,
<DCC_READ 0x25221140 1 0>,
<DCC_READ 0x25221144 1 0>,
<DCC_READ 0x25221148 1 0>,
<DCC_READ 0x2522114c 1 0>,
<DCC_READ 0x25221150 1 0>,
<DCC_READ 0x25221154 1 0>,
<DCC_READ 0x25221158 1 0>,
<DCC_READ 0x2522115c 1 0>,
<DCC_READ 0x25221160 1 0>,
<DCC_READ 0x25221164 1 0>,
<DCC_READ 0x25221168 1 0>,
<DCC_READ 0x2522116c 1 0>,
<DCC_READ 0x25221170 1 0>,
<DCC_READ 0x25221174 1 0>,
<DCC_READ 0x25221178 1 0>,
<DCC_READ 0x2522117c 1 0>,
<DCC_READ 0x25621000 1 0>,
<DCC_READ 0x25621008 1 0>,
<DCC_READ 0x25621010 1 0>,
<DCC_READ 0x25621018 1 0>,
<DCC_READ 0x25621020 1 0>,
<DCC_READ 0x25621028 1 0>,
<DCC_READ 0x25621030 1 0>,
<DCC_READ 0x25621038 1 0>,
<DCC_READ 0x25621040 1 0>,
<DCC_READ 0x25621048 1 0>,
<DCC_READ 0x25621050 1 0>,
<DCC_READ 0x25621058 1 0>,
<DCC_READ 0x25621060 1 0>,
<DCC_READ 0x25621068 1 0>,
<DCC_READ 0x25621070 1 0>,
<DCC_READ 0x25621078 1 0>,
<DCC_READ 0x25621080 1 0>,
<DCC_READ 0x25621088 1 0>,
<DCC_READ 0x25621090 1 0>,
<DCC_READ 0x25621098 1 0>,
<DCC_READ 0x256210a0 1 0>,
<DCC_READ 0x256210a8 1 0>,
<DCC_READ 0x256210b0 1 0>,
<DCC_READ 0x256210b8 1 0>,
<DCC_READ 0x256210c0 1 0>,
<DCC_READ 0x256210c8 1 0>,
<DCC_READ 0x256210d0 1 0>,
<DCC_READ 0x256210d8 1 0>,
<DCC_READ 0x256210e0 1 0>,
<DCC_READ 0x256210e8 1 0>,
<DCC_READ 0x256210f0 1 0>,
<DCC_READ 0x256210f8 1 0>,
<DCC_READ 0x25621004 1 0>,
<DCC_READ 0x2562100c 1 0>,
<DCC_READ 0x25621014 1 0>,
<DCC_READ 0x2562101c 1 0>,
<DCC_READ 0x25621024 1 0>,
<DCC_READ 0x2562102c 1 0>,
<DCC_READ 0x25621034 1 0>,
<DCC_READ 0x2562103c 1 0>,
<DCC_READ 0x25621044 1 0>,
<DCC_READ 0x2562104c 1 0>,
<DCC_READ 0x25621054 1 0>,
<DCC_READ 0x2562105c 1 0>,
<DCC_READ 0x25621064 1 0>,
<DCC_READ 0x2562106c 1 0>,
<DCC_READ 0x25621074 1 0>,
<DCC_READ 0x2562107c 1 0>,
<DCC_READ 0x25621084 1 0>,
<DCC_READ 0x2562108c 1 0>,
<DCC_READ 0x25621094 1 0>,
<DCC_READ 0x2562109c 1 0>,
<DCC_READ 0x256210a4 1 0>,
<DCC_READ 0x256210ac 1 0>,
<DCC_READ 0x256210b4 1 0>,
<DCC_READ 0x256210bc 1 0>,
<DCC_READ 0x256210c4 1 0>,
<DCC_READ 0x256210cc 1 0>,
<DCC_READ 0x256210d4 1 0>,
<DCC_READ 0x256210dc 1 0>,
<DCC_READ 0x256210e4 1 0>,
<DCC_READ 0x256210ec 1 0>,
<DCC_READ 0x256210f4 1 0>,
<DCC_READ 0x256210fc 1 0>,
<DCC_READ 0x25621100 1 0>,
<DCC_READ 0x25621104 1 0>,
<DCC_READ 0x25621108 1 0>,
<DCC_READ 0x2562110c 1 0>,
<DCC_READ 0x25621110 1 0>,
<DCC_READ 0x25621114 1 0>,
<DCC_READ 0x25621118 1 0>,
<DCC_READ 0x2562111c 1 0>,
<DCC_READ 0x25621120 1 0>,
<DCC_READ 0x25621124 1 0>,
<DCC_READ 0x25621128 1 0>,
<DCC_READ 0x2562112c 1 0>,
<DCC_READ 0x25621130 1 0>,
<DCC_READ 0x25621134 1 0>,
<DCC_READ 0x25621138 1 0>,
<DCC_READ 0x2562113c 1 0>,
<DCC_READ 0x25621140 1 0>,
<DCC_READ 0x25621144 1 0>,
<DCC_READ 0x25621148 1 0>,
<DCC_READ 0x2562114c 1 0>,
<DCC_READ 0x25621150 1 0>,
<DCC_READ 0x25621154 1 0>,
<DCC_READ 0x25621158 1 0>,
<DCC_READ 0x2562115c 1 0>,
<DCC_READ 0x25621160 1 0>,
<DCC_READ 0x25621164 1 0>,
<DCC_READ 0x25621168 1 0>,
<DCC_READ 0x2562116c 1 0>,
<DCC_READ 0x25621170 1 0>,
<DCC_READ 0x25621174 1 0>,
<DCC_READ 0x25621178 1 0>,
<DCC_READ 0x2562117c 1 0>,
<DCC_READ 0x25074000 1 0>,
<DCC_READ 0x25474000 1 0>,
<DCC_READ 0x25274000 1 0>,
<DCC_READ 0x25674000 1 0>,
<DCC_READ 0x24341010 3 0>;
};
};

View File

@@ -634,6 +634,26 @@
};
};
rpmh-regulator-ldob14 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob14";
qcom,regulator-type = "pmic5-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 10000>;
L14B:
pmxr2230_l14: regulator-pmxr2230-l14 {
regulator-name = "pmxr2230_l14";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <3008000>;
regulator-max-microvolt = <3200000>;
qcom,init-voltage = <3008000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
rpmh-regulator-ldob16 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob16";

View File

@@ -169,12 +169,12 @@
adspslpi_mem: adspslpi_region@9d400000 {
no-map;
reg = <0x0 0x9d400000 0x0 0x3200000>;
reg = <0x0 0x9d400000 0x0 0x3600000>;
};
q6_adsp_dtb_mem: q6_adsp_dtb_region@a0600000 {
no-map;
reg = <0x0 0xa0600000 0x0 0x80000>;
reg = <0x0 0xa2600000 0x0 0x80000>;
};
wlan_msa_mem: wlan_msa_region@a6400000 {

View File

@@ -27,7 +27,7 @@
memory { device_type = "memory"; reg = <0 0 0 0>; };
chosen: chosen {
bootargs = "loglevel=6 kpti=0 log_buf_len=256K swiotlb=noforce loop.max_part=7 pcie_ports=compat irqaffinity=0-2 cpufreq.default_governor=performance sysctl.kernel.sched_pelt_multiplier=4 kasan=off cgroup_disable=pressure cgroup.memory=nokmem,nosocket disable_dma32=on kernel.panic_on_rcu_stall=1 fw_devlink.strict=1 service_locator.enable=1 rcupdate.rcu_expedited=1 rcu_nocbs=0-7 no-steal-acc printk.console_no_auto_verbose=1 can.stats_timer=0 ftrace_dump_on_oops firmware_class.path=/vendor/firmware_mnt/image,/vendor/firmware_mnt/image/kiwi,/vendor/vm-system/oemvm/boot,/vendor/vm-system/trustedvm/boot,/vendor/firmware,/vendor/firmware/wlan/qca_cld/kiwi_v2 pci-msm-drv.pcie_sm_regs=0x1D07000,0x1040,0x1048,0x3000,0x1";
bootargs = "loglevel=6 kpti=0 log_buf_len=256K swiotlb=noforce loop.max_part=7 pcie_ports=compat irqaffinity=0-2 cpufreq.default_governor=performance kasan=off cgroup_disable=pressure cgroup.memory=nokmem,nosocket disable_dma32=on kernel.panic_on_rcu_stall=1 fw_devlink.strict=1 service_locator.enable=1 rcupdate.rcu_expedited=1 rcu_nocbs=0-7 no-steal-acc printk.console_no_auto_verbose=1 can.stats_timer=0 ftrace_dump_on_oops firmware_class.path=/vendor/firmware_mnt/image,/vendor/firmware_mnt/image/kiwi,/vendor/vm-system/oemvm/boot,/vendor/vm-system/trustedvm/boot,/vendor/firmware,/vendor/firmware/wlan/qca_cld/kiwi_v2";
stdout-path = "/soc/qcom,qupv3_0_geni_se@ac0000/qcom,qup_uart@a94000:115200n8";
};
@@ -3310,3 +3310,26 @@
};
#include "cliffs-thermal.dtsi"
//#ifdef OPLUS_ARCH_EXTENDS
&i2s1_sd1_active {
config {
/delete-property/ bias-disable;
bias-pull-down; /* PULL DOWN */
};
};
&qupv3_se0_i2c_sda_active {
config {
/delete-property/ bias-pull-up;
bias-disable;
};
};
&qupv3_se0_i2c_scl_active {
config {
/delete-property/ bias-pull-up;
bias-disable;
};
};
//#endif /* OPLUS_ARCH_EXTENDS */

View File

@@ -3904,7 +3904,7 @@
coresight-name = "coresight-ete0";
qcom,skip-power-up;
atid = <1>;
atid = <0x10>;
out-ports {
port {
ete0_out_funnel_ete: endpoint {
@@ -3920,7 +3920,7 @@
coresight-name = "coresight-ete1";
qcom,skip-power-up;
atid = <2>;
atid = <0x12>;
out-ports {
port {
ete1_out_funnel_ete: endpoint {
@@ -3936,7 +3936,7 @@
coresight-name = "coresight-ete2";
qcom,skip-power-up;
atid = <3>;
atid = <0x14>;
out-ports {
port {
ete2_out_funnel_ete: endpoint {
@@ -3952,7 +3952,7 @@
coresight-name = "coresight-ete3";
qcom,skip-power-up;
atid = <4>;
atid = <0x16>;
out-ports {
port {
ete3_out_funnel_ete: endpoint {
@@ -3968,7 +3968,7 @@
coresight-name = "coresight-ete4";
qcom,skip-power-up;
atid = <5>;
atid = <0x18>;
out-ports {
port {
ete4_out_funnel_ete: endpoint {
@@ -3984,7 +3984,7 @@
coresight-name = "coresight-ete5";
qcom,skip-power-up;
atid = <6>;
atid = <0x1a>;
out-ports {
port {
ete5_out_funnel_ete: endpoint {
@@ -4000,7 +4000,7 @@
coresight-name = "coresight-ete6";
qcom,skip-power-up;
atid = <7>;
atid = <0x1c>;
out-ports {
port {
ete6_out_funnel_ete: endpoint {
@@ -4016,7 +4016,7 @@
coresight-name = "coresight-ete7";
qcom,skip-power-up;
atid = <8>;
atid = <0x1e>;
out-ports {
port {
ete7_out_funnel_ete: endpoint {

View File

@@ -3315,7 +3315,6 @@
<DCC_WRITE 0x179811d4 0x13 0>,
<DCC_READ 0x179811d4 1 0>,
<DCC_READ 0x179811d8 1 0>,
<DCC_READ 0x1740003C 1 0>,
<DCC_READ 0x17600238 1 0>,
<DCC_READ 0x1760043C 1 0>,
<DCC_READ 0x17600440 1 0>,
@@ -4546,6 +4545,8 @@
<DCC_READ 0x03D9103C 1 0>,
<DCC_READ 0x03D9E0C8 1 0>,
<DCC_READ 0xABE0028 1 0>,
<DCC_READ 0x17BA3C94 1 0>,
<DCC_READ 0x17B93C94 1 0>,
<DCC_READ 0xAAE0028 1 0>;
};
};

View File

@@ -5,10 +5,7 @@
#include "pineapple-thermal-overlay.dtsi"
&sdhc_2 {
status = "ok";
vdd-supply = <&pm_humu_l9>;
qcom,vdd-voltage-level = <2950000 2960000>;
qcom,vdd-current-level = <0 800000>;
status = "disabled";
vdd-io-supply = <&pm_humu_l8>;
qcom,vdd-io-voltage-level = <1800000 2960000>;
@@ -39,7 +36,7 @@
label = "volume_up";
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>;
linux,can-disable;

View File

@@ -328,15 +328,11 @@
msi-map = <0x0 &gic_its 0x1480 0x1>,
<0x100 &gic_its 0x1481 0x1>; /* 32 event IDs */
perst-gpio = <&tlmm 97 0>;
wake-gpio = <&tlmm 99 0>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&pcie1_perst_default
&pcie1_clkreq_default
pinctrl-0 = <&pcie1_clkreq_default
&pcie1_wake_default>;
pinctrl-1 = <&pcie1_perst_default
&pcie1_clkreq_sleep
pinctrl-1 = <&pcie1_clkreq_sleep
&pcie1_wake_default>;
gdsc-core-vdd-supply = <&gcc_pcie_1_gdsc>;

View File

@@ -36,6 +36,7 @@
pins = "gpio30", "gpio31";
drive-strength = <2>;
bias-pull-down;
output-low;
};
};
};
@@ -108,19 +109,6 @@
};
pcie1 {
pcie1_perst_default: pcie1_perst_default {
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
drive-strength = <2>;
bias-pull-down;
};
};
pcie1_clkreq_default: pcie1_clkreq_default {
mux {
pins = "gpio98";
@@ -1858,14 +1846,22 @@
qupv3_se11_spi_sleep: qupv3_se11_spi_sleep {
mux {
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pins = "gpio12", "gpio13",
"gpio14", "gpio15";
*/
pins = "gpio13";
function = "gpio";
};
config {
/*#ifdef OPLUS_FEATURE_SENSOR_IR */
/*
pins = "gpio12", "gpio13",
"gpio14", "gpio15";
*/
pins = "gpio13";
drive-strength = <2>;
bias-disable;
};
@@ -2626,6 +2622,7 @@
pins = "gpio206";
drive-strength = <2>;
bias-pull-up;
qcom,apps;
};
};
@@ -2639,6 +2636,7 @@
pins = "gpio207";
drive-strength = <2>;
bias-pull-up;
qcom,apps;
};
};
@@ -2651,6 +2649,7 @@
config {
pins = "gpio206", "gpio207";
drive-strength = <2>;
qcom,remote;
};
};
};

View File

@@ -160,9 +160,6 @@
};
&pmk8550_gpios {
pinctrl-0 = <&alt_sleep_clk_default>;
pinctrl-names = "default";
alt_sleep_clk {
alt_sleep_clk_default: alt_sleep_clk_default {
pins = "gpio3";
@@ -170,7 +167,7 @@
input-disable;
output-enable;
bias-disable;
power-source = <0>;
power-source = <1>;
};
};
};
@@ -404,15 +401,17 @@
nvmem-cell-names = "restart_reason";
};
DBO3: regulator-dbo3 {
compatible = "qti-regulator-fixed";
regulator-name = "dbo3";
regulator-min-microvolt = <3600000>;
regulator-max-microvolt = <3600000>;
gpio = <&pm8550_gpios 9 GPIO_ACTIVE_HIGH>;
regulator-enable-ramp-delay = <1500>;
enable-active-high;
};
//#ifndef OPLUS_FEATURE_ESIM
// DBO3: regulator-dbo3 {
// compatible = "qti-regulator-fixed";
// regulator-name = "dbo3";
// regulator-min-microvolt = <3600000>;
// regulator-max-microvolt = <3600000>;
// gpio = <&pm8550_gpios 9 GPIO_ACTIVE_HIGH>;
// regulator-enable-ramp-delay = <1500>;
// enable-active-high;
// };
//#endif /*OPLUS_FEATURE_ESIM*/
pmic-pon-log {
compatible = "qcom,pmic-pon-log";

View File

@@ -817,8 +817,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_se11_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

@@ -347,6 +347,25 @@
};
};
rpmh-regulator-ldob4 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob4";
qcom,regulator-type = "pmic4-ldo";
qcom,supported-modes =
<RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
qcom,mode-threshold-currents = <0 30000>;
L4B: pm_humu_l4: regulator-pm-humu-l4 {
regulator-name = "pm_humu_l4";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
rpmh-regulator-ldob5 {
compatible = "qcom,rpmh-vrm-regulator";
qcom,resource-name = "ldob5";
@@ -479,6 +498,9 @@
qcom,init-voltage = <1200000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
qcom,proxy-consumer-enable;
// #ifdef OPLUS_FEATURE_SECURITY_COMMON
regulator-always-on;
// #endif /* OPLUS_FEATURE_SECURITY_COMMON */
};
};
@@ -517,7 +539,7 @@
regulator-name = "pm_humu_l13";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-max-microvolt = <3200000>;
qcom,init-voltage = <3000000>;
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
qcom,proxy-consumer-enable;
@@ -536,9 +558,11 @@
L14B: pm_humu_l14: regulator-pm-humu-l14 {
regulator-name = "pm_humu_l14";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <3200000>;
// #ifdef OPLUS_FEATURE_UFF_FINGERPRINT
regulator-min-microvolt = <3008000>;
regulator-max-microvolt = <3200000>;
qcom,init-voltage = <3200000>;
qcom,init-voltage = <3008000>;
//#endif /*OPLUS_FEATURE_UFF_FINGERPRINT*/
qcom,init-mode = <RPMH_REGULATOR_MODE_HPM>;
};
};
@@ -1242,9 +1266,9 @@
L5M: pm8010m_l5: regulator-pm8010m-l5 {
regulator-name = "pm8010m_l5";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
regulator-min-microvolt = <3304000>;
regulator-max-microvolt = <3304000>;
qcom,init-voltage = <3304000>;
};
};
@@ -1255,9 +1279,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>;
};
};
@@ -1320,8 +1344,8 @@
regulator-name = "pm8010n_l3";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
regulator-max-microvolt = <2960000>;
qcom,init-voltage = <2960000>;
};
};
@@ -1333,8 +1357,8 @@
regulator-name = "pm8010n_l4";
qcom,set = <RPMH_REGULATOR_SET_ALL>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
regulator-max-microvolt = <2960000>;
qcom,init-voltage = <2960000>;
};
};
@@ -1346,7 +1370,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>;
};
};

View File

@@ -27,7 +27,14 @@
chosen: chosen {
// #ifndef OPLUS_FEATURE_WIFI_BDF
/*
bootargs = "loglevel=6 kpti=0 log_buf_len=256K swiotlb=noforce kernel.panic_on_rcu_stall=1 fw_devlink.strict=1 service_locator.enable=1 rcupdate.rcu_expedited=1 rcu_nocbs=0-7 irqaffinity=0-1 cpufreq.default_governor=performance sysctl.kernel.sched_pelt_multiplier=4 no-steal-acc cgroup_disable=pressure cgroup.memory=nokmem,nosocket printk.console_no_auto_verbose=1 kasan=off service_locator.enable=1 loop.max_part=7 no-steal-acc can.stats_timer=0 ufs_qcom.crash_on_ber=n ftrace_dump_on_oops firmware_class.path=/vendor/firmware_mnt/image,/vendor/firmware_mnt/image/kiwi,/vendor/vm-system/oemvm/boot,/vendor/vm-system/trustedvm/boot,/vendor/firmware,/vendor/firmware/wlan/qca_cld/kiwi_v2 pcie_ports=compat disable_dma32=on pci-msm-drv.pcie_sm_regs=0x1D07000,0x1040,0x1048,0x3000,0x2 slub_debug=-";
*/
// #else
bootargs = "loglevel=6 kpti=0 log_buf_len=1M swiotlb=noforce kernel.panic_on_rcu_stall=1 fw_devlink.strict=1 service_locator.enable=1 rcupdate.rcu_expedited=1 rcu_nocbs=0-7 irqaffinity=0-1 cpufreq.default_governor=performance sysctl.kernel.sched_pelt_multiplier=4 no-steal-acc cgroup_disable=pressure cgroup.memory=nokmem,nosocket printk.console_no_auto_verbose=0 kasan=off service_locator.enable=1 loop.max_part=7 no-steal-acc can.stats_timer=0 ufs_qcom.crash_on_ber=n ftrace_dump_on_oops firmware_class.path=/mnt/vendor/persist/copy,/odm/etc/wifi,/vendor/firmware_mnt/image,/vendor/firmware_mnt/image/kiwi,/vendor/vm-system/oemvm/boot,/vendor/vm-system/trustedvm/boot,/vendor/firmware,/vendor/firmware/wlan/qca_cld/kiwi_v2 pcie_ports=compat disable_dma32=on pci-msm-drv.pcie_sm_regs=0x1D07000,0x1040,0x1048,0x3000,0x2 slub_debug=-";
// #endif /* OPLUS_FEATURE_WIFI_BDF */
stdout-path = "/soc/qcom,qupv3_2_geni_se@8c0000/qcom,qup_uart@89c000:115200n8";
};
@@ -2640,6 +2647,12 @@
compatible = "qcom,altmode-glink";
#altmode-cells = <1>;
};
/*#ifdef OPLUS_FEATURE_CHG_BASIC*/
wireless_pen_hboost: qcom,wireless_pen_hboost {
compatible = "qcom,wireless-pen-hboost";
};
/*#endif OPLUS_FEATURE_CHG_BASIC*/
};
qcom,pmic_glink_log {
@@ -2829,6 +2842,33 @@
< 1 >;
};
silver_vote_l3_freq_table: silver-vote-l3-freq-table {
qcom,freq-vote-tbl =
< 307200 >,
< 307200 >,
< 307200 >,
< 307200 >,
< 384000 >,
< 499200 >,
< 614400 >,
< 729600 >,
< 844800 >,
< 844800 >,
< 940800 >,
< 1036800 >,
< 1132800 >,
< 1248000 >,
< 1344000 >,
< 1440000 >,
< 1555200 >,
< 1555200 >,
< 1555200 >,
< 1651200 >,
< 1843200 >,
< 1939200 >,
< 2035200 >;
};
qcom_dcvs: qcom,dcvs {
compatible = "qcom,dcvs";
#address-cells = <1>;
@@ -2839,6 +2879,7 @@
compatible = "qcom,dcvs-hw";
qcom,dcvs-hw-type = <2>;
qcom,bus-width = <32>;
qcom,l3-cobuck-vote = <1>;
reg = <0x17d90000 0x4000>, <0x17d90100 0xa0>;
reg-names = "l3-base", "l3tbl-base";
@@ -3015,6 +3056,7 @@
compatible = "qcom,memlat-grp";
qcom,target-dev = <&qcom_l3_dcvs_hw>;
qcom,sampling-path = <&l3_dcvs_sp>;
qcom,freq-vote-tbl = <&silver_vote_l3_freq_table>;
qcom,miss-ev = <0x17>;
silver {
@@ -3450,10 +3492,12 @@
reg = <0x0 0x9de80000 0x0 0x80000>;
};
/* reg = <0x0 0x9df00000 0x0 0x4080000>; */
adsp_slpi_mem: adspslpi_region@9df00000 {
no-map;
reg = <0x0 0x9df00000 0x0 0x4080000>;
reg = <0x0 0x9df00000 0x0 0x5280000>;
};
// #endif OPLUS_SENSOR_FEATURE
/* uefi region can be reused by apps */
@@ -3557,14 +3601,17 @@
no-map;
};
/* #ifdef OPLUS_BUG_STABILITY */
ramoops_mem: ramoops_region {
compatible = "ramoops";
alloc-ranges = <0x0 0x00000000 0xffffffff 0xffffffff>;
size = <0x0 0x200000>;
size = <0x0 0x240000>;
pmsg-size = <0x200000>;
console-size = <0x40000>;
mem-type = <2>;
};
};
/* #endif OPLUS_BUG_STABILITY */
#include "ipcc-test.dtsi"
#include "pineapple-gdsc.dtsi"
@@ -3747,3 +3794,19 @@
parent-supply = <&VDD_MM_MXC_VOTER_LEVEL>;
status = "ok";
};
//#ifdef OPLUS_ARCH_EXTENDS
&i2s1_sd1_active {
config {
/delete-property/ bias-disable;
bias-pull-down; /* PULL DOWN */
};
};
&tdm1_dout_active {
config {
/delete-property/ bias-disable;
bias-pull-down; /* PULL DOWN */
};
};
//#endif /* OPLUS_ARCH_EXTENDS */

View File

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