Hi Avri, I tested this SDUC patch for Realtek card readers and it works > Ultra Capacity SD cards (SDUC) was already introduced in SD7.0. Those cards > support capacity larger than 2TB and up to including 128TB. Thus, the address > range of the card expands beyond the 32-bit command argument. To that end, > a new command - CMD22 is defined, to carry the extra 6-bit upper part of the > 38-bit block address that enable access to 128TB memory space. > > SDUC capacity is agnostic to the interface mode: UHS-I and UHS-II – Same as > SDXC. > > The spec defines several extensions/modifications to the current SDXC cards, > which we address in patches 1 - 10. Otherwise requirements are out-of-scope > of this change. Specifically, CMDQ (CMD44+CMD45), and Extension for > Video Speed Class (CMD20). > > First publication of SDUC was in [1]. This series was developed and tested > separately from [1] and does not borrow from it. > > [1] https://lwn.net/Articles/982566/ > > --- > Changes in v2: > - Attend kernel test robot warnings > > --- > > Avri Altman (10): > mmc: sd: SDUC Support Recognition > mmc: sd: Add SD CSD version 3.0 > mmc: sd: Add Extension memory addressing > mmc: core: Add open-ended Ext memory addressing > mmc: host: Always use manual-cmd23 in SDUC > mmc: core: Add close-ended Ext memory addressing > mmc: host: Add close-ended Ext memory addressing > mmc: core: Allow mmc erase to carry large addresses > mmc: core: Add Ext memory addressing for erase > mmc: core: Adjust ACMD22 to SDUC > > drivers/mmc/core/block.c | 45 +++++++++++++++++++++++++++++------- > drivers/mmc/core/bus.c | 4 +++- > drivers/mmc/core/card.h | 3 +++ > drivers/mmc/core/core.c | 48 +++++++++++++++++++++++++++++++-------- > drivers/mmc/core/core.h | 2 +- > drivers/mmc/core/queue.h | 1 + > drivers/mmc/core/sd.c | 16 +++++++++---- > drivers/mmc/core/sd_ops.c | 34 +++++++++++++++++++++++---- > drivers/mmc/core/sd_ops.h | 1 + drivers/mmc/host/sdhci.c | 38 > ++++++++++++++++++++++++++----- include/linux/mmc/card.h | 2 +- > include/linux/mmc/core.h | 1 + include/linux/mmc/host.h | 6 +++++ > include/linux/mmc/sd.h | 4 ++++ > 14 files changed, 169 insertions(+), 36 deletions(-) > > -- > 2.25.1