diff mbox series

[1/2] DO NOT MERGE: mmc: dw_mmc: Keep vqmmc-supply enable count in balance

Message ID 20230702124110.3709566-2-jonas@kwiboo.se
State Not Applicable
Delegated to: Kever Yang
Headers show
Series power: regulator: rk8xx: Add 500us delay after LDO regulator is enabled | expand

Commit Message

Jonas Karlman July 2, 2023, 12:41 p.m. UTC
With the series "regulator: implement basic reference counter" [1],
keeping regulator enablement in balance become more important.

Disable vqmmc-supply before signal voltage is changed to keep regulator
enable counter in balance.

[1] https://patchwork.ozlabs.org/project/uboot/list/?series=351536

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
---
 drivers/mmc/dw_mmc.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Kever Yang July 31, 2023, 6:52 a.m. UTC | #1
On 2023/7/2 20:41, Jonas Karlman wrote:
> With the series "regulator: implement basic reference counter" [1],
> keeping regulator enablement in balance become more important.
>
> Disable vqmmc-supply before signal voltage is changed to keep regulator
> enable counter in balance.
>
> [1] https://patchwork.ozlabs.org/project/uboot/list/?series=351536
>
> Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>

Thanks,
- Kever
> ---
>   drivers/mmc/dw_mmc.c | 4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
> index 5085a3b491da..400066fa99a2 100644
> --- a/drivers/mmc/dw_mmc.c
> +++ b/drivers/mmc/dw_mmc.c
> @@ -509,6 +509,10 @@ static int dwmci_set_ios(struct mmc *mmc)
>   	if (mmc->vqmmc_supply) {
>   		int ret;
>   
> +		ret = regulator_set_enable_if_allowed(mmc->vqmmc_supply, false);
> +		if (ret)
> +			return ret;
> +
>   		if (mmc->signal_voltage == MMC_SIGNAL_VOLTAGE_180)
>   			regulator_set_value(mmc->vqmmc_supply, 1800000);
>   		else
Jonas Karlman July 31, 2023, 7:08 a.m. UTC | #2
Hi Kever,

This patch was not intended to be merged as-is, at least not with
"DO NOT MERGE" in the subject.

An updated revision of this patch is part of the "Keep fixed/gpio
regulator enable count in balance" series [2] and should be merged as
part of that series.

[2] https://patchwork.ozlabs.org/project/uboot/list/?series=364753

Regards,
Jonas
On 2023-07-31 08:52, Kever Yang wrote:
> 
> On 2023/7/2 20:41, Jonas Karlman wrote:
>> With the series "regulator: implement basic reference counter" [1],
>> keeping regulator enablement in balance become more important.
>>
>> Disable vqmmc-supply before signal voltage is changed to keep regulator
>> enable counter in balance.
>>
>> [1] https://patchwork.ozlabs.org/project/uboot/list/?series=351536
>>
>> Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
> 
> Thanks,
> - Kever
>> ---
>>   drivers/mmc/dw_mmc.c | 4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
>> index 5085a3b491da..400066fa99a2 100644
>> --- a/drivers/mmc/dw_mmc.c
>> +++ b/drivers/mmc/dw_mmc.c
>> @@ -509,6 +509,10 @@ static int dwmci_set_ios(struct mmc *mmc)
>>   	if (mmc->vqmmc_supply) {
>>   		int ret;
>>   
>> +		ret = regulator_set_enable_if_allowed(mmc->vqmmc_supply, false);
>> +		if (ret)
>> +			return ret;
>> +
>>   		if (mmc->signal_voltage == MMC_SIGNAL_VOLTAGE_180)
>>   			regulator_set_value(mmc->vqmmc_supply, 1800000);
>>   		else
diff mbox series

Patch

diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
index 5085a3b491da..400066fa99a2 100644
--- a/drivers/mmc/dw_mmc.c
+++ b/drivers/mmc/dw_mmc.c
@@ -509,6 +509,10 @@  static int dwmci_set_ios(struct mmc *mmc)
 	if (mmc->vqmmc_supply) {
 		int ret;
 
+		ret = regulator_set_enable_if_allowed(mmc->vqmmc_supply, false);
+		if (ret)
+			return ret;
+
 		if (mmc->signal_voltage == MMC_SIGNAL_VOLTAGE_180)
 			regulator_set_value(mmc->vqmmc_supply, 1800000);
 		else