Re: [PATCH v7 2/2] mmc: sdhci-msm: Use pm ops instead of macro to restore crypto keys

Eric Biggers <[email protected]> Tue, 11 Aug 2026 19:08:51 +0000
Newsgroups org.kernel.vger.linux-mmc,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On Tue, Aug 11, 2026 at 08:47:59PM +0530, Neeraj Soni wrote:
> From: Ram Prakash Gupta <[email protected]>
> 
> Inline Crypto Engine (ICE) keys are lost after hibernation entry and this
> needs to be restored when hibernation exits. ICE keys are re-programmed
> during sdhci_msm_ice_init() but it may not cover cases where the
> hibernation image is already restored.
> 
> Unwrap the pm ops and use directly in driver to add the call to restore
> Inline Crypto Engine (ICE) keys. This ensures that ICE is brought into
> same state as before hibernation.
> 
> Also set MMC_CAP2_CRYPTO_NO_REPROG to indicate that re-programming of ICE
> keys is not needed during MMC runtime suspend/resume.
> 
> Signed-off-by: Ram Prakash Gupta <[email protected]>
> Signed-off-by: Seshu Madhavi Puppala <[email protected]>
> Co-developed-by: Ram Prakash Gupta <[email protected]>
> Signed-off-by: Ram Prakash Gupta <[email protected]>
> Co-developed-by: Sarthak Garg <[email protected]>
> Signed-off-by: Sarthak Garg <[email protected]>
> Signed-off-by: Debraj Mukhopadhyay <[email protected]>
> Signed-off-by: Neeraj Soni <[email protected]>
> ---
>  drivers/mmc/host/sdhci-msm.c | 32 +++++++++++++++++++++++++++++++-
>  1 file changed, 31 insertions(+), 1 deletion(-)

So with this patch, resume from hibernation will be the *only* time that
ICE keys are reprogrammed.  Are you absolutely sure that is enough on
every SoC this driver supports?  What about resume from suspend-to-RAM?
CQE error recovery?  What if the hibernation image fails to be created?

- Eric