2020-05-08 08:04:24

by Stanley Chu

[permalink] [raw]
Subject: [PATCH v8 8/8] scsi: ufs: cleanup WriteBooster feature

Small cleanup as below items,

1. Use ufshcd_is_wb_allowed() directly instead of ufshcd_wb_sup()
since ufshcd_wb_sup() just returns the result of
ufshcd_is_wb_allowed().

2. In ufshcd_suspend(), "else if (!ufshcd_is_runtime_pm(pm_op))
can be simplified to "else" since both have the same meaning.

This patch does not change any functionality.

Signed-off-by: Stanley Chu <[email protected]>
Reviewed-by: Avri Altman <[email protected]>
---
drivers/scsi/ufs/ufshcd.c | 20 +++++++-------------
1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index b6a0d77d47ac..426073a518ef 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -253,7 +253,6 @@ static int ufshcd_scale_clks(struct ufs_hba *hba, bool scale_up);
static irqreturn_t ufshcd_intr(int irq, void *__hba);
static int ufshcd_change_power_mode(struct ufs_hba *hba,
struct ufs_pa_layer_attr *pwr_mode);
-static bool ufshcd_wb_sup(struct ufs_hba *hba);
static int ufshcd_wb_buf_flush_enable(struct ufs_hba *hba);
static int ufshcd_wb_buf_flush_disable(struct ufs_hba *hba);
static int ufshcd_wb_ctrl(struct ufs_hba *hba, bool enable);
@@ -285,7 +284,7 @@ static inline void ufshcd_wb_config(struct ufs_hba *hba)
{
int ret;

- if (!ufshcd_wb_sup(hba))
+ if (!ufshcd_is_wb_allowed(hba))
return;

ret = ufshcd_wb_ctrl(hba, true);
@@ -5197,18 +5196,13 @@ static void ufshcd_bkops_exception_event_handler(struct ufs_hba *hba)
__func__, err);
}

-static bool ufshcd_wb_sup(struct ufs_hba *hba)
-{
- return ufshcd_is_wb_allowed(hba);
-}
-
static int ufshcd_wb_ctrl(struct ufs_hba *hba, bool enable)
{
int ret;
u8 index;
enum query_opcode opcode;

- if (!ufshcd_wb_sup(hba))
+ if (!ufshcd_is_wb_allowed(hba))
return 0;

if (!(enable ^ hba->wb_enabled))
@@ -5264,7 +5258,7 @@ static int ufshcd_wb_buf_flush_enable(struct ufs_hba *hba)
int ret;
u8 index;

- if (!ufshcd_wb_sup(hba) || hba->wb_buf_flush_enabled)
+ if (!ufshcd_is_wb_allowed(hba) || hba->wb_buf_flush_enabled)
return 0;

index = ufshcd_wb_get_flag_index(hba);
@@ -5286,7 +5280,7 @@ static int ufshcd_wb_buf_flush_disable(struct ufs_hba *hba)
int ret;
u8 index;

- if (!ufshcd_wb_sup(hba) || !hba->wb_buf_flush_enabled)
+ if (!ufshcd_is_wb_allowed(hba) || !hba->wb_buf_flush_enabled)
return 0;

index = ufshcd_wb_get_flag_index(hba);
@@ -5336,7 +5330,7 @@ static bool ufshcd_wb_keep_vcc_on(struct ufs_hba *hba)
int ret;
u32 avail_buf;

- if (!ufshcd_wb_sup(hba))
+ if (!ufshcd_is_wb_allowed(hba))
return false;
/*
* The ufs device needs the vcc to be ON to flush.
@@ -8235,12 +8229,12 @@ static int ufshcd_suspend(struct ufs_hba *hba, enum ufs_pm_op pm_op)
* configured WB type is 70% full, keep vcc ON
* for the device to flush the wb buffer
*/
- if ((hba->auto_bkops_enabled && ufshcd_wb_sup(hba)) ||
+ if ((hba->auto_bkops_enabled && ufshcd_is_wb_allowed(hba)) ||
ufshcd_wb_keep_vcc_on(hba))
hba->dev_info.keep_vcc_on = true;
else
hba->dev_info.keep_vcc_on = false;
- } else if (!ufshcd_is_runtime_pm(pm_op)) {
+ } else {
hba->dev_info.keep_vcc_on = false;
}

--
2.18.0


2020-05-08 16:21:13

by Asutosh Das (asd)

[permalink] [raw]
Subject: Re: [PATCH v8 8/8] scsi: ufs: cleanup WriteBooster feature

On 5/8/2020 1:01 AM, Stanley Chu wrote:
> Small cleanup as below items,
>
> 1. Use ufshcd_is_wb_allowed() directly instead of ufshcd_wb_sup()
> since ufshcd_wb_sup() just returns the result of
> ufshcd_is_wb_allowed().
>
> 2. In ufshcd_suspend(), "else if (!ufshcd_is_runtime_pm(pm_op))
> can be simplified to "else" since both have the same meaning.
>
> This patch does not change any functionality.
>
> Signed-off-by: Stanley Chu <[email protected]>
> Reviewed-by: Avri Altman <[email protected]>
> ---

The whole series looks good to me.

Reviewed-by: Asutosh Das <[email protected]>

> drivers/scsi/ufs/ufshcd.c | 20 +++++++-------------
> 1 file changed, 7 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> index b6a0d77d47ac..426073a518ef 100644
> --- a/drivers/scsi/ufs/ufshcd.c
> +++ b/drivers/scsi/ufs/ufshcd.c
> @@ -253,7 +253,6 @@ static int ufshcd_scale_clks(struct ufs_hba *hba, bool scale_up);
> static irqreturn_t ufshcd_intr(int irq, void *__hba);
> static int ufshcd_change_power_mode(struct ufs_hba *hba,
> struct ufs_pa_layer_attr *pwr_mode);
> -static bool ufshcd_wb_sup(struct ufs_hba *hba);
> static int ufshcd_wb_buf_flush_enable(struct ufs_hba *hba);
> static int ufshcd_wb_buf_flush_disable(struct ufs_hba *hba);
> static int ufshcd_wb_ctrl(struct ufs_hba *hba, bool enable);
> @@ -285,7 +284,7 @@ static inline void ufshcd_wb_config(struct ufs_hba *hba)
> {
> int ret;
>
> - if (!ufshcd_wb_sup(hba))
> + if (!ufshcd_is_wb_allowed(hba))
> return;
>
> ret = ufshcd_wb_ctrl(hba, true);
> @@ -5197,18 +5196,13 @@ static void ufshcd_bkops_exception_event_handler(struct ufs_hba *hba)
> __func__, err);
> }
>
> -static bool ufshcd_wb_sup(struct ufs_hba *hba)
> -{
> - return ufshcd_is_wb_allowed(hba);
> -}
> -
> static int ufshcd_wb_ctrl(struct ufs_hba *hba, bool enable)
> {
> int ret;
> u8 index;
> enum query_opcode opcode;
>
> - if (!ufshcd_wb_sup(hba))
> + if (!ufshcd_is_wb_allowed(hba))
> return 0;
>
> if (!(enable ^ hba->wb_enabled))
> @@ -5264,7 +5258,7 @@ static int ufshcd_wb_buf_flush_enable(struct ufs_hba *hba)
> int ret;
> u8 index;
>
> - if (!ufshcd_wb_sup(hba) || hba->wb_buf_flush_enabled)
> + if (!ufshcd_is_wb_allowed(hba) || hba->wb_buf_flush_enabled)
> return 0;
>
> index = ufshcd_wb_get_flag_index(hba);
> @@ -5286,7 +5280,7 @@ static int ufshcd_wb_buf_flush_disable(struct ufs_hba *hba)
> int ret;
> u8 index;
>
> - if (!ufshcd_wb_sup(hba) || !hba->wb_buf_flush_enabled)
> + if (!ufshcd_is_wb_allowed(hba) || !hba->wb_buf_flush_enabled)
> return 0;
>
> index = ufshcd_wb_get_flag_index(hba);
> @@ -5336,7 +5330,7 @@ static bool ufshcd_wb_keep_vcc_on(struct ufs_hba *hba)
> int ret;
> u32 avail_buf;
>
> - if (!ufshcd_wb_sup(hba))
> + if (!ufshcd_is_wb_allowed(hba))
> return false;
> /*
> * The ufs device needs the vcc to be ON to flush.
> @@ -8235,12 +8229,12 @@ static int ufshcd_suspend(struct ufs_hba *hba, enum ufs_pm_op pm_op)
> * configured WB type is 70% full, keep vcc ON
> * for the device to flush the wb buffer
> */
> - if ((hba->auto_bkops_enabled && ufshcd_wb_sup(hba)) ||
> + if ((hba->auto_bkops_enabled && ufshcd_is_wb_allowed(hba)) ||
> ufshcd_wb_keep_vcc_on(hba))
> hba->dev_info.keep_vcc_on = true;
> else
> hba->dev_info.keep_vcc_on = false;
> - } else if (!ufshcd_is_runtime_pm(pm_op)) {
> + } else {
> hba->dev_info.keep_vcc_on = false;
> }
>
>


--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
Linux Foundation Collaborative Project