[PATCH 0/4] mmc: core: Read/parse SD function extension registers

From: Ulf Hansson
Date: Wed Apr 21 2021 - 06:32:19 EST


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 doesn't implement the complete support for any of the new
power/perf features, but starts out by reading and parsing the new registers
and stores the information in the struct mmc_card about what features the SD
card supports.

Note that, there are no HW updates need for the host to support reading/parsing
of the these new SD registers.

Tested with a 64GB Sandisk Extreme PRO UHS-I A2 card. Additional tests and
reviews are of course greatly appreciated.

Kind regards
Ulf Hansson


Ulf Hansson (4):
mmc: core: Parse the SD SCR register for support of CMD48/49 and
CMD58/59
mmc: core: Prepare mmc_send_cxd_data() to be used for CMD48 for SD
cards
mmc: core: Read the SD function extension registers for power
management
mmc: core: Read performance enhancements registers for SD cards

drivers/mmc/core/mmc_ops.c | 11 +-
drivers/mmc/core/mmc_ops.h | 2 +
drivers/mmc/core/sd.c | 222 ++++++++++++++++++++++++++++++++++++-
include/linux/mmc/card.h | 21 ++++
include/linux/mmc/sd.h | 3 +
5 files changed, 252 insertions(+), 7 deletions(-)

--
2.25.1