ARM: dts: msm: Vote vccq2 via vccq to support GKI

vccq2 is supplied by eLDO and this eLDO is controlled via
L9B regulator which only supports max 1.2V but since for
gki build QTI flag is disabled vote for vccq2 regulator
is taking default values from driver and not from dt. Hence
use vccq to vote on L9B to enable eLDO for UFS2.2 devices
since L9B is common regulator as both vccq & vccq2.

Change-Id: Icf8c9f169d693a6dad608c16baa9ed9666905430
This commit is contained in:
Ram Prakash Gupta 2021-01-21 13:02:56 +05:30
commit aa625017ef
3 changed files with 45 additions and 27 deletions

View file

@ -70,20 +70,26 @@
vcc-low-voltage-sup;
vcc-max-microamp = <800000>;
/*
* Yupik target supports both UFS2.2 & UFS3.1, here
* vccq2 is supplied via eLDO, and that is controlled via
* L9B which supports a max voltage of 1.2V, but eLDO would
* supply 1.8V. and same L9B acts as vccq voltage for UFS3.1
* devices.
* Here L9B can max support for 1.2V but UFS GKI driver code
* votes for 1.8V, which is leading to failure from pmic
* regulator.
*
* Now since vccq and control of eLDO are common that is L9B
* we can use vccq vote as control of eLDO for vccq2.
* Hence vccq entries shall be used for both type of UFS
* devices only. And vccq entries should not be changed/removed
* for any design alteration.
*/
vccq-supply = <&L9B>;
vccq-max-microamp = <900000>;
vccq-min-microamp = <10000>;
/*
* Vccq2 voltage level should be 1.8V but in case of yupik
* vccq2 is supplied via eLDO, and that is controlled via
* L9B which supports a max voltage of 1.2V, but eLDO would
* supply 1.8V.
*/
vccq2-supply = <&L9B>;
vccq2-voltage-level = <1200000 1200000>;
vccq2-max-microamp = <800000>;
qcom,vddp-ref-clk-supply = <&L9B>;
qcom,vddp-ref-clk-max-microamp = <100>;

View file

@ -71,20 +71,26 @@
vcc-low-voltage-sup;
vcc-max-microamp = <800000>;
/*
* Yupik target supports both UFS2.2 & UFS3.1, here
* vccq2 is supplied via eLDO, and that is controlled via
* L9B which supports a max voltage of 1.2V, but eLDO would
* supply 1.8V. and same L9B acts as vccq voltage for UFS3.1
* devices.
* Here L9B can max support for 1.2V but UFS GKI driver code
* votes for 1.8V, which is leading to failure from pmic
* regulator.
*
* Now since vccq and control of eLDO are common that is L9B
* we can use vccq vote as control of eLDO for vccq2.
* Hence vccq entries shall be used for both type of UFS
* devices only. And vccq entries should not be changed/removed
* for any design alteration.
*/
vccq-supply = <&L9B>;
vccq-max-microamp = <900000>;
vccq-min-microamp = <10000>;
/*
* Vccq2 voltage level should be 1.8V but in case of yupik
* vccq2 is supplied via eLDO, and that is controlled via
* L9B which supports a max voltage of 1.2V, but eLDO would
* supply 1.8V.
*/
vccq2-supply = <&L9B>;
vccq2-voltage-level = <1200000 1200000>;
vccq2-max-microamp = <800000>;
qcom,vddp-ref-clk-supply = <&L9B>;
qcom,vddp-ref-clk-max-microamp = <100>;

View file

@ -72,20 +72,26 @@
vcc-low-voltage-sup;
vcc-max-microamp = <800000>;
/*
* Yupik target supports both UFS2.2 & UFS3.1, here
* vccq2 is supplied via eLDO, and that is controlled via
* L9B which supports a max voltage of 1.2V, but eLDO would
* supply 1.8V. and same L9B acts as vccq voltage for UFS3.1
* devices.
* Here L9B can max support for 1.2V but UFS GKI driver code
* votes for 1.8V, which is leading to failure from pmic
* regulator.
*
* Now since vccq and control of eLDO are common that is L9B
* we can use vccq vote as control of eLDO for vccq2.
* Hence vccq entries shall be used for both type of UFS
* devices only. And vccq entries should not be changed/removed
* for any design alteration.
*/
vccq-supply = <&L9B>;
vccq-max-microamp = <900000>;
vccq-min-microamp = <10000>;
/*
* Vccq2 voltage level should be 1.8V but in case of yupik
* vccq2 is supplied via eLDO, and that is controlled via
* L9B which supports a max voltage of 1.2V, but eLDO would
* supply 1.8V.
*/
vccq2-supply = <&L9B>;
vccq2-voltage-level = <1200000 1200000>;
vccq2-max-microamp = <800000>;
qcom,vddp-ref-clk-supply = <&L9B>;
qcom,vddp-ref-clk-max-microamp = <100>;