Re: [PATCH 0/2] mmc: rtsx: fix incorrect last byte in R2 response

From: rh_
Date: Tue Aug 26 2014 - 22:08:41 EST


On Fri, 15 Aug 2014 14:05:59 +0800
<rogerable@xxxxxxxxxxx> wrote:

> From: Roger Tseng <rogerable@xxxxxxxxxxx>
>
> (The original patch for PCI and USB was splitted here to make it
> easier for stable tree.)
>
> Current code erroneously fill the last byte of R2 response with an
> undefined value. In addition, the controller actually 'offloads' the
> last byte (CRC7, end bit) while receiving R2 response and thus it's
> impossible to get the actual value. This could cause mmc stack to
> obtain inconsistent CID from the same card after resume and
> misidentify it as a different card.

What does "resume" mean in this context? Good to see this was
finally fixed. This problem has caused copious log messages regarding
hotplug events and I don't have any debug or extra logging enabled.

I don't know what triggered the message to get logged as my system
doesn't suspend/resume so I wonder what in your investigation makes
you believe this is a symptom of "resume".


>
> Fix by assigning dummy CRC and end bit: {7'b0, 1} = 0x1 to the last
> byte of R2.
>
> Roger Tseng (2):
> mmc: rtsx_pci_sdmmc: fix incorrect last byte in R2 response
> mmc: rtsx_usb_sdmmc: fix incorrect last byte in R2 response
>
> drivers/mmc/host/rtsx_pci_sdmmc.c | 7 +++++++
> drivers/mmc/host/rtsx_usb_sdmmc.c | 7 +++++++
> 2 files changed, 14 insertions(+)
>
> --
> 1.7.10.4


--


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/