RE: [PATCH v4 0/9] Add SDUC Support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > On 27/08/24 10:45, Avri Altman wrote:
> > >>> On 25/08/24 10:41, Avri Altman wrote:
> > >>>> 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/
> > >>>
> > >>> Perhaps add support for mmc_test
> > > Actually, I am not sure what should be added to mmc_test as far as
> > > SDUC
> > indication:
> > > from dmesg we have:
> > > [ 4253.922220] mmc0: new ultra high speed SDR104 SDUC card at
> > > address
> > > d555 [ 4253.922409] mmcblk0: mmc0:d555 SR04T 3.72 TiB
> > >
> > > Additionally, we have the card size sysfs entry:
> > > # cat /sys/block/mmcblk0/size
> > > 7999258624
> > >
> > > As well as the csd which implies its capacity:
> > > # cd /sys/class/mmc_host/mmc0/mmc0:* && cat csd
> > > 800e0032db79007732bf7f800a404001
> > >
> > > What test did you had in mind?
> >
> > Doesn't all the I/O need CMD22 first?
So I tried to add it, and it looks like I'll be needing 2 - 3 patches to enable mmc_test for sduc.
How about disable it for now, planning to ameliorate it in the very near future?

Thanks,
Avri

> Oops - Right.
> 
> Thanks a lot,
> Avri
> 
> >
> > >
> > > Thanks,
> > > Avri
> > >
> > >>> , and it would be better if enabling SDUC was the last patch, so
> > >>> bisecting doesn't leave a kernel that half-supports
> > >> SDUC.
> > >> Done.
> > >>
> > >> Thanks,
> > >> Avri
> > >>
> > >>>
> > >>>>
> > >>>> ---
> > >>>> Changes in v4:
> > >>>>  - Squash patches 1 & 2 (Ulf)
> > >>>>  - Amend SD_OCR_2T to SD_OCR_CCS in mmc_sd_get_cid (Ulf)
> > >>>>  - Use card state instead of caps2 (Ricky & Ulf)
> > >>>>  - Switch patches 5 & 6 (Ulf)
> > >>>>
> > >>>> Changes in v3:
> > >>>>  - Some more kernel test robot fixes
> > >>>>  - Fix a typo in a commit log (Ricky WU)
> > >>>>  - Fix ACMD22 returned value
> > >>>>  - Add 'Tested-by' tag for the whole series (Ricky WU)
> > >>>>
> > >>>> Changes in v2:
> > >>>>  - Attend kernel test robot warnings
> > >>>>
> > >>>> ---
> > >>>>
> > >>>> Avri Altman (9):
> > >>>>   mmc: sd: SDUC Support Recognition
> > >>>>   mmc: sd: Add Extension memory addressing
> > >>>>   mmc: core: Add open-ended Ext memory addressing
> > >>>>   mmc: core: Add close-ended Ext memory addressing
> > >>>>   mmc: host: Always use manual-cmd23 in SDUC
> > >>>>   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  | 56 ++++++++++++++++++++++++++++------
> > >>>>  drivers/mmc/core/bus.c    |  4 ++-
> > >>>>  drivers/mmc/core/card.h   |  3 ++
> > >>>>  drivers/mmc/core/core.c   | 63 ++++++++++++++++++++++++++++--------
> -
> > >>> --
> > >>>>  drivers/mmc/core/core.h   | 14 +++++++--
> > >>>>  drivers/mmc/core/queue.h  |  1 +
> > >>>>  drivers/mmc/core/sd.c     | 36 ++++++++++++++--------
> > >>>>  drivers/mmc/core/sd.h     |  2 +-
> > >>>>  drivers/mmc/core/sd_ops.c | 16 ++++++++++
> > >>>> drivers/mmc/core/sd_ops.h
> > >>>> |  1 +
> > >>>>  drivers/mmc/core/sdio.c   |  2 +-
> > >>>>  drivers/mmc/host/sdhci.c  | 40 +++++++++++++++++++++----
> > >>>> include/linux/mmc/card.h  |  2 +-  include/linux/mmc/core.h  |  1 +
> > >>>>  include/linux/mmc/sd.h    |  4 +++
> > >>>>  15 files changed, 195 insertions(+), 50 deletions(-)
> > >>>>
> > >





[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux