On Tue, 4 May 2021 at 18:12, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote: > > In the SD spec v4.x the SD function extension registers were introduced, > together with a new set of commands (CMD48/49 and CMD58/59) to read and write > to them. > > Moreover, in v4.x a new standard function for power management features were > added, while in v6.x a new standard function for performance enhancements > features were added. > > This series implement the basics to add support for these new features (and > includes some additional preparations in patch 1->7), by adding support for > reading and parsing these new SD registers. In the final patch we add support > for the SD poweroff notification feature, which also add a function to write to > these registers. > > Note that, there are no HW updates need for the host to support reading/parsing > of the these new SD registers. This has been tested with a 64GB Sandisk Extreme > PRO UHS-I A2 card. > > Tests and reviews are of course greatly appreciated! > > Kind regards > Ulf Hansson > > Ulf Hansson (11): > mmc: core: Drop open coding when preparing commands with busy > signaling > mmc: core: Take into account MMC_CAP_NEED_RSP_BUSY for eMMC HPI > commands > mmc: core: Re-structure some code in __mmc_poll_for_busy() > mmc: core: Extend re-use of __mmc_poll_for_busy() > mmc: core: Enable eMMC sleep commands to use HW busy polling > mmc: core: Prepare mmc_send_cxd_data() to be re-used for additional > cmds > mmc: core: Drop open coding in mmc_sd_switch() > mmc: core: Parse the SD SCR register for support of CMD48/49 and > CMD58/59 > mmc: core: Read the SD function extension registers for power > management > mmc: core: Read performance enhancements registers for SD cards > mmc: core: Add support for Power Off Notification for SD cards > > drivers/mmc/core/core.c | 22 +-- > drivers/mmc/core/mmc.c | 43 ++--- > drivers/mmc/core/mmc_ops.c | 137 +++++++------- > drivers/mmc/core/mmc_ops.h | 10 +- > drivers/mmc/core/sd.c | 371 ++++++++++++++++++++++++++++++++++++- > drivers/mmc/core/sd_ops.c | 38 +--- > include/linux/mmc/card.h | 22 +++ > include/linux/mmc/sd.h | 4 + > 8 files changed, 504 insertions(+), 143 deletions(-) FYI, this series has been applied for next, with some minor modifications according to review comments. Thanks! Kind regards Uffe