From 26cb3ac337f66fed663c04df219697e55fc10c83 Mon Sep 17 00:00:00 2001 From: Jishnu Prakash Date: Thu, 14 Oct 2021 19:39:11 +0530 Subject: [PATCH] ARM: dts: msm: Update PMIC support for cape Add PMIC peripheral configurations for QRD. Add a nvmem cell for adc scaling within PMK8350 SDAM127 for yupik. This is used by clients to read the type of ADC scaling used for ibat. Also add ADC channels with extended scaling for IBAT which can be enabled optionally. Change-Id: Ia64727553544b58fe77205e270755c1d3738514a --- qcom/cape-mtp.dtsi | 1 - qcom/cape-pmic-overlay.dtsi | 21 +++++++++ qcom/cape-qrd.dtsi | 94 ++++++++++++++++++++++++++++++++++++- qcom/pmk8350.dtsi | 7 +++ 4 files changed, 121 insertions(+), 2 deletions(-) diff --git a/qcom/cape-mtp.dtsi b/qcom/cape-mtp.dtsi index c47f1ed2..4bc68fcf 100644 --- a/qcom/cape-mtp.dtsi +++ b/qcom/cape-mtp.dtsi @@ -45,5 +45,4 @@ &battery_charger { qcom,thermal-mitigation = <3000000 1500000 1000000 500000>; qcom,wireless-fw-name = "idt9415.bin"; - qcom,shutdown-voltage = <3100>; }; diff --git a/qcom/cape-pmic-overlay.dtsi b/qcom/cape-pmic-overlay.dtsi index c4cf9ae2..27d203e3 100644 --- a/qcom/cape-pmic-overlay.dtsi +++ b/qcom/cape-pmic-overlay.dtsi @@ -58,6 +58,13 @@ }; }; +&pmk8350_sdam_23 { + adc_scaling: scaling@bf { + reg = <0xbf 0x1>; + bits = <0 2>; + }; +}; + &pm8350b_haptics { status = "ok"; nvmem-cell-names = "hap_cl_brake"; @@ -153,6 +160,20 @@ qcom,pre-scaling = <1000 305185>; }; + pm8350b_ichg_fb_2x { + reg = ; + label = "pm8350b_ichg_fb_2x"; + qcom,pre-scaling = <1000 610370>; + status = "disabled"; + }; + + pm8350b_ichg_fb_2p5x { + reg = ; + label = "pm8350b_ichg_fb_2p5x"; + qcom,pre-scaling = <1000 762963>; + status = "disabled"; + }; + pm8350b_usb_in_v_div_16 { reg = ; label = "pm8350b_usb_in_v_div_16"; diff --git a/qcom/cape-qrd.dtsi b/qcom/cape-qrd.dtsi index b4726b01..337aa87e 100644 --- a/qcom/cape-qrd.dtsi +++ b/qcom/cape-qrd.dtsi @@ -1 +1,93 @@ -&soc { }; +#include +#include + +#include "cape-pmic-overlay.dtsi" + +&soc { + gpio_keys { + compatible = "gpio-keys"; + label = "gpio-keys"; + + pinctrl-names = "default"; + pinctrl-0 = <&key_vol_up_default>; + + vol_up { + label = "volume_up"; + gpios = <&pm8350_gpios 6 GPIO_ACTIVE_LOW>; + linux,input-type = <1>; + linux,code = ; + gpio-key,wakeup; + debounce-interval = <15>; + linux,can-disable; + }; + }; +}; + +&pm8350b_haptics { + qcom,vmax-mv = <1300>; + qcom,lra-period-us = <5880>; + status = "ok"; + + effect_0 { + /* CLICK */ + qcom,wf-vmax-mv = <1800>; + qcom,wf-pattern-period-us = <5880>; + }; + + effect_1 { + /* DOUBLE_CLICK */ + qcom,wf-vmax-mv = <1800>; + qcom,wf-pattern-period-us = <5880>; + }; + + effect_2 { + /* TICK */ + qcom,wf-vmax-mv = <1800>; + qcom,wf-pattern-period-us = <5880>; + }; + + effect_3 { + /* THUD */ + qcom,wf-vmax-mv = <1800>; + qcom,wf-pattern-period-us = <5880>; + }; + + effect_4 { + /* POP */ + qcom,wf-vmax-mv = <1800>; + qcom,wf-pattern-period-us = <5880>; + }; + + effect_5 { + /* HEAVY CLICK */ + qcom,wf-vmax-mv = <1800>; + qcom,wf-pattern-period-us = <5880>; + }; +}; + +&pm8350c_switch0 { + qcom,led-mask = <9>; /* Channels 1 & 4 */ + qcom,symmetry-en; +}; + +&pm8350c_switch1 { + qcom,led-mask = <6>; /* Channels 2 & 3 */ + qcom,symmetry-en; +}; + +&pm8350c_switch2 { + qcom,led-mask = <15>; /* All Channels */ + qcom,symmetry-en; +}; + +&pm8350c_flash { + status = "ok"; +}; + +&battery_charger { + qcom,thermal-mitigation = <11500000 11000000 10500000 10000000 9500000 + 9000000 8500000 8000000 7500000 7000000 6500000 + 6000000 5500000 5000000 4500000 4000000 3500000 + 3000000 2500000 2000000 1500000 1000000 500000>; + qcom,wireless-fw-name = "idt9415.bin"; +}; diff --git a/qcom/pmk8350.dtsi b/qcom/pmk8350.dtsi index 0b35d6cd..8b6ba3b2 100644 --- a/qcom/pmk8350.dtsi +++ b/qcom/pmk8350.dtsi @@ -224,6 +224,13 @@ reg = <0x8500>; }; + pmk8350_sdam_23: sdam@8600 { + compatible = "qcom,spmi-sdam"; + reg = <0x8600>; + #address-cells = <1>; + #size-cells = <1>; + }; + pmk8350_sdam_41: sdam@9800 { compatible = "qcom,spmi-sdam"; reg = <0x9800>;