All of lore.kernel.org
 help / color / mirror / Atom feed
From: Avri Altman <Avri.Altman@wdc.com>
To: Hoyoung SEO <hy50.seo@samsung.com>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"alim.akhtar@samsung.com" <alim.akhtar@samsung.com>,
	"jejb@linux.ibm.com" <jejb@linux.ibm.com>,
	"martin.petersen@oracle.com" <martin.petersen@oracle.com>,
	"beanhuo@micron.com" <beanhuo@micron.com>,
	"asutoshd@codeaurora.org" <asutoshd@codeaurora.org>,
	"cang@codeaurora.org" <cang@codeaurora.org>,
	"bvanassche@acm.org" <bvanassche@acm.org>,
	"bhoon95.kim@samsung.com" <bhoon95.kim@samsung.com>,
	"kwmad.kim@samsung.com" <kwmad.kim@samsung.com>
Cc: 'kernel test robot' <lkp@intel.com>
Subject: RE: [PATCH v2] scsi: ufs: disable auto hibern8 while entering suspend
Date: Thu, 3 Feb 2022 06:44:50 +0000	[thread overview]
Message-ID: <DM6PR04MB6575A9D9D81F0195E81282F9FC289@DM6PR04MB6575.namprd04.prod.outlook.com> (raw)
In-Reply-To: <12a201d81892$c8123d40$5836b7c0$@samsung.com>

> Hi,
> Please check this patch.
> If there is any other opinion, please give me comments Thanks
> 
> > -----Original Message-----
> > From: 서호영 [mailto:hy50.seo@samsung.com]
> > Sent: Wednesday, January 26, 2022 2:35 PM
> > To: 'linux-scsi@vger.kernel.org'; 'linux-kernel@vger.kernel.org';
> > 'alim.akhtar@samsung.com'; 'avri.altman@wdc.com';
> > 'jejb@linux.ibm.com'; 'martin.petersen@oracle.com';
> > 'beanhuo@micron.com'; 'asutoshd@codeaurora.org';
> > 'cang@codeaurora.org'; 'bvanassche@acm.org';
> 'bhoon95.kim@samsung.com'; 'kwmad.kim@samsung.com'
> > Cc: 'kernel test robot'
> > Subject: RE: [PATCH v2] scsi: ufs: disable auto hibern8 while entering
> > suspend
> >
> > Hi,
> > I think content is lacking in the UFSHCI spec.
> > In the process, AH8 is in operation, and it seems that sending the
> > command
> > hibern8 by manual has a defeat.
> > I don't know what the all hci vendor's hardware design will be, but
> > there is a possibility that ah8 and manual hibern8 may overlap.
> > So if is operating in ah8, it is thought that it will be safer to
> > disable
> > ah8 before sending hibern8 command.
Hi,
Thank you for your patch.
Maybe better to promote your idea in JEDEC first.

Thanks,
Avri
> >
> > > -----Original Message-----
> > > From: Stanley Chu [mailto:stanley.chu@mediatek.com]
> > > Sent: Wednesday, January 26, 2022 10:22 AM
> > > To: SEO HOYOUNG; linux-scsi@vger.kernel.org;
> > > linux-kernel@vger.kernel.org; alim.akhtar@samsung.com;
> > > avri.altman@wdc.com; jejb@linux.ibm.com;
> martin.petersen@oracle.com;
> > > beanhuo@micron.com; asutoshd@codeaurora.org;
> cang@codeaurora.org;
> > > bvanassche@acm.org; bhoon95.kim@samsung.com;
> kwmad.kim@samsung.com
> > > Cc: kernel test robot; peter.wang@mediatek.com
> > > Subject: Re: [PATCH v2] scsi: ufs: disable auto hibern8 while
> > > entering suspend
> > >
> > > Hi Hoyoung,
> > >
> > > On Tue, 2022-01-25 at 03:06 +0900, SEO HOYOUNG wrote:
> > > > v1-> v2: fixed no previous prototype warning
> > > > Reported-by: kernel test robot <lkp@intel.com>
> > > >
> > > > All warnings (new ones prefixed by >>):
> > > > > > drivers/scsi/ufs/ufshcd.c:4207:6: warning: no previous
> > > > > > prototype
> > > >
> > > > for 'ufshcd_auto_hibern8_disable' [-Wmissing-prototypes]
> > > > 4207 | void ufshcd_auto_hibern8_disable(struct ufs_hba *hba)
> > > >
> > > > If using auto hibern8 mode, need to disable auto hibern8 while
> > > > entering suspend.
> > > > When using auto hibern8 mode, it does not seem right to send a uic
> > > > command
> > >
> > > The UFSHCI spec does not mention the above rule.
> > > Why would you need to disable AH8 before using UIC command to enter
> H8?
> > >
> > > > for entry into hibern8 in the next
> > > > line(ufshcd_lik_state_transition(..))
> > > > It seem right to send after disable auto hibern8.
> > > >
> > > > In addition, if the auto hibern8 mode supported, it is enabled in
> > > > resume.
> > > > So it seems that it will be paired only when auto hibern8 is
> > > > disabled while entering suspend.
> > > >
> > > > Signed-off-by: SEO HOYOUNG <hy50.seo@samsung.com>
> > > > ---
> > > >  drivers/scsi/ufs/ufshcd.c | 14 ++++++++++++++
> > > >  1 file changed, 14 insertions(+)
> > > >
> > > > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> > > > index 460d2b440d2e..a6edbbd8ca2c 100644
> > > > --- a/drivers/scsi/ufs/ufshcd.c
> > > > +++ b/drivers/scsi/ufs/ufshcd.c
> > > > @@ -254,6 +254,7 @@ static void
> > > > ufshcd_wb_toggle_flush_during_h8(struct ufs_hba *hba, bool set);
> > > > static inline void ufshcd_wb_toggle_flush(struct ufs_hba *hba,
> > > > bool enable);  static void ufshcd_hba_vreg_set_lpm(struct ufs_hba
> > > > *hba); static void ufshcd_hba_vreg_set_hpm(struct ufs_hba *hba);
> > > > +static void ufshcd_auto_hibern8_disable(struct ufs_hba *hba);
> > > >
> > > >  static inline void ufshcd_enable_irq(struct ufs_hba *hba)  { @@
> > > > -4204,6 +4205,18 @@ void ufshcd_auto_hibern8_update(struct
> ufs_hba
> > > > *hba, u32 ahit)  }
> EXPORT_SYMBOL_GPL(ufshcd_auto_hibern8_update);
> > > >
> > > > +static void ufshcd_auto_hibern8_disable(struct ufs_hba *hba) {
> > > > +unsigned long flags;
> > > > +
> > > > + if (!ufshcd_is_auto_hibern8_supported(hba))
> > > > +         return;
> > > > +
> > > > + spin_lock_irqsave(hba->host->host_lock, flags);
> > > > + ufshcd_writel(hba, 0, REG_AUTO_HIBERNATE_IDLE_TIMER);
> > > > + spin_unlock_irqrestore(hba->host->host_lock, flags); }
> > > > +
> > > >  void ufshcd_auto_hibern8_enable(struct ufs_hba *hba)  {
> > > >   unsigned long flags;
> > > > @@ -8925,6 +8938,7 @@ static int __ufshcd_wl_suspend(struct
> > > > ufs_hba *hba, enum ufs_pm_op pm_op)
> > > >    * with the link off, so do not check for bkops.
> > > >    */
> > > >   check_for_bkops = !ufshcd_is_ufs_dev_deepsleep(hba);
> > > > + ufshcd_auto_hibern8_disable(hba);
> > > >   ret = ufshcd_link_state_transition(hba, req_link_state,
> > > > check_for_bkops);
> > > >   if (ret)
> > > >           goto set_dev_active;
> 
> 


  reply	other threads:[~2022-02-03  6:45 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20220125062155epcas2p15da28303164091b1bf5a00dcf99fe59b@epcas2p1.samsung.com>
2022-01-24 18:06 ` [PATCH v2] scsi: ufs: disable auto hibern8 while entering suspend SEO HOYOUNG
2022-01-26  1:22   ` Stanley Chu
2022-01-26  5:34     ` 서호영
2022-02-03  0:12     ` Hoyoung SEO
2022-02-03  6:44       ` Avri Altman [this message]
2022-02-03  6:50       ` Alim Akhtar
2022-02-03 16:53         ` Bart Van Assche

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DM6PR04MB6575A9D9D81F0195E81282F9FC289@DM6PR04MB6575.namprd04.prod.outlook.com \
    --to=avri.altman@wdc.com \
    --cc=alim.akhtar@samsung.com \
    --cc=asutoshd@codeaurora.org \
    --cc=beanhuo@micron.com \
    --cc=bhoon95.kim@samsung.com \
    --cc=bvanassche@acm.org \
    --cc=cang@codeaurora.org \
    --cc=hy50.seo@samsung.com \
    --cc=jejb@linux.ibm.com \
    --cc=kwmad.kim@samsung.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=lkp@intel.com \
    --cc=martin.petersen@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.