]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
scsi: ufs: crypto: Remove ufs_hba_variant_ops::program_key
authorEric Biggers <ebiggers@google.com>
Fri, 13 Dec 2024 04:19:47 +0000 (20:19 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 2 Jan 2025 18:36:15 +0000 (13:36 -0500)
There are no longer any implementations of
ufs_hba_variant_ops::program_key, so remove it.

As a result, ufshcd_program_key() no longer can return an error, so also
clean it up to return void.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20241213041958.202565-5-ebiggers@kernel.org
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/ufs/core/ufshcd-crypto.c
include/ufs/ufshcd.h

index 0cb425ef618e89f72f924594f7e46d3f1d73c6cd..694ff7578fc1992f7aee1f4351659e62e77e6cca 100644 (file)
@@ -17,20 +17,14 @@ static const struct ufs_crypto_alg_entry {
        },
 };
 
-static int ufshcd_program_key(struct ufs_hba *hba,
-                             const union ufs_crypto_cfg_entry *cfg, int slot)
+static void ufshcd_program_key(struct ufs_hba *hba,
+                              const union ufs_crypto_cfg_entry *cfg, int slot)
 {
        int i;
        u32 slot_offset = hba->crypto_cfg_register + slot * sizeof(*cfg);
-       int err = 0;
 
        ufshcd_hold(hba);
 
-       if (hba->vops && hba->vops->program_key) {
-               err = hba->vops->program_key(hba, cfg, slot);
-               goto out;
-       }
-
        /* Ensure that CFGE is cleared before programming the key */
        ufshcd_writel(hba, 0, slot_offset + 16 * sizeof(cfg->reg_val[0]));
        for (i = 0; i < 16; i++) {
@@ -43,9 +37,7 @@ static int ufshcd_program_key(struct ufs_hba *hba,
        /* Dword 16 must be written last */
        ufshcd_writel(hba, le32_to_cpu(cfg->reg_val[16]),
                      slot_offset + 16 * sizeof(cfg->reg_val[0]));
-out:
        ufshcd_release(hba);
-       return err;
 }
 
 static int ufshcd_crypto_keyslot_program(struct blk_crypto_profile *profile,
@@ -60,7 +52,6 @@ static int ufshcd_crypto_keyslot_program(struct blk_crypto_profile *profile,
        int i;
        int cap_idx = -1;
        union ufs_crypto_cfg_entry cfg = {};
-       int err;
 
        BUILD_BUG_ON(UFS_CRYPTO_KEY_SIZE_INVALID != 0);
        for (i = 0; i < hba->crypto_capabilities.num_crypto_cap; i++) {
@@ -88,10 +79,10 @@ static int ufshcd_crypto_keyslot_program(struct blk_crypto_profile *profile,
                memcpy(cfg.crypto_key, key->raw, key->size);
        }
 
-       err = ufshcd_program_key(hba, &cfg, slot);
+       ufshcd_program_key(hba, &cfg, slot);
 
        memzero_explicit(&cfg, sizeof(cfg));
-       return err;
+       return 0;
 }
 
 static int ufshcd_crypto_keyslot_evict(struct blk_crypto_profile *profile,
@@ -105,7 +96,8 @@ static int ufshcd_crypto_keyslot_evict(struct blk_crypto_profile *profile,
         */
        union ufs_crypto_cfg_entry cfg = {};
 
-       return ufshcd_program_key(hba, &cfg, slot);
+       ufshcd_program_key(hba, &cfg, slot);
+       return 0;
 }
 
 /*
index ec0cbffc44ced25cbb16f16cea355d966bb61b35..4d9d9cf6ee463098346efcf791e396083c9e011f 100644 (file)
@@ -324,7 +324,6 @@ struct ufs_pwr_mode_info {
  * @phy_initialization: used to initialize phys
  * @device_reset: called to issue a reset pulse on the UFS device
  * @config_scaling_param: called to configure clock scaling parameters
- * @program_key: program or evict an inline encryption key
  * @fill_crypto_prdt: initialize crypto-related fields in the PRDT
  * @event_notify: called to notify important events
  * @reinit_notify: called to notify reinit of UFSHCD during max gear switch
@@ -372,8 +371,6 @@ struct ufs_hba_variant_ops {
        void    (*config_scaling_param)(struct ufs_hba *hba,
                                struct devfreq_dev_profile *profile,
                                struct devfreq_simple_ondemand_data *data);
-       int     (*program_key)(struct ufs_hba *hba,
-                              const union ufs_crypto_cfg_entry *cfg, int slot);
        int     (*fill_crypto_prdt)(struct ufs_hba *hba,
                                    const struct bio_crypt_ctx *crypt_ctx,
                                    void *prdt, unsigned int num_segments);