Message ID | 20240702204020.2489324-6-bvanassche@acm.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | UFS patches for kernel 6.11 | expand |
On Tue, Jul 02, 2024 at 01:39:13PM -0700, Bart Van Assche wrote: > Move the hba->reserved_slot and the host->can_queue assignments from > ufshcd_config_mcq() into ufshcd_alloc_mcq(). The advantages of this > change are as follows: > - It becomes easier to verify that these two parameters are updated > if hba->nutrs is updated. > - It prevents unnecessary assignments to these two parameters. While > ufshcd_config_mcq() is called during host reset, ufshcd_alloc_mcq() > is not. > > Cc: Can Guo <quic_cang@quicinc.com> > Reviewed-by: Peter Wang <peter.wang@mediatek.com> > Signed-off-by: Bart Van Assche <bvanassche@acm.org> Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> - Mani > --- > drivers/ufs/core/ufshcd.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c > index 2cbd0f91953b..178b0abaeb30 100644 > --- a/drivers/ufs/core/ufshcd.c > +++ b/drivers/ufs/core/ufshcd.c > @@ -8678,6 +8678,9 @@ static int ufshcd_alloc_mcq(struct ufs_hba *hba) > if (ret) > goto err; > > + hba->host->can_queue = hba->nutrs - UFSHCD_NUM_RESERVED; > + hba->reserved_slot = hba->nutrs - UFSHCD_NUM_RESERVED; > + > return 0; > err: > hba->nutrs = old_nutrs; > @@ -8699,9 +8702,6 @@ static void ufshcd_config_mcq(struct ufs_hba *hba) > ufshcd_mcq_make_queues_operational(hba); > ufshcd_mcq_config_mac(hba, hba->nutrs); > > - hba->host->can_queue = hba->nutrs - UFSHCD_NUM_RESERVED; > - hba->reserved_slot = hba->nutrs - UFSHCD_NUM_RESERVED; > - > ufshcd_mcq_enable(hba); > hba->mcq_enabled = true; >
diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c index 2cbd0f91953b..178b0abaeb30 100644 --- a/drivers/ufs/core/ufshcd.c +++ b/drivers/ufs/core/ufshcd.c @@ -8678,6 +8678,9 @@ static int ufshcd_alloc_mcq(struct ufs_hba *hba) if (ret) goto err; + hba->host->can_queue = hba->nutrs - UFSHCD_NUM_RESERVED; + hba->reserved_slot = hba->nutrs - UFSHCD_NUM_RESERVED; + return 0; err: hba->nutrs = old_nutrs; @@ -8699,9 +8702,6 @@ static void ufshcd_config_mcq(struct ufs_hba *hba) ufshcd_mcq_make_queues_operational(hba); ufshcd_mcq_config_mac(hba, hba->nutrs); - hba->host->can_queue = hba->nutrs - UFSHCD_NUM_RESERVED; - hba->reserved_slot = hba->nutrs - UFSHCD_NUM_RESERVED; - ufshcd_mcq_enable(hba); hba->mcq_enabled = true;