On 2020-12-19 12:38, Kiwoong Kim wrote:
Thers could be some cases to set block paramters
s/Thers/There/g
per host, because of its own dma structurs or whatever.
s/structurs/structure/g
Signed-off-by: Kiwoong Kim <kwmad.kim@xxxxxxxxxxx>
---
drivers/scsi/ufs/ufshcd.c | 2 ++
drivers/scsi/ufs/ufshcd.h | 8 ++++++++
2 files changed, 10 insertions(+)
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index 92d433d..58f9cb6 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -4758,6 +4758,8 @@ static int ufshcd_slave_configure(struct
scsi_device *sdev)
ufshcd_crypto_setup_rq_keyslot_manager(hba, q);
+ ufshcd_vops_config_request_queue(hba, sdev);
How about make it more univeral, like ufshcd_vops_slave_configure()?
Thanks,
Can Guo.
+
return 0;
}
diff --git a/drivers/scsi/ufs/ufshcd.h b/drivers/scsi/ufs/ufshcd.h
index 61344c4..657bdbd 100644
--- a/drivers/scsi/ufs/ufshcd.h
+++ b/drivers/scsi/ufs/ufshcd.h
@@ -329,6 +329,7 @@ struct ufs_hba_variant_ops {
void *data);
int (*program_key)(struct ufs_hba *hba,
const union ufs_crypto_cfg_entry *cfg, int slot);
+ void (*config_request_queue)(struct scsi_device *sdev);
};
/* clock gating state */
@@ -1228,6 +1229,13 @@ static inline void
ufshcd_vops_config_scaling_param(struct ufs_hba *hba,
hba->vops->config_scaling_param(hba, profile, data);
}
+static inline void ufshcd_vops_config_request_queue(struct ufs_hba
*hba,
+ struct scsi_device *sdev)
+{
+ if (hba->vops && hba->vops->config_request_queue)
+ hba->vops->config_request_queue(sdev);
+}
+
extern struct ufs_pm_lvl_states ufs_pm_lvl_states[];
/*