diff mbox

arm64: dts: exynos: set LDO7 regulator as always on

Message ID 1485261928-10769-1-git-send-email-a.hajda@samsung.com (mailing list archive)
State Accepted
Headers show

Commit Message

Andrzej Hajda Jan. 24, 2017, 12:45 p.m. UTC
LDO7 regulator beside DSI and HDMI provides power for core blocks in Exynos
5433 SoC. Disabling it causes serious current leak - about 200mA.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
---
 arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Krzysztof Kozlowski Jan. 24, 2017, 5:52 p.m. UTC | #1
On Tue, Jan 24, 2017 at 01:45:28PM +0100, Andrzej Hajda wrote:
> LDO7 regulator beside DSI and HDMI provides power for core blocks in Exynos
> 5433 SoC. Disabling it causes serious current leak - about 200mA.
> 
> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
> ---
>  arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> index 5f1e172..b22bec8 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> @@ -432,6 +432,10 @@
>  				regulator-name = "VDD18_MIPI2L_1.8V_AP";
>  				regulator-min-microvolt = <1800000>;
>  				regulator-max-microvolt = <1800000>;
> +				regulator-always-on;
> +				regulator-state-mem {
> +					regulator-off-in-suspend;
> +				};

Thanks, applied.

Just to satisfy my curiosity, how disabling the regulator causes current
leak? What happens exactly?

Best regards,
Krzysztof

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Javier Martinez Canillas Jan. 24, 2017, 5:57 p.m. UTC | #2
Hello Krzysztof,

On 01/24/2017 02:52 PM, Krzysztof Kozlowski wrote:
> On Tue, Jan 24, 2017 at 01:45:28PM +0100, Andrzej Hajda wrote:
>> LDO7 regulator beside DSI and HDMI provides power for core blocks in Exynos
>> 5433 SoC. Disabling it causes serious current leak - about 200mA.
>>
>> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
>> ---
>>  arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>> index 5f1e172..b22bec8 100644
>> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>> @@ -432,6 +432,10 @@
>>  				regulator-name = "VDD18_MIPI2L_1.8V_AP";
>>  				regulator-min-microvolt = <1800000>;
>>  				regulator-max-microvolt = <1800000>;

I see you already applied, but I think it would be good to have some comments
here explaining why the regulator should be always-on. Otherwise, in future a
developer might want to disable the regulator since it may think that is not
needed due dsi and hdmi already enabling it.

>> +				regulator-always-on;
>> +				regulator-state-mem {
>> +					regulator-off-in-suspend;
>> +				};
> 
> Thanks, applied.
>
> Just to satisfy my curiosity, how disabling the regulator causes current
> leak? What happens exactly?
>

I was wondering the same.

> Best regards,
> Krzysztof
> 

Best regards,
Krzysztof Kozlowski Jan. 24, 2017, 6:26 p.m. UTC | #3
On Tue, Jan 24, 2017 at 02:57:00PM -0300, Javier Martinez Canillas wrote:
> Hello Krzysztof,
> 
> On 01/24/2017 02:52 PM, Krzysztof Kozlowski wrote:
> > On Tue, Jan 24, 2017 at 01:45:28PM +0100, Andrzej Hajda wrote:
> >> LDO7 regulator beside DSI and HDMI provides power for core blocks in Exynos
> >> 5433 SoC. Disabling it causes serious current leak - about 200mA.
> >>
> >> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
> >> ---
> >>  arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 4 ++++
> >>  1 file changed, 4 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> >> index 5f1e172..b22bec8 100644
> >> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> >> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> >> @@ -432,6 +432,10 @@
> >>  				regulator-name = "VDD18_MIPI2L_1.8V_AP";
> >>  				regulator-min-microvolt = <1800000>;
> >>  				regulator-max-microvolt = <1800000>;
> 
> I see you already applied, but I think it would be good to have some comments
> here explaining why the regulator should be always-on. Otherwise, in future a
> developer might want to disable the regulator since it may think that is not
> needed due dsi and hdmi already enabling it.

It is a good idea however we never put such information for other
regulators... If agreed, we might make it a requirement for new DTS and
new changes.

Anyway one could get this from the log itself.

> 
> >> +				regulator-always-on;
> >> +				regulator-state-mem {
> >> +					regulator-off-in-suspend;
> >> +				};
> > 
> > Thanks, applied.
> >
> > Just to satisfy my curiosity, how disabling the regulator causes current
> > leak? What happens exactly?
> >
> 
> I was wondering the same.
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Marek Szyprowski Jan. 25, 2017, 7:13 a.m. UTC | #4
Hi Javier,


On 2017-01-24 18:57, Javier Martinez Canillas wrote:
> Hello Krzysztof,
>
> On 01/24/2017 02:52 PM, Krzysztof Kozlowski wrote:
>> On Tue, Jan 24, 2017 at 01:45:28PM +0100, Andrzej Hajda wrote:
>>> LDO7 regulator beside DSI and HDMI provides power for core blocks in Exynos
>>> 5433 SoC. Disabling it causes serious current leak - about 200mA.
>>>
>>> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
>>> ---
>>>   arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 4 ++++
>>>   1 file changed, 4 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>>> index 5f1e172..b22bec8 100644
>>> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>>> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>>> @@ -432,6 +432,10 @@
>>>   				regulator-name = "VDD18_MIPI2L_1.8V_AP";
>>>   				regulator-min-microvolt = <1800000>;
>>>   				regulator-max-microvolt = <1800000>;
> I see you already applied, but I think it would be good to have some comments
> here explaining why the regulator should be always-on. Otherwise, in future a
> developer might want to disable the regulator since it may think that is not
> needed due dsi and hdmi already enabling it.

If such change is added in a separate commit, one can easily find the reason
using "git blame".

>>> +				regulator-always-on;
>>> +				regulator-state-mem {
>>> +					regulator-off-in-suspend;
>>> +				};
>> Thanks, applied.
>>
>> Just to satisfy my curiosity, how disabling the regulator causes current
>> leak? What happens exactly?

Such leakage usually happens if there is a hw block, which have more 
than one
power supply. Disabling power for the one power supply might turn the hw 
logic
into some meta state, in which it still conduct a current from the other 
source.

The best example of such behavior is Odroid U3 and its problems with 
reset when
HDMI cable is connected. Sometimes the current leaks from the HDMI 
connector to
the board when the main power supply is turned off and the board enters some
kind of a a "meta state".

We still have no idea which hw block causes this leakage in case of TM2/TM2e
though.

Best regards
Krzysztof Kozlowski Jan. 25, 2017, 7:48 a.m. UTC | #5
On Wed, Jan 25, 2017 at 9:13 AM, Marek Szyprowski
<m.szyprowski@samsung.com> wrote:
> Such leakage usually happens if there is a hw block, which have more than
> one
> power supply. Disabling power for the one power supply might turn the hw
> logic
> into some meta state, in which it still conduct a current from the other
> source.
>
> The best example of such behavior is Odroid U3 and its problems with reset
> when
> HDMI cable is connected. Sometimes the current leaks from the HDMI connector
> to
> the board when the main power supply is turned off and the board enters some
> kind of a a "meta state".
>
> We still have no idea which hw block causes this leakage in case of TM2/TM2e
> though.

Interesting topic... Thanks for explanation!

Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Javier Martinez Canillas Jan. 25, 2017, 11:05 a.m. UTC | #6
Hello Marek,

On 01/25/2017 04:13 AM, Marek Szyprowski wrote:
> Hi Javier,
> 
> 
> On 2017-01-24 18:57, Javier Martinez Canillas wrote:
>> Hello Krzysztof,
>>
>> On 01/24/2017 02:52 PM, Krzysztof Kozlowski wrote:
>>> On Tue, Jan 24, 2017 at 01:45:28PM +0100, Andrzej Hajda wrote:
>>>> LDO7 regulator beside DSI and HDMI provides power for core blocks in Exynos
>>>> 5433 SoC. Disabling it causes serious current leak - about 200mA.
>>>>
>>>> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
>>>> ---
>>>>   arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 4 ++++
>>>>   1 file changed, 4 insertions(+)
>>>>
>>>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>>>> index 5f1e172..b22bec8 100644
>>>> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>>>> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
>>>> @@ -432,6 +432,10 @@
>>>>                   regulator-name = "VDD18_MIPI2L_1.8V_AP";
>>>>                   regulator-min-microvolt = <1800000>;
>>>>                   regulator-max-microvolt = <1800000>;
>> I see you already applied, but I think it would be good to have some comments
>> here explaining why the regulator should be always-on. Otherwise, in future a
>> developer might want to disable the regulator since it may think that is not
>> needed due dsi and hdmi already enabling it.
> 
> If such change is added in a separate commit, one can easily find the reason
> using "git blame".
>

Yes, that's true.
 
>>>> +                regulator-always-on;
>>>> +                regulator-state-mem {
>>>> +                    regulator-off-in-suspend;
>>>> +                };
>>> Thanks, applied.
>>>
>>> Just to satisfy my curiosity, how disabling the regulator causes current
>>> leak? What happens exactly?
> 
> Such leakage usually happens if there is a hw block, which have more than one
> power supply. Disabling power for the one power supply might turn the hw logic
> into some meta state, in which it still conduct a current from the other source.
> 
> The best example of such behavior is Odroid U3 and its problems with reset when
> HDMI cable is connected. Sometimes the current leaks from the HDMI connector to
> the board when the main power supply is turned off and the board enters some
> kind of a a "meta state".
> 

I didn't know about all this, thanks a lot for the explanation.

> We still have no idea which hw block causes this leakage in case of TM2/TM2e
> though.
> 
> Best regards

Best regards,
diff mbox

Patch

diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
index 5f1e172..b22bec8 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
@@ -432,6 +432,10 @@ 
 				regulator-name = "VDD18_MIPI2L_1.8V_AP";
 				regulator-min-microvolt = <1800000>;
 				regulator-max-microvolt = <1800000>;
+				regulator-always-on;
+				regulator-state-mem {
+					regulator-off-in-suspend;
+				};
 			};
 
 			ldo8_reg: LDO8 {