[PATCH v5 0/4] mmc: Avoid reprogram all keys to Inline Crypto Engine for MMC runtime suspend resume

Neeraj Soni <[email protected]> Thu, 30 Jul 2026 19:38:18 +0530
Newsgroups org.kernel.vger.linux-mmc,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Crypto reprogram all keys is called for each MMC runtime suspend/resume in
current upstream design. If this is implemented as a non-interruptible
call to TEE for security, the cpu core is blocked for execution while this
call executes although the crypto engine already has the keys.
For example, glitches in audio/video streaming applications have been
observed due to this.

Fix this by allowing host driver to control when to re-program the
crypto keys along with some fix up around usage of CONFIG_MMC_CRYPTO.

---
- Split the v4 patch https://lore.kernel.org/linux-mmc/[email protected]/
as suggested here https://lore.kernel.org/all/CAPx+jO8rUwYV6q1-RrA4aZ9XnomSf82fgf8Jh2fUC0fE03RFPw@mail.gmail.com/
into 2 logical patches [PATCH v5 1/4] and [PATCH v5 2/4].
- Introduced [PATCH v5 3/4] to specifically restore crypto keys during
hibernation exit.
- Introduced [PATCH v5 4/4] to fix crypto capability usage in mtk-sd as
suggested here https://lore.kernel.org/all/[email protected]/.
- Dropped "Acked-by:" tag from v4 due to the split and introduction of
new changes.

Neeraj Soni (3):
  mmc: Allow host driver to control the re-programming of Crypto keys
  mmc: sdhci-msm: Reprogram crypto keys during host hardware
    initialization
  mmc: mtk-sd: Protect crypto capability with crypto config

Ram Prakash Gupta (1):
  mmc: sdhci-msm: Use pm ops instead of macro to restore crypto keys

 drivers/mmc/core/crypto.c    |  2 +-
 drivers/mmc/host/mtk-sd.c    |  4 ++++
 drivers/mmc/host/sdhci-msm.c | 22 +++++++++++++++++++++-
 include/linux/mmc/host.h     |  5 +----
 4 files changed, 27 insertions(+), 6 deletions(-)

--
2.34.1