[PATCH v13 0/3] Support for wrapped inline encryption keys on Qualcomm SoCs

Eric Biggers
2025-04-04T23:16:30Z

Add support for hardware-wrapped inline encryption keys to the Qualcomm
ICE (Inline Crypto Engine) and UFS (Universal Flash Storage) drivers.

I'd like these patches to be taken through the scsi tree for 6.16.
But the Qualcomm / msm tree would be okay too if that is preferred.

The block layer framework for this feature was merged in 6.15; refer to
the "Hardware-wrapped keys" section of
Documentation/block/inline-encryption.rst. This patchset wires it up
for the newer Qualcomm SoCs, such as SM8650, which have a HWKM (Hardware
Key Manager) and support the SCM calls needed to easily use it.

Tested on the SM8650 HDK with xfstests, specifically generic/368 and
generic/369, in combination with the required fscrypt patch
https://lore.kernel.org/r/20250404225859.172344-1-ebiggers@kernel.org
which I plan to apply separately.

Changed in v13:
- Rebased onto latest upstream
- Resent just the remaining driver patches

For changes in v12 and earlier, see
https://lore.kernel.org/r/20250210202336.349924-1-ebiggers@kernel.org

Eric Biggers (2):
soc: qcom: ice: make qcom_ice_program_key() take struct blk_crypto_key
ufs: qcom: add support for wrapped keys

Gaurav Kashyap (1):
soc: qcom: ice: add HWKM support to the ICE driver

drivers/mmc/host/sdhci-msm.c | 16 +-
drivers/soc/qcom/ice.c | 350 ++++++++++++++++++++++++++++++++---
drivers/ufs/host/ufs-qcom.c | 57 ++++--
include/soc/qcom/ice.h | 34 ++--
4 files changed, 396 insertions(+), 61 deletions(-)

base-commit: a52a3c18cdf369a713aca7593332bbb998c71d96
--
2.49.0