On 17/02/12 12:46, Jaehoon Chung wrote:
> Hi.
> On 02/17/2012 07:14 PM, hyeonsu....@samsung.com wrote:
> 
>> From: Hyeonsu Kim <hyeonsu....@samsung.com>
>>
>> This "if phrase" is illogical.
>> and SD Spec 3.0 supports au_size from 0 to 0xF.
>>
>> Signed-off-by: Hyeonsu Kim <hyeonsu....@samsung.com>
>> ---
>>  drivers/mmc/core/sd.c |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c
>> index c63ad03..cf8bf0e 100644
>> --- a/drivers/mmc/core/sd.c
>> +++ b/drivers/mmc/core/sd.c
>> @@ -244,7 +244,7 @@ static int mmc_read_ssr(struct mmc_card *card)
>>       * bitfield positions accordingly.
>>       */
>>      au = UNSTUFF_BITS(ssr, 428 - 384, 4);
>> -    if (au > 0 || au <= 9) {
>> +    if (au >= 0 && au < 16) {
> 
> I think "if (au > 0 && au <= 0xf)" is more readable and 
> need to check the sd-spec.
> Because in SD2.0, didn't define from 0xa to 0xf.
> 
>>              card->ssr.au = 1 << (au + 4);
> 
> Is it right???
> card->ssr.au = 1 << (au + 4) is something wrong.
> If au is 1, card->ssr.au is 32KB. BUt in spec, defined 16KB.
> I think the wrong bit operation. this is more problem.

No it is 16KiB because "au" is in sectors.
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to