Message ID | cover.1608352548.git.kwmad.kim@samsung.com |
---|---|
Headers | show |
Series | permit to set block parameters per vendor | expand |
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@samsung.com> > --- > 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[]; > > /*
> > 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@samsung.com> > > --- > > 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. > Will refer and thanks for all of your comments Thanks. Kiwoong Kim > > + > > 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[]; > > > > /*