linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daejun Park <daejun7.park@samsung.com>
To: Stanley Chu <stanley.chu@mediatek.com>,
	Daejun Park <daejun7.park@samsung.com>
Cc: "avri.altman@wdc.com" <avri.altman@wdc.com>,
	"jejb@linux.ibm.com" <jejb@linux.ibm.com>,
	"martin.petersen@oracle.com" <martin.petersen@oracle.com>,
	"asutoshd@codeaurora.org" <asutoshd@codeaurora.org>,
	"cang@codeaurora.org" <cang@codeaurora.org>,
	"bvanassche@acm.org" <bvanassche@acm.org>,
	"huobean@gmail.com" <huobean@gmail.com>,
	ALIM AKHTAR <alim.akhtar@samsung.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Sung-Jun Park <sungjun07.park@samsung.com>,
	yongmyung lee <ymhungry.lee@samsung.com>,
	Jinyoung CHOI <j-young.choi@samsung.com>,
	Adel Choi <adel.choi@samsung.com>,
	BoRam Shin <boram.shin@samsung.com>,
	SEUNGUK SHIN <seunguk.shin@samsung.com>
Subject: RE: Re: Subject: [PATCH v14 1/3] scsi: ufs: Introduce HPB feature
Date: Fri, 18 Dec 2020 11:15:02 +0900	[thread overview]
Message-ID: <20201218021502epcms2p2a66c2aa01b084edd3b06323812116c4d@epcms2p2> (raw)
In-Reply-To: <1608256903.10163.39.camel@mtkswgap22>

Hi Daejun,
> 
> On Wed, 2020-12-16 at 11:45 +0900, Daejun Park wrote:
> > This is a patch for the HPB initialization and adds HPB function calls to
> > UFS core driver.
> > 
> > NAND flash-based storage devices, including UFS, have mechanisms to
> > translate logical addresses of IO requests to the corresponding physical
> > addresses of the flash storage.
> > In UFS, Logical-address-to-Physical-address (L2P) map data, which is
> > required to identify the physical address for the requested IOs, can only
> > be partially stored in SRAM from NAND flash. Due to this partial loading,
> > accessing the flash address area where the L2P information for that address
> > is not loaded in the SRAM can result in serious performance degradation.
> > 
> > The basic concept of HPB is to cache L2P mapping entries in host system
> > memory so that both physical block address (PBA) and logical block address
> > (LBA) can be delivered in HPB read command.
> > The HPB READ command allows to read data faster than a read command in UFS
> > since it provides the physical address (HPB Entry) of the desired logical
> > block in addition to its logical address. The UFS device can access the
> > physical block in NAND directly without searching and uploading L2P mapping
> > table. This improves read performance because the NAND read operation for
> > uploading L2P mapping table is removed.
> > 
> > In HPB initialization, the host checks if the UFS device supports HPB
> > feature and retrieves related device capabilities. Then, some HPB
> > parameters are configured in the device.
> > 
> > Reviewed-by: Bart Van Assche <bvanassche@acm.org>
> > Reviewed-by: Can Guo <cang@codeaurora.org>
> > Acked-by: Avri Altman <Avri.Altman@wdc.com>
> > Tested-by: Bean Huo <beanhuo@micron.com>
> > Signed-off-by: Daejun Park <daejun7.park@samsung.com>
> > ---
> >  Documentation/ABI/testing/sysfs-driver-ufs |  80 +++
> >  drivers/scsi/ufs/Kconfig                   |   9 +
> >  drivers/scsi/ufs/Makefile                  |   1 +
> >  drivers/scsi/ufs/ufs-sysfs.c               |  18 +
> >  drivers/scsi/ufs/ufs.h                     |  13 +
> >  drivers/scsi/ufs/ufshcd.c                  |  48 ++
> >  drivers/scsi/ufs/ufshcd.h                  |  23 +-
> >  drivers/scsi/ufs/ufshpb.c                  | 562 +++++++++++++++++++++
> >  drivers/scsi/ufs/ufshpb.h                  | 167 ++++++
> >  9 files changed, 920 insertions(+), 1 deletion(-)
> >  create mode 100644 drivers/scsi/ufs/ufshpb.c
> >  create mode 100644 drivers/scsi/ufs/ufshpb.h
> > 
> > diff --git a/Documentation/ABI/testing/sysfs-driver-ufs b/Documentation/ABI/testing/sysfs-driver-ufs
> > index d1a352194d2e..8b16a353392c 100644
> > --- a/Documentation/ABI/testing/sysfs-driver-ufs
> > +++ b/Documentation/ABI/testing/sysfs-driver-ufs
> > @@ -1019,3 +1019,83 @@ Contact:	Asutosh Das <asutoshd@codeaurora.org>
> >  Description:	This entry shows the configured size of WriteBooster buffer.
> >  		0400h corresponds to 4GB.
> >  		The file is read only.
> > +
> > +What:		/sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_version
> > +Date:		December 2020
> > +Contact:	Daejun Park <daejun7.park@samsung.com>
> > +Description:	This entry shows the HPB specification version.
> > +		The full information about the descriptor could be found at UFS
> > +		HPB (Host Performance Booster) Extension specifications.
> > +		Example: version 1.2.3 = 0123h
> > +		The file is read only.
> > +
> > +What:		/sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_control
> > +Date:		December 2020
> > +Contact:	Daejun Park <daejun7.park@samsung.com>
> > +Description:	This entry shows an indication of the HPB control mode.
> > +		00h: Host control mode
> > +		01h: Device control mode
> > +		The file is read only.
> > +
> > +What:		/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_region_size
> > +Date:		December 2020
> > +Contact:	Daejun Park <daejun7.park@samsung.com>
> > +Description:	This entry shows the bHPBRegionSize which can be calculated
> > +		as in the following (in bytes):
> > +		HPB Region size = 512B * 2^bHPBRegionSize
> > +		The file is read only.
> > +
> > +What:		/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_number_lu
> > +Date:		December 2020
> > +Contact:	Daejun Park <daejun7.park@samsung.com>
> > +Description:	This entry shows the maximum number of HPB LU supported	by
> > +		the device.
> > +		00h: HPB is not supported by the device.
> > +		01h ~ 20h: Maximum number of HPB LU supported by the device
> > +		The file is read only.
> > +
> > +What:		/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_number_lu
> > +Date:		December 2020
> > +Contact:	Daejun Park <daejun7.park@samsung.com>
> > +Description:	This entry shows the maximum number of HPB LU supported	by
> > +		the device.
> > +		00h: HPB is not supported by the device.
> > +		01h ~ 20h: Maximum number of HPB LU supported by the device
> > +		The file is read only.
> 
> Please remove above duplicated item.
> 
> Thanks,
> Stanley Chu

OK, I will remove them.

Thanks,
Daejun

  parent reply	other threads:[~2020-12-18  2:16 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20201215082235epcms2p88c9d8fd4dc773f6a4901dab241063306@epcms2p5>
2020-12-16  2:44 ` [PATCH v14 0/3] scsi: ufs: Add Host Performance Booster Support Daejun Park
     [not found]   ` <CGME20201215082235epcms2p88c9d8fd4dc773f6a4901dab241063306@epcms2p2>
2020-12-16  2:45     ` Subject: [PATCH v14 1/3] scsi: ufs: Introduce HPB feature Daejun Park
2020-12-16  9:01       ` Greg KH
     [not found]       ` <CGME20201215082235epcms2p88c9d8fd4dc773f6a4901dab241063306@epcms2p1>
2020-12-17  5:21         ` Daejun Park
2020-12-17  6:17           ` Greg KH
2020-12-18  1:05         ` Re: [PATCH v14 0/3] scsi: ufs: Add Host Performance Booster Support Daejun Park
2020-12-18  1:58           ` Bart Van Assche
2020-12-18  2:01       ` Subject: [PATCH v14 1/3] scsi: ufs: Introduce HPB feature Stanley Chu
2020-12-18  2:15     ` Daejun Park [this message]
     [not found]   ` <CGME20201215082235epcms2p88c9d8fd4dc773f6a4901dab241063306@epcms2p6>
2020-12-16  2:47     ` [PATCH v14 3/3] scsi: ufs: Prepare HPB read for cached sub-region Daejun Park
2020-12-16 10:07   ` [PATCH v14 0/3] scsi: ufs: Add Host Performance Booster Support Greg KH
     [not found]   ` <CGME20201215082235epcms2p88c9d8fd4dc773f6a4901dab241063306@epcms2p7>
2020-12-16  2:46     ` [PATCH v14 2/3] scsi: ufs: L2P map management for HPB read Daejun Park
2020-12-18  2:16     ` Re: [PATCH v14 0/3] scsi: ufs: Add Host Performance Booster Support Daejun Park

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=20201218021502epcms2p2a66c2aa01b084edd3b06323812116c4d@epcms2p2 \
    --to=daejun7.park@samsung.com \
    --cc=adel.choi@samsung.com \
    --cc=alim.akhtar@samsung.com \
    --cc=asutoshd@codeaurora.org \
    --cc=avri.altman@wdc.com \
    --cc=boram.shin@samsung.com \
    --cc=bvanassche@acm.org \
    --cc=cang@codeaurora.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=huobean@gmail.com \
    --cc=j-young.choi@samsung.com \
    --cc=jejb@linux.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=seunguk.shin@samsung.com \
    --cc=stanley.chu@mediatek.com \
    --cc=sungjun07.park@samsung.com \
    --cc=ymhungry.lee@samsung.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).