mirror of
https://github.com/torvalds/linux.git
synced 2025-04-12 06:49:52 +00:00
scsi: ufs: crypto: Add ufs_hba_from_crypto_profile()
Add a helper function that encapsulates a container_of expression. For now there are two users but soon there will be more. Tested-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> # sm8650 Signed-off-by: Eric Biggers <ebiggers@google.com> Link: https://lore.kernel.org/r/20241213041958.202565-3-ebiggers@kernel.org Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
7a0905caf5
commit
75d0c649ec
@ -52,8 +52,7 @@ static int ufshcd_crypto_keyslot_program(struct blk_crypto_profile *profile,
|
||||
const struct blk_crypto_key *key,
|
||||
unsigned int slot)
|
||||
{
|
||||
struct ufs_hba *hba =
|
||||
container_of(profile, struct ufs_hba, crypto_profile);
|
||||
struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile);
|
||||
const union ufs_crypto_cap_entry *ccap_array = hba->crypto_cap_array;
|
||||
const struct ufs_crypto_alg_entry *alg =
|
||||
&ufs_crypto_algs[key->crypto_cfg.crypto_mode];
|
||||
@ -99,8 +98,7 @@ static int ufshcd_crypto_keyslot_evict(struct blk_crypto_profile *profile,
|
||||
const struct blk_crypto_key *key,
|
||||
unsigned int slot)
|
||||
{
|
||||
struct ufs_hba *hba =
|
||||
container_of(profile, struct ufs_hba, crypto_profile);
|
||||
struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile);
|
||||
/*
|
||||
* Clear the crypto cfg on the device. Clearing CFGE
|
||||
* might not be sufficient, so just clear the entire cfg.
|
||||
|
@ -1211,6 +1211,14 @@ static inline size_t ufshcd_sg_entry_size(const struct ufs_hba *hba)
|
||||
({ (void)(hba); BUILD_BUG_ON(sg_entry_size != sizeof(struct ufshcd_sg_entry)); })
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SCSI_UFS_CRYPTO
|
||||
static inline struct ufs_hba *
|
||||
ufs_hba_from_crypto_profile(struct blk_crypto_profile *profile)
|
||||
{
|
||||
return container_of(profile, struct ufs_hba, crypto_profile);
|
||||
}
|
||||
#endif
|
||||
|
||||
static inline size_t ufshcd_get_ucd_size(const struct ufs_hba *hba)
|
||||
{
|
||||
return sizeof(struct utp_transfer_cmd_desc) + SG_ALL * ufshcd_sg_entry_size(hba);
|
||||
|
Loading…
x
Reference in New Issue
Block a user