çå: [PATCH] [V2] mmc: rtsx: Add SD Express mode support for RTS5261
From: åé
Date: Mon May 25 2020 - 02:58:17 EST
> On Fri, May 22, 2020 at 11:16 AM Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx>
> wrote:
> >
> > On Tue, May 19, 2020 at 03:59:23PM +0800, rui_feng@xxxxxxxxxxxxxx wrote:
> > > From: rui_feng <rui_feng@xxxxxxxxxxxxxx>
> > >
> > > RTS5261 support legacy SD mode and SD Express mode.
> > > In SD7.x, SD association introduce SD Express as a new mode.
> > > SD Express mode is distinguished by CMD8.
> > > Therefore, CMD8 has new bit for SD Express.
> > > SD Express is based on PCIe/NVMe.
> > > RTS5261 uses CMD8 to switch to SD Express mode.
> > >
> > > Signed-off-by: rui_feng <rui_feng@xxxxxxxxxxxxxx>
> > > ---
> > > v2: remove config option MISC_RTSX_PCI_SD_EXPRESS
> > > ---
> > >
> > > drivers/misc/cardreader/rts5261.c | 5 ++++
> > > drivers/misc/cardreader/rts5261.h | 23 ----------------
> > > drivers/misc/cardreader/rtsx_pcr.c | 5 ++++
> > > drivers/mmc/core/sd_ops.c | 9 ++++++-
> > > drivers/mmc/host/rtsx_pci_sdmmc.c | 43
> ++++++++++++++++++++++++++++++
> > > include/linux/mmc/host.h | 1 +
> > > include/linux/rtsx_pci.h | 27 +++++++++++++++++++
> > > 7 files changed, 89 insertions(+), 24 deletions(-)
> >
> > If I can get an ack from the MMC maintainer, I can take this in my
> > tree...
> >
> > {hint}
>
> I think this feature needs much more discussion to make sure we get a good
> user experience when it gets added to all mmc controllers.
>
Only RTS5261 is affected by this patch. Other vendor's reader won't be affected.
> rtsx is a bit of a special case for mmc controllers already, but we will likely see
> the same requirements for a lot more mmc host drivers.
>
The modification in mmc core in this patch is according to chapter 4.3.13 in the spec "Physical Layer Simplified Specification Version 7.10" released by SD Association,
anyone can get it on https://www.sdcard.org/downloads/pls/index.html. Any other vendor which want to support SD7.x must obey the spec.
> I suspect we need to tie in both the mmc block and nvme device drivers to
> properly do a handover, to ensure that there is a way to identify the block
> device as reliably getting probed as at least one of the two (sd or nvme) and to
> get identified as the same device during the handover, in particular across a
> suspend or hibernate event.
>
Our card reader will be tested by ODM/OEM before used by end users.
Kind regards