Message ID | 20201203020516.225701-7-ebiggers@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | eMMC inline encryption support | expand |
On Wed, Dec 02, 2020 at 06:05:13PM -0800, Eric Biggers wrote: > From: Eric Biggers <ebiggers@google.com> > > The SCM calls QCOM_SCM_ES_INVALIDATE_ICE_KEY and > QCOM_SCM_ES_CONFIG_SET_ICE_KEY are also needed for eMMC inline > encryption support, not just for UFS. Update the comments accordingly. > > Signed-off-by: Eric Biggers <ebiggers@google.com> > --- > drivers/firmware/qcom_scm.c | 16 +++++++++++----- > 1 file changed, 11 insertions(+), 5 deletions(-) > > diff --git a/drivers/firmware/qcom_scm.c b/drivers/firmware/qcom_scm.c > index 7be48c1bec96d..f57779fc7ee93 100644 > --- a/drivers/firmware/qcom_scm.c > +++ b/drivers/firmware/qcom_scm.c > @@ -965,8 +965,11 @@ EXPORT_SYMBOL(qcom_scm_ice_available); > * qcom_scm_ice_invalidate_key() - Invalidate an inline encryption key > * @index: the keyslot to invalidate > * > - * The UFSHCI standard defines a standard way to do this, but it doesn't work on > - * these SoCs; only this SCM call does. > + * The UFSHCI and eMMC standards define a standard way to do this, but it > + * doesn't work on these SoCs; only this SCM call does. > + * > + * It is assumed that the SoC has only one ICE instance being used, as this SCM > + * call doesn't specify which ICE instance the keyslot belongs to. > * > * Return: 0 on success; -errno on failure. > */ > @@ -995,10 +998,13 @@ EXPORT_SYMBOL(qcom_scm_ice_invalidate_key); > * units, e.g. 1 = 512 bytes, 8 = 4096 bytes, etc. > * > * Program a key into a keyslot of Qualcomm ICE (Inline Crypto Engine), where it > - * can then be used to encrypt/decrypt UFS I/O requests inline. > + * can then be used to encrypt/decrypt UFS or eMMC I/O requests inline. > + * > + * The UFSHCI and eMMC standards define a standard way to do this, but it > + * doesn't work on these SoCs; only this SCM call does. > * > - * The UFSHCI standard defines a standard way to do this, but it doesn't work on > - * these SoCs; only this SCM call does. > + * It is assumed that the SoC has only one ICE instance being used, as this SCM > + * call doesn't specify which ICE instance the keyslot belongs to. > * > * Return: 0 on success; -errno on failure. > */ > -- > 2.29.2 > Looks good to me. Please feel free to add Reviewed-by: Satya Tangirala <satyat@google.com>
diff --git a/drivers/firmware/qcom_scm.c b/drivers/firmware/qcom_scm.c index 7be48c1bec96d..f57779fc7ee93 100644 --- a/drivers/firmware/qcom_scm.c +++ b/drivers/firmware/qcom_scm.c @@ -965,8 +965,11 @@ EXPORT_SYMBOL(qcom_scm_ice_available); * qcom_scm_ice_invalidate_key() - Invalidate an inline encryption key * @index: the keyslot to invalidate * - * The UFSHCI standard defines a standard way to do this, but it doesn't work on - * these SoCs; only this SCM call does. + * The UFSHCI and eMMC standards define a standard way to do this, but it + * doesn't work on these SoCs; only this SCM call does. + * + * It is assumed that the SoC has only one ICE instance being used, as this SCM + * call doesn't specify which ICE instance the keyslot belongs to. * * Return: 0 on success; -errno on failure. */ @@ -995,10 +998,13 @@ EXPORT_SYMBOL(qcom_scm_ice_invalidate_key); * units, e.g. 1 = 512 bytes, 8 = 4096 bytes, etc. * * Program a key into a keyslot of Qualcomm ICE (Inline Crypto Engine), where it - * can then be used to encrypt/decrypt UFS I/O requests inline. + * can then be used to encrypt/decrypt UFS or eMMC I/O requests inline. + * + * The UFSHCI and eMMC standards define a standard way to do this, but it + * doesn't work on these SoCs; only this SCM call does. * - * The UFSHCI standard defines a standard way to do this, but it doesn't work on - * these SoCs; only this SCM call does. + * It is assumed that the SoC has only one ICE instance being used, as this SCM + * call doesn't specify which ICE instance the keyslot belongs to. * * Return: 0 on success; -errno on failure. */