android_kernel_motorola_sm6375/qcom/holi-mtp-usbc-pm6125.dtsi
Manaf Meethalavalappu Pallikunhi 86aa906b99 ARM: dts: qcom: enable cx ipeak lm separately for blair and holi-pm6125
Enable cx ipeak lm device driver separately for blair and
holi-pm6125 targets based on latest devicetree configurations.

Change-Id: I3326ac8760d5eef3d6e6ff118c4c8a1e3e52c659
2021-07-12 13:22:37 +05:30

452 lines
12 KiB
Devicetree

#include "holi-audio-overlay.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/linux-event-codes.h>
#include "holi-pm7250b.dtsi"
#include "holi-pmic-overlay-pm6125.dtsi"
#include "holi-thermal-overlay-pm6125.dtsi"
#include "display/holi-sde-display-mtp-pm6125.dtsi"
#include <dt-bindings/iio/qti_power_supply_iio.h>
#include "camera/holi-camera-pm6125-overlay.dtsi"
&wcd938x_codec {
cdc-vdd-rxtx-supply = <&L9A>;
cdc-vddio-supply = <&L9A>;
qcom,cdc-static-supplies = "cdc-vdd-rxtx",
"cdc-vddio";
/*
* Overriding cdc-vdd-mic-bias-supply to dummy value
* to avoid compilation errors as BOB is not definied
* for pm6125
*/
cdc-vdd-mic-bias-supply = <>;
};
&wcd937x_codec {
cdc-vdd-rxtx-supply = <&L9A>;
cdc-vddpx-supply = <&L9A>;
qcom,cdc-static-supplies = "cdc-vdd-rxtx",
"cdc-vddpx";
/*
* Overriding cdc-vdd-mic-bias-supply to dummy value
* to avoid compilation errors as BOB is not definied
* for pm6125
*/
cdc-vdd-mic-bias-supply = <>;
};
&wsa881x_i2c_e {
cdc-vdd-1p8-supply = <&L9A>;
};
&wsa881x_i2c_f {
cdc-vdd-1p8-supply = <&L9A>;
};
/* Dummy LDO reference */
&sdhc_1 {
status = "ok"
pinctrl-names = "default", "sleep";
pinctrl-0 = <&sdc1_on>;
pinctrl-1 = <&sdc1_off>;
vdd-supply = <&L24A>;
qcom,vdd-voltage-level = <2960000 2960000>;
qcom,vdd-current-level = <0 570000>;
vdd-io-supply = <&L11A>;
qcom,vdd-io-always-on;
qcom,vdd-io-lpm-sup;
qcom,vdd-io-voltage-level = <1800000 1800000>;
qcom,vdd-io-current-level = <0 325000>;
};
&sdhc_2 {
status = "ok"
pinctrl-names = "default", "sleep";
pinctrl-0 = <&sdc2_on>;
pinctrl-1 = <&sdc2_off>;
vdd-supply = <&L22A>;
qcom,vdd-voltage-level = <2960000 2960000>;
qcom,vdd-current-level = <0 800000>;
vdd-io-supply = <&L5A>;
qcom,vdd-io-voltage-level = <1800000 2960000>;
qcom,vdd-io-current-level = <0 22000>;
cd-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
};
&ufsphy_mem {
compatible = "qcom,ufs-phy-qmp-v3";
vdda-phy-supply = <&L7A>;
vdda-pll-supply = <&L4A>;
vdda-phy-max-microamp = <62900>;
vdda-pll-max-microamp = <18300>;
status = "ok"
};
&ufshc_mem {
vdd-hba-supply = <&gcc_ufs_phy_gdsc>;
vdd-hba-fixed-regulator;
vcc-supply = <&L24A>;
vcc-voltage-level = <2950000 2960000>;
vcc-max-microamp = <800000>;
vccq2-supply = <&L11A>;
vccq2-max-microamp = <800000>;
vccq2-voltage-level = <1800000 1800000>;
qcom,vddp-ref-clk-supply = <&L4A>;
qcom,vddp-ref-clk-max-microamp = <100>;
status = "ok"
};
&qupv3_se0_i2c {
status = "ok"
#address-cells = <1>;
#size-cells = <0>;
nq@28 {
compatible = "qcom,sn-nci";
reg = <0x28>;
qcom,sn-irq = <&tlmm 9 0x00>;
qcom,sn-ven = <&tlmm 6 0x00>;
qcom,sn-firm = <&tlmm 8 0x00>;
qcom,sn-clkreq = <&tlmm 7 0x00>;
qcom,sn-vdd-1p8-supply = <&L9A>;
qcom,sn-vdd-1p8-voltage = <1800000 1800000>;
qcom,sn-vdd-1p8-current = <157000>;
interrupt-parent = <&tlmm>;
interrupts = <9 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>;
};
};
&holi_snd {
qcom,model = "holi-usbc-snd-card";
qcom,msm-mbhc-usbc-audio-supported = <1>;
qcom,msm-mbhc-hphl-swh = <0>;
qcom,msm-mbhc-gnd-swh = <0>;
fsa4480-i2c-handle = <&fsa4480>;
};
&qupv3_se10_i2c {
status = "ok"
fsa4480: fsa4480@42 {
compatible = "qcom,fsa4480-i2c";
reg = <0x42>;
io-channels = <&pm7250b_charger PSY_IIO_TYPEC_ACCESSORY_MODE>;
io-channel-names = "typec_mode";
qcom,use-power-supply = <1>;
};
};
&soc {
gpio_keys {
compatible = "gpio-keys";
label = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_up_default>;
vol_up {
label = "volume_up";
gpios = <&pmr735a_gpios 1 GPIO_ACTIVE_LOW>;
linux,input-type = <1>;
linux,code = <KEY_VOLUMEUP>;
gpio-key,wakeup;
debounce-interval = <15>;
linux,can-disable;
};
};
mtp_batterydata: qcom,battery-data {
qcom,batt-id-range-pct = <15>;
#include "qg-batterydata-alium-3600mah.dtsi"
#include "qg-batterydata-atl466271_3300mAh.dtsi"
#include "qg-batterydata-atl436186020H_3780mAh.dtsi"
};
};
&soc {
touch_avdd: touch_avdd_stub {
/*
* Touch eLDO controlled by gpio#53 is always ON.
* Using dummy regulator.
*/
compatible = "qcom,stub-regulator";
regulator-name = "touch_avdd_stub";
qcom,hpm-min-load = <10000>;
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3544000>;
};
};
&qupv3_se8_i2c {
status = "okay";
qcom,i2c-touch-active="synaptics,tcm-i2c";
synaptics_tcm@20 {
compatible = "synaptics,tcm-i2c";
reg = <0x20>;
interrupt-parent = <&tlmm>;
interrupts = <22 0x2008>;
pinctrl-names = "pmx_ts_active","pmx_ts_suspend",
"pmx_ts_release";
pinctrl-0 = <&ts_active>;
pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
pinctrl-2 = <&pmx_ts_release>;
vdd-supply = <&L9A>;
avdd-supply = <&touch_avdd>;
synaptics,pwr-reg-name = "avdd";
synaptics,bus-reg-name = "vdd";
synaptics,irq-gpio = <&tlmm 22 0x2008>;
synaptics,irq-on-state = <0>;
synaptics,reset-gpio = <&tlmm 21 0x00>;
synaptics,reset-on-state = <0>;
synaptics,reset-active-ms = <20>;
synaptics,reset-delay-ms = <200>;
synaptics,power-delay-ms = <200>;
synaptics,ubl-i2c-addr = <0x20>;
synaptics,extend_report;
synaptics,firmware-name = "synaptics_firmware.img";
panel = <&dsi_rm69299_visionox_amoled_video
&dsi_rm69299_visionox_amoled_cmd>;
};
};
&pm7250b_charger {
status = "ok"
#io-channel-cells = <1>;
io-channels = <&pm7250b_vadc ADC5_USB_IN_V_16>,
<&pm7250b_vadc ADC5_USB_IN_I>,
<&pm7250b_vadc ADC5_CHG_TEMP>,
<&pm7250b_vadc ADC5_DIE_TEMP>,
<&pm7250b_vadc ADC5_AMUX_THM3_100K_PU>,
<&pm7250b_vadc ADC5_SBUx>,
<&pm7250b_vadc ADC5_VPH_PWR>,
<&pm7250b_vadc ADC5_AMUX_THM1_100K_PU>,
<&pm7250b_qg PSY_IIO_RESISTANCE_ID>,
<&pm7250b_qg PSY_IIO_VOLTAGE_NOW>,
<&pm7250b_qg PSY_IIO_TEMP>,
<&pm7250b_qg PSY_IIO_CAPACITY>,
<&pm7250b_qg PSY_IIO_VOLTAGE_OCV>,
<&pm7250b_qg PSY_IIO_VOLTAGE_AVG>,
<&pm7250b_qg PSY_IIO_DEBUG_BATTERY>,
<&pm7250b_qg PSY_IIO_REAL_CAPACITY>,
<&pm7250b_qg PSY_IIO_CC_SOC>,
<&pm7250b_qg PSY_IIO_CURRENT_NOW>,
<&pm7250b_qg PSY_IIO_VOLTAGE_MAX>,
<&pm7250b_qg PSY_IIO_CHARGE_FULL>,
<&pm7250b_qg PSY_IIO_CHARGE_COUNTER>,
<&pm7250b_qg PSY_IIO_CYCLE_COUNT>,
<&pm7250b_qg PSY_IIO_CHARGE_FULL_DESIGN>,
<&pm7250b_qg PSY_IIO_TIME_TO_FULL_NOW>,
<&smb1394_div2_cp_primary PSY_IIO_PARALLEL_MODE>,
<&smb1394_div2_cp_primary PSY_IIO_PARALLEL_OUTPUT_MODE>,
<&smb1394_div2_cp_primary PSY_IIO_MIN_ICL>,
<&smb1394_div2_cp_primary PSY_IIO_CP_SWITCHER_EN>,
<&smb1394_div2_cp_primary PSY_IIO_CP_ENABLE>,
<&smb1394_div2_cp_primary PSY_IIO_CP_ILIM>,
<&smb1394_div2_cp_primary PSY_IIO_CP_DIE_TEMP>;
io-channel-names = "usb_in_voltage",
"usb_in_current",
"chg_temp",
"die_temp",
"conn_temp",
"sbux_res",
"vph_voltage",
"skin_temp",
"resistance_id",
"voltage_now",
"temp",
"capacity",
"voltage_ocv",
"voltage_avg",
"debug_battery",
"real_capacity",
"cc_soc",
"current_now",
"voltage_max",
"charge_full",
"charge_counter",
"cycle_count",
"charge_full_design",
"time_to_full_now",
"cp_parallel_mode",
"cp_parallel_output_mode",
"cp_min_icl",
"cp_switcher_en",
"cp_enable",
"cp_ilim",
"cp_die_temp";
qcom,battery-data = <&mtp_batterydata>;
qcom,sec-charger-config = <1>;
qcom,auto-recharge-soc = <98>;
qcom,step-charging-enable;
qcom,sw-jeita-enable;
qcom,charger-temp-max = <800>;
qcom,smb-temp-max = <800>;
qcom,suspend-input-on-debug-batt;
qcom,fcc-stepping-enable;
qcom,fcc-step-delay-ms = <100>;
qcom,fcc-step-size-ua = <100000>;
qcom,smb-internal-pull-kohm = <0>;
qcom,en-skin-therm-mitigation;
qcom,hvdcp3-standalone-config;
};
&pm7250b_qg {
status = "ok"
#io-channel-cells = <1>;
io-channels = <&pm7250b_vadc ADC5_BAT_THERM_100K_PU>,
<&pm7250b_vadc ADC5_BAT_ID_100K_PU>,
<&pm7250b_charger PSY_IIO_INPUT_CURRENT_LIMITED>,
<&pm7250b_charger PSY_IIO_RECHARGE_SOC>,
<&pm7250b_charger PSY_IIO_FORCE_RECHARGE>,
<&pm7250b_charger PSY_IIO_CHARGE_DONE>,
<&smb1394_div2_cp_primary PSY_IIO_CP_ENABLE>;
io-channel-names = "batt-therm",
"batt-id",
"input_current_limited",
"recharge_soc",
"force_recharge",
"charge_done",
"cp_charging_enabled";
qcom,battery-data = <&mtp_batterydata>;
qcom,qg-iterm-ma = <150>;
qcom,hold-soc-while-full;
qcom,linearize-soc;
qcom,cl-feedback-on;
qcom,tcss-enable;
qcom,fvss-enable;
qcom,bass-enable;
qcom,use-cp-iin-sns;
qcom,vbatt-cutoff-mv = <3400>;
qcom,vbatt-empty-mv = <3200>;
qcom,vbatt-empty-cold-mv = <3100>;
qcom,vbatt-low-mv = <3500>;
qcom,fvss-vbatt-mv = <3500>;
};
#include "camera/holi-camera-sensor-usbc-pm6125-mtp.dtsi"
&pm7250b_charger {
dpdm-supply = <&qusb_phy0>;
smb5_vbus: qcom,smb5-vbus {
regulator-name = "smb5-vbus";
};
smb5_vconn: qcom,smb5-vconn {
regulator-name = "smb5-vconn";
};
};
&pm7250b_vadc {
smb1390_therm@e {
qcom,scale-fn-type = <ADC_SCALE_HW_CALIB_PM5_SMB1398_TEMP>;
};
};
&pm7250b_gpios {
smb_stat {
smb_stat_default: smb_stat_default {
pins = "gpio6";
function = "normal";
input-enable;
bias-pull-up;
qcom,pull-up-strength = <PMIC_GPIO_PULL_UP_30>;
power-source = <0>;
};
};
};
&qupv3_se10_i2c {
status = "ok"
#include "smb1394.dtsi"
};
&smb1394 {
interrupts = <0x2 0xc5 0x0 IRQ_TYPE_LEVEL_LOW>;
interrupt-parent = <&spmi_bus>;
interrupt-names = "smb1394";
pinctrl-names = "default";
qcom,enable-toggle-stat;
pinctrl-0 = <&smb_stat_default>;
status = "ok"
};
&smb1394_div2_cp_primary {
io-channels = <&pm7250b_vadc ADC5_AMUX_THM2>,
<&pm7250b_charger PSY_IIO_USB_REAL_TYPE>,
<&pm7250b_charger PSY_IIO_ADAPTER_CC_MODE>,
<&pm7250b_charger PSY_IIO_PD_CURRENT_MAX>,
<&pm7250b_charger PSY_IIO_USB_INPUT_CURRENT_SETTLED>,
<&pm7250b_charger PSY_IIO_SMB_EN_MODE>,
<&pm7250b_charger PSY_IIO_SMB_EN_REASON>;
io-channel-names = "die_temp",
"real_type",
"adapter_cc_mode",
"pd_current_max",
"input_current_settled",
"smb_en_mode",
"smb_en_reason";
qcom,parallel-input-mode = <1>; /* USBIN */
qcom,parallel-output-mode = <2>; /* VBAT */
status = "ok"
};
&pm7250b_pdphy {
vdd-pdphy-supply = <&L7E>;
vbus-supply = <&smb5_vbus>;
vconn-supply = <&smb5_vconn>;
#io-channel-cells = <1>;
io-channels = <&pm7250b_charger PSY_IIO_PD_ACTIVE>,
<&pm7250b_charger PSY_IIO_TYPEC_CC_ORIENTATION>,
<&pm7250b_charger PSY_IIO_CONNECTOR_TYPE>,
<&pm7250b_charger PSY_IIO_TYPEC_POWER_ROLE>,
<&pm7250b_charger PSY_IIO_PD_USB_SUSPEND_SUPPORTED>,
<&pm7250b_charger PSY_IIO_TYPEC_SRC_RP>,
<&pm7250b_charger PSY_IIO_PD_IN_HARD_RESET>,
<&pm7250b_charger PSY_IIO_PD_CURRENT_MAX>,
<&pm7250b_charger PSY_IIO_PR_SWAP>,
<&pm7250b_charger PSY_IIO_PD_VOLTAGE_MIN>,
<&pm7250b_charger PSY_IIO_PD_VOLTAGE_MAX>,
<&pm7250b_charger PSY_IIO_USB_REAL_TYPE>,
<&pm7250b_charger PSY_IIO_TYPEC_MODE>,
<&pm7250b_charger PSY_IIO_PE_START>;
io-channel-names = "pd_active",
"typec_cc_orientation",
"connector_type",
"typec_power_role",
"pd_usb_suspend_supported",
"typec_src_rp",
"pd_in_hard_reset",
"pr_current_max",
"pr_swap",
"pd_voltage_min",
"pd_voltage_max",
"real_type",
"typec_mode",
"pe_start";
};
&usb0 {
extcon = <&pm7250b_pdphy>, <&pm7250b_charger>, <&eud>;
#io-channel-cells = <1>;
io-channels= <&pm7250b_charger PSY_IIO_USB_REAL_TYPE>;
io-channel-names = "chg_type";
};