2014-10-11 04:16:28

by Doug Anderson

[permalink] [raw]
Subject: [PATCH] mmc: dw_mmc: Change signal voltage error to dev_dbg()

In (28f92b5 mmc: core: Try other signal levels during power up) we can
see that there are times when it's valid to try several signal
voltages. Don't print an ugly error in the logs when that happens.

Signed-off-by: Doug Anderson <[email protected]>
---
drivers/mmc/host/dw_mmc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
index 69f0cc6..c4afbdd 100644
--- a/drivers/mmc/host/dw_mmc.c
+++ b/drivers/mmc/host/dw_mmc.c
@@ -1075,7 +1075,7 @@ static int dw_mci_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios)
ret = regulator_set_voltage(mmc->supply.vqmmc, min_uv, max_uv);

if (ret) {
- dev_err(&mmc->class_dev,
+ dev_dbg(&mmc->class_dev,
"Regulator set error %d: %d - %d\n",
ret, min_uv, max_uv);
return ret;
--
2.1.0.rc2.206.gedb03e5


2014-10-14 12:03:38

by Alim Akhtar

[permalink] [raw]
Subject: Re: [PATCH] mmc: dw_mmc: Change signal voltage error to dev_dbg()

Hi Doug,

On Sat, Oct 11, 2014 at 9:46 AM, Doug Anderson <[email protected]> wrote:
> In (28f92b5 mmc: core: Try other signal levels during power up) we can
> see that there are times when it's valid to try several signal
> voltages. Don't print an ugly error in the logs when that happens.
>
> Signed-off-by: Doug Anderson <[email protected]>
> ---
> drivers/mmc/host/dw_mmc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index 69f0cc6..c4afbdd 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -1075,7 +1075,7 @@ static int dw_mci_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios)
> ret = regulator_set_voltage(mmc->supply.vqmmc, min_uv, max_uv);
>
> if (ret) {
> - dev_err(&mmc->class_dev,
> + dev_dbg(&mmc->class_dev,
> "Regulator set error %d: %d - %d\n",
> ret, min_uv, max_uv);
> return ret;
Well, I am ok with this but this info is very useful, what if PMIC
failed to actually set the voltage? may be because of some PMIC driver
bug or i2c driver bug? Ofcourse this can be found by turning MMC_DEBUG
ON, but is that worth in this case. Or is there a way to print that,
this failure is because of a regulator re-try?
your thoughts?
> --
> 2.1.0.rc2.206.gedb03e5
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html



--
Regards,
Alim

2014-10-14 16:27:27

by Doug Anderson

[permalink] [raw]
Subject: Re: [PATCH] mmc: dw_mmc: Change signal voltage error to dev_dbg()

Alim,

On Tue, Oct 14, 2014 at 5:02 AM, Alim Akhtar <[email protected]> wrote:
>> --- a/drivers/mmc/host/dw_mmc.c
>> +++ b/drivers/mmc/host/dw_mmc.c
>> @@ -1075,7 +1075,7 @@ static int dw_mci_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios)
>> ret = regulator_set_voltage(mmc->supply.vqmmc, min_uv, max_uv);
>>
>> if (ret) {
>> - dev_err(&mmc->class_dev,
>> + dev_dbg(&mmc->class_dev,
>> "Regulator set error %d: %d - %d\n",
>> ret, min_uv, max_uv);
>> return ret;
> Well, I am ok with this but this info is very useful, what if PMIC
> failed to actually set the voltage? may be because of some PMIC driver
> bug or i2c driver bug? Ofcourse this can be found by turning MMC_DEBUG
> ON, but is that worth in this case. Or is there a way to print that,
> this failure is because of a regulator re-try?
> your thoughts?

I think that the regulator framework and the i2c framework are
supposed to be reliable. If they aren't reliable there will be lots
of places that will have problems. I think that you _could_:

* In your regulator driver print an error when an i2c transfer fails.

* In your regulator driver print an error if some unexpected event
happens (like a regulator reports that the voltage didn't actually
change).

That would get you want you want, right? ...but an error here doesn't
belong and that's pretty much determined by (28f92b5 mmc: core: Try
other signal levels during power up). That patch wants to be able to
try several different voltage levels and if we print an error in that
case then it's going to be very confusing to the user.

-Doug

2014-10-14 20:04:43

by Alim Akhtar

[permalink] [raw]
Subject: Re: [PATCH] mmc: dw_mmc: Change signal voltage error to dev_dbg()

Hi Doug,

On Tue, Oct 14, 2014 at 9:57 PM, Doug Anderson <[email protected]> wrote:
> Alim,
>
> On Tue, Oct 14, 2014 at 5:02 AM, Alim Akhtar <[email protected]> wrote:
>>> --- a/drivers/mmc/host/dw_mmc.c
>>> +++ b/drivers/mmc/host/dw_mmc.c
>>> @@ -1075,7 +1075,7 @@ static int dw_mci_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios)
>>> ret = regulator_set_voltage(mmc->supply.vqmmc, min_uv, max_uv);
>>>
>>> if (ret) {
>>> - dev_err(&mmc->class_dev,
>>> + dev_dbg(&mmc->class_dev,
>>> "Regulator set error %d: %d - %d\n",
>>> ret, min_uv, max_uv);
>>> return ret;
>> Well, I am ok with this but this info is very useful, what if PMIC
>> failed to actually set the voltage? may be because of some PMIC driver
>> bug or i2c driver bug? Ofcourse this can be found by turning MMC_DEBUG
>> ON, but is that worth in this case. Or is there a way to print that,
>> this failure is because of a regulator re-try?
>> your thoughts?
>
> I think that the regulator framework and the i2c framework are
> supposed to be reliable. If they aren't reliable there will be lots
> of places that will have problems. I think that you _could_:
>
> * In your regulator driver print an error when an i2c transfer fails.
>
> * In your regulator driver print an error if some unexpected event
> happens (like a regulator reports that the voltage didn't actually
> change).
>
> That would get you want you want, right? ...but an error here doesn't
> belong and that's pretty much determined by (28f92b5 mmc: core: Try
> other signal levels during power up). That patch wants to be able to
> try several different voltage levels and if we print an error in that
> case then it's going to be very confusing to the user.
>
Hmm...Ok, convincing enough to me, so
Reviewed-by: Alim Akhtar <[email protected]>
> -Doug



--
Regards,
Alim

2014-10-15 01:40:24

by Jaehoon Chung

[permalink] [raw]
Subject: Re: [PATCH] mmc: dw_mmc: Change signal voltage error to dev_dbg()

Acked-by: Jaehoon Chung <[email protected]>

Best Regards,
Jaehoon Chung

On 10/11/2014 01:16 PM, Doug Anderson wrote:
> In (28f92b5 mmc: core: Try other signal levels during power up) we can
> see that there are times when it's valid to try several signal
> voltages. Don't print an ugly error in the logs when that happens.
>
> Signed-off-by: Doug Anderson <[email protected]>
> ---
> drivers/mmc/host/dw_mmc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index 69f0cc6..c4afbdd 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -1075,7 +1075,7 @@ static int dw_mci_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios)
> ret = regulator_set_voltage(mmc->supply.vqmmc, min_uv, max_uv);
>
> if (ret) {
> - dev_err(&mmc->class_dev,
> + dev_dbg(&mmc->class_dev,
> "Regulator set error %d: %d - %d\n",
> ret, min_uv, max_uv);
> return ret;
>

2014-10-27 14:15:45

by Ulf Hansson

[permalink] [raw]
Subject: Re: [PATCH] mmc: dw_mmc: Change signal voltage error to dev_dbg()

On 11 October 2014 06:16, Doug Anderson <[email protected]> wrote:
> In (28f92b5 mmc: core: Try other signal levels during power up) we can
> see that there are times when it's valid to try several signal
> voltages. Don't print an ugly error in the logs when that happens.
>
> Signed-off-by: Doug Anderson <[email protected]>

Thanks! Applied for next!

Kind regards
Uffe

> ---
> drivers/mmc/host/dw_mmc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index 69f0cc6..c4afbdd 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -1075,7 +1075,7 @@ static int dw_mci_switch_voltage(struct mmc_host *mmc, struct mmc_ios *ios)
> ret = regulator_set_voltage(mmc->supply.vqmmc, min_uv, max_uv);
>
> if (ret) {
> - dev_err(&mmc->class_dev,
> + dev_dbg(&mmc->class_dev,
> "Regulator set error %d: %d - %d\n",
> ret, min_uv, max_uv);
> return ret;
> --
> 2.1.0.rc2.206.gedb03e5
>