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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Bean,

> -----Original Message-----
> From: Winkler, Tomas <tomas.winkler@xxxxxxxxx>
> Sent: 07 June 2020 04:58
> To: Bean Huo <huobean@xxxxxxxxx>; alim.akhtar@xxxxxxxxxxx;
> avri.altman@xxxxxxx; asutoshd@xxxxxxxxxxxxxx; jejb@xxxxxxxxxxxxx;
> martin.petersen@xxxxxxxxxx; stanley.chu@xxxxxxxxxxxx;
> beanhuo@xxxxxxxxxx; bvanassche@xxxxxxx; cang@xxxxxxxxxxxxxx;
> ebiggers@xxxxxxxxxx
> Cc: linux-scsi@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: RE: [PATCH v3 2/2] scsi: ufs: remove wrapper function
> ufshcd_setup_clocks()
> 
> 
> >
> > From: Bean Huo <beanhuo@xxxxxxxxxx>
> >
> > 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 <beanhuo@xxxxxxxxxx>
> > ---
> >  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);
> >  	if (ret)
> >  		goto out;
> >
> > @@ -8404,7 +8396,7 @@ static int ufshcd_resume(struct ufs_hba *hba,
> > enum ufs_pm_op pm_op)
> >  	ufshcd_disable_irq(hba);
> >  	if (hba->clk_scaling.is_allowed)
> >  		ufshcd_suspend_clkscaling(hba);
> > -	ufshcd_setup_clocks(hba, false);
> > +	ufshcd_setup_clocks(hba, false, false);
> >  out:
> >  	hba->pm_op_in_progress = 0;
> >  	if (ret)
> > --
> > 2.17.1





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux