Hi,

On Sun, Mar 17 2013, Chris Ball wrote:
> I've been working on a bringup of an new board in Harmonic Inc.
> This board uses Sandisk iNand eMMC flash.
> I've noticed that the mmc driver keeps detecting 1 bit width although HW
> supports 4 bit, looked into it, and found the problem. In line 571 at mmc.c:
> There is:
>     /* only compare read only fields */
>     err = !((card->ext_csd.raw_partition_support ==
>             bw_ext_csd[EXT_CSD_PARTITION_SUPPORT]) &&
>         (card->ext_csd.raw_erased_mem_count ==
>             bw_ext_csd[EXT_CSD_ERASED_MEM_CONT]) &&
>         (card->ext_csd.rev ==
>             bw_ext_csd[EXT_CSD_REV]) &&
>         (card->ext_csd.raw_ext_csd_structure ==
>                 ...
>
> The problem is that raw_partition_support is not the same when setting width 
> of
> 4 bits instead of 1 bit, and shouldn't be compared at all although it is read
> only.
> this should be changed to:
>     /* only compare read only fields */
>     err = !((card->ext_csd.raw_erased_mem_count ==
>             bw_ext_csd[EXT_CSD_ERASED_MEM_CONT]) &&
>         (card->ext_csd.rev ==
>             bw_ext_csd[EXT_CSD_REV]) &&
>         (card->ext_csd.raw_ext_csd_structure ==
>                 ...

Philip, what do you think?

Thanks,

- Chris.
-- 
Chris Ball   <c...@laptop.org>   <http://printf.net/>
One Laptop Per Child
--
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