Re: [PATCH] mmc: sdhci: Restore behavior while creating OCR mask

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6 June 2015 at 20:52, Tim Kryger <tim.kryger@xxxxxxxxx> wrote:
> On Fri, Jun 5, 2015 at 3:06 AM, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
>> Commit 3a48edc4bd68 ("mmc: sdhci: Use mmc core regulator infrastucture")
>> changed the behavior for how to assign the ocr_avail mask for the mmc
>> host. More precisely it started to mask the bits instead of assigning
>> them.
>>
>> Restore the behavior, but also make it clear that an OCR mask created
>> from an external regulator overrides the other ones.
>>
>> Fixes: 3a48edc4bd68 ("mmc: sdhci: Use mmc core regulator infrastucture")
>> Cc: Tim Kryger <tim.kryger@xxxxxxxxx>
>> Reported-by: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
>> Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
>> ---
>>  drivers/mmc/host/sdhci.c | 9 +++++----
>>  1 file changed, 5 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
>> index 1b4861d..706bb60 100644
>> --- a/drivers/mmc/host/sdhci.c
>> +++ b/drivers/mmc/host/sdhci.c
>> @@ -3256,13 +3256,14 @@ int sdhci_add_host(struct sdhci_host *host)
>>                                    SDHCI_MAX_CURRENT_MULTIPLIER;
>>         }
>>
>> -       /* If OCR set by external regulators, use it instead */
>> +       /* If OCR set by host, use it instead. */
>> +       if (host->ocr_mask)
>> +               ocr_avail = host->ocr_mask;
>> +
>> +       /* If OCR set by external regulators, give it highest prio. */
>>         if (mmc->ocr_avail)
>>                 ocr_avail = mmc->ocr_avail;
>>
>> -       if (host->ocr_mask)
>> -               ocr_avail &= host->ocr_mask;
>> -
>>         mmc->ocr_avail = ocr_avail;
>>         mmc->ocr_avail_sdio = ocr_avail;
>>         if (host->ocr_avail_sdio)
>> --
>> 1.9.1
>>
>
> The patch looks good.  Perhaps include this in the commit message.
>
> The OCR mask is determined by one of the following with this priority:
>
>   1. Supported ranges of external regulator if one supplies VDD
>   2. Host OCR mask if set by the driver (based on DT properties)
>   3. The capabilities reported by the controller itself
>
> Reviewed-by: Tim Kryger <tim.kryger@xxxxxxxxx>

Tim, thanks for you review!

I have applied the patch for my next branch and updated the commit
message according to your proposal.

Kind regards
Uffe
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux