RE: [PATCH v3 2/2] scsi: ufs: remove wrapper function ufshcd_setup_clocks()

2020-06-11 Thread Alim Akhtar
Hi Bean,

> -Original Message-
> From: Winkler, Tomas 
> Sent: 07 June 2020 04:58
> To: Bean Huo ; alim.akh...@samsung.com;
> avri.alt...@wdc.com; asuto...@codeaurora.org; j...@linux.ibm.com;
> martin.peter...@oracle.com; stanley@mediatek.com;
> bean...@micron.com; bvanass...@acm.org; c...@codeaurora.org;
> ebigg...@kernel.org
> Cc: linux-s...@vger.kernel.org; linux-kernel@vger.kernel.org
> Subject: RE: [PATCH v3 2/2] scsi: ufs: remove wrapper function
> ufshcd_setup_clocks()
> 
> 
> >
> > From: Bean Huo 
> >
> > The static function ufshcd_setup_clocks() is just a wrapper around
> > __ufshcd_setup_clocks(), remove it. Rename original function wrapped
> > __ufshcd_setup_clocks() to new ufshcd_setup_clocks().
> 
> Not sure about this change, we have only one call with skip_ref_clock set
to
> true, the original code actually make sense from readability stand point.
> 
I do agree with Tomas, it easy to read and understand the original code.
Thanks

> >
> > Signed-off-by: Bean Huo 
> > ---
> >  drivers/scsi/ufs/ufshcd.c | 32 
> >  1 file changed, 12 insertions(+), 20 deletions(-)
> >
> > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> > index ec4f55211648..531d0b7878db 100644
> > --- a/drivers/scsi/ufs/ufshcd.c
> > +++ b/drivers/scsi/ufs/ufshcd.c
> > @@ -215,9 +215,7 @@ static int ufshcd_eh_host_reset_handler(struct
> > scsi_cmnd *cmd);  static int ufshcd_clear_tm_cmd(struct ufs_hba *hba,
> > int tag);  static void ufshcd_hba_exit(struct ufs_hba *hba);  static
> > int ufshcd_probe_hba(struct ufs_hba *hba, bool async); -static int
> > __ufshcd_setup_clocks(struct ufs_hba *hba, bool on,
> > -bool skip_ref_clk);
> > -static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on);
> > +static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on, bool
> > +skip_ref_clk);
> >  static int ufshcd_uic_hibern8_enter(struct ufs_hba *hba);  static
> > inline void ufshcd_add_delay_before_dme_cmd(struct ufs_hba *hba);
> > static int ufshcd_host_reset_and_restore(struct ufs_hba *hba); @@
> > -1497,7 +1495,7 @@ static void ufshcd_ungate_work(struct work_struct
> *work)
> > }
> >
> > spin_unlock_irqrestore(hba->host->host_lock, flags);
> > -   ufshcd_setup_clocks(hba, true);
> > +   ufshcd_setup_clocks(hba, true, false);
> >
> > ufshcd_enable_irq(hba);
> >
> > @@ -1655,10 +1653,10 @@ static void ufshcd_gate_work(struct
> > work_struct
> > *work)
> > ufshcd_disable_irq(hba);
> >
> > if (!ufshcd_is_link_active(hba))
> > -   ufshcd_setup_clocks(hba, false);
> > +   ufshcd_setup_clocks(hba, false, false);
> > else
> > /* If link is active, device ref_clk can't be switched off
*/
> > -   __ufshcd_setup_clocks(hba, false, true);
> > +   ufshcd_setup_clocks(hba, false, true);
> >
> > /*
> >  * In case you are here to cancel this work the gating state @@ -
> > 7683,8 +7681,7 @@ static int ufshcd_init_hba_vreg(struct ufs_hba *hba)
> > return 0;
> >  }
> >
> > -static int __ufshcd_setup_clocks(struct ufs_hba *hba, bool on,
> > -   bool skip_ref_clk)
> > +static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on, bool
> > +skip_ref_clk)
> >  {
> > int ret = 0;
> > struct ufs_clk_info *clki;
> > @@ -7747,11 +7744,6 @@ static int __ufshcd_setup_clocks(struct ufs_hba
> > *hba, bool on,
> > return ret;
> >  }
> >
> > -static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on) -{
> > -   return  __ufshcd_setup_clocks(hba, on, false);
> > -}
> > -
> >  static int ufshcd_init_clocks(struct ufs_hba *hba)  {
> > int ret = 0;
> > @@ -7858,7 +7850,7 @@ static int ufshcd_hba_init(struct ufs_hba *hba)
> > if (err)
> > goto out_disable_hba_vreg;
> >
> > -   err = ufshcd_setup_clocks(hba, true);
> > +   err = ufshcd_setup_clocks(hba, true, false);
> > if (err)
> > goto out_disable_hba_vreg;
> >
> > @@ -7880,7 +7872,7 @@ static int ufshcd_hba_init(struct ufs_hba *hba)
> >  out_disable_vreg:
> > ufshcd_setup_vreg(hba, false);
> >  out_disable_clks:
> > -   ufshcd_setup_clocks(hba, false);
> > +   ufshcd_setup_clocks(hba, false, false);
> >  out_disable_hba_vreg:
> > ufshcd_setup_hba_vreg(hba, false);
> >  out:
> > @@ -7896,7 +7888,7 @@ static void ufshcd_hba_exit(struct ufs_hba *hb

RE: [PATCH v3 2/2] scsi: ufs: remove wrapper function ufshcd_setup_clocks()

2020-06-06 Thread Winkler, Tomas


> 
> From: Bean Huo 
> 
> The static function ufshcd_setup_clocks() is just a wrapper around
> __ufshcd_setup_clocks(), remove it. Rename original function wrapped
> __ufshcd_setup_clocks() to new ufshcd_setup_clocks().

Not sure about this change, we have only one call with skip_ref_clock set to 
true, the original code actually make sense from readability stand point. 

> 
> Signed-off-by: Bean Huo 
> ---
>  drivers/scsi/ufs/ufshcd.c | 32 
>  1 file changed, 12 insertions(+), 20 deletions(-)
> 
> diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index
> ec4f55211648..531d0b7878db 100644
> --- a/drivers/scsi/ufs/ufshcd.c
> +++ b/drivers/scsi/ufs/ufshcd.c
> @@ -215,9 +215,7 @@ static int ufshcd_eh_host_reset_handler(struct
> scsi_cmnd *cmd);  static int ufshcd_clear_tm_cmd(struct ufs_hba *hba, int
> tag);  static void ufshcd_hba_exit(struct ufs_hba *hba);  static int
> ufshcd_probe_hba(struct ufs_hba *hba, bool async); -static int
> __ufshcd_setup_clocks(struct ufs_hba *hba, bool on,
> -  bool skip_ref_clk);
> -static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on);
> +static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on, bool
> +skip_ref_clk);
>  static int ufshcd_uic_hibern8_enter(struct ufs_hba *hba);  static inline void
> ufshcd_add_delay_before_dme_cmd(struct ufs_hba *hba);  static int
> ufshcd_host_reset_and_restore(struct ufs_hba *hba); @@ -1497,7 +1495,7
> @@ static void ufshcd_ungate_work(struct work_struct *work)
>   }
> 
>   spin_unlock_irqrestore(hba->host->host_lock, flags);
> - ufshcd_setup_clocks(hba, true);
> + ufshcd_setup_clocks(hba, true, false);
> 
>   ufshcd_enable_irq(hba);
> 
> @@ -1655,10 +1653,10 @@ static void ufshcd_gate_work(struct work_struct
> *work)
>   ufshcd_disable_irq(hba);
> 
>   if (!ufshcd_is_link_active(hba))
> - ufshcd_setup_clocks(hba, false);
> + ufshcd_setup_clocks(hba, false, false);
>   else
>   /* If link is active, device ref_clk can't be switched off */
> - __ufshcd_setup_clocks(hba, false, true);
> + ufshcd_setup_clocks(hba, false, true);
> 
>   /*
>* In case you are here to cancel this work the gating state @@ -
> 7683,8 +7681,7 @@ static int ufshcd_init_hba_vreg(struct ufs_hba *hba)
>   return 0;
>  }
> 
> -static int __ufshcd_setup_clocks(struct ufs_hba *hba, bool on,
> - bool skip_ref_clk)
> +static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on, bool
> +skip_ref_clk)
>  {
>   int ret = 0;
>   struct ufs_clk_info *clki;
> @@ -7747,11 +7744,6 @@ static int __ufshcd_setup_clocks(struct ufs_hba
> *hba, bool on,
>   return ret;
>  }
> 
> -static int ufshcd_setup_clocks(struct ufs_hba *hba, bool on) -{
> - return  __ufshcd_setup_clocks(hba, on, false);
> -}
> -
>  static int ufshcd_init_clocks(struct ufs_hba *hba)  {
>   int ret = 0;
> @@ -7858,7 +7850,7 @@ static int ufshcd_hba_init(struct ufs_hba *hba)
>   if (err)
>   goto out_disable_hba_vreg;
> 
> - err = ufshcd_setup_clocks(hba, true);
> + err = ufshcd_setup_clocks(hba, true, false);
>   if (err)
>   goto out_disable_hba_vreg;
> 
> @@ -7880,7 +7872,7 @@ static int ufshcd_hba_init(struct ufs_hba *hba)
>  out_disable_vreg:
>   ufshcd_setup_vreg(hba, false);
>  out_disable_clks:
> - ufshcd_setup_clocks(hba, false);
> + ufshcd_setup_clocks(hba, false, false);
>  out_disable_hba_vreg:
>   ufshcd_setup_hba_vreg(hba, false);
>  out:
> @@ -7896,7 +7888,7 @@ static void ufshcd_hba_exit(struct ufs_hba *hba)
>   if (ufshcd_is_clkscaling_supported(hba))
>   if (hba->devfreq)
>   ufshcd_suspend_clkscaling(hba);
> - ufshcd_setup_clocks(hba, false);
> + ufshcd_setup_clocks(hba, false, false);
>   ufshcd_setup_hba_vreg(hba, false);
>   hba->is_powered = false;
>   ufs_put_device_desc(hba);
> @@ -8259,10 +8251,10 @@ static int ufshcd_suspend(struct ufs_hba *hba,
> enum ufs_pm_op pm_op)
>   ufshcd_disable_irq(hba);
> 
>   if (!ufshcd_is_link_active(hba))
> - ufshcd_setup_clocks(hba, false);
> + ufshcd_setup_clocks(hba, false, false);
>   else
>   /* If link is active, device ref_clk can't be switched off */
> - __ufshcd_setup_clocks(hba, false, true);
> + ufshcd_setup_clocks(hba, false, true);
> 
>   hba->clk_gating.state = CLKS_OFF;
>   trace_ufshcd_clk_gating(dev_name(hba->dev), hba-
> >clk_gating.state); @@ -8321,7 +8313,7 @@ static int ufshcd_resume(struct
> ufs_hba *hba, enum ufs_pm_op pm_op)
> 
>   ufshcd_hba_vreg_set_hpm(hba);
>   /* Make sure clocks are enabled before accessing controller */
> - ret = ufshcd_setup_clocks(hba, true);
> + ret = ufshcd_setup_clocks(hba, true, false);
>