All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] Add Host control mode to HPB
@ 2021-01-27 15:12 Avri Altman
  2021-01-27 15:12 ` [PATCH 1/8] scsi: ufshpb: Cache HPB Control mode on init Avri Altman
                   ` (7 more replies)
  0 siblings, 8 replies; 32+ messages in thread
From: Avri Altman @ 2021-01-27 15:12 UTC (permalink / raw)
  To: James E . J . Bottomley, Martin K . Petersen, linux-scsi,
	linux-kernel
  Cc: gregkh, Bart Van Assche, yongmyung lee, Daejun Park, alim.akhtar,
	asutoshd, Zang Leigang, Avi Shchislowski, Bean Huo, cang,
	stanley.chu, Avri Altman

The HPB spec defines 2 control modes - device control mode and host
control mode. In oppose to device control mode, in which the host obey
to whatever recommendation received from the device - In host control
mode, the host uses its own algorithms to decide which regions should
be activated or inactivated.

We kept the host managed heuristic simple and concise.

Aside from adding a by-spec functionality, host control mode entails
some further potential benefits: makes the hpb logic transparent and
readable, while allow tuning / scaling its various parameters, and
utilize system-wide info to optimize HPB potential.

This series is based on Samsung's V18 device-control HPB1.0 driver, see
msg-id: 20201222015704epcms2p643f0c5011064a7ce56b08331811a8509@epcms2p6
in lore.kernel.org. The patches are also available in wdc ufs repo:
https://github.com/westerndigitalcorporation/WDC-UFS-REPO/tree/hpb-v18

This version was tested on Galaxy S20, and Xiaomi Mi10 pro.
Your meticulous review and testing is mostly welcome and appreciated.

Thanks,
Avri

Avri Altman (8):
  scsi: ufshpb: Cache HPB Control mode on init
  scsi: ufshpb: Add host control mode support to rsp_upiu
  scsi: ufshpb: Add region's reads counter
  scsi: ufshpb: Make eviction depends on region's reads
  scsi: ufshpb: Region inactivation in host mode
  scsi: ufshpb: Add hpb dev reset response
  scsi: ufshpb: Add "Cold" regions timer
  scsi: ufshpb: Add support for host control mode

 drivers/scsi/ufs/ufshpb.c | 430 +++++++++++++++++++++++++++++++++-----
 drivers/scsi/ufs/ufshpb.h |  23 ++
 2 files changed, 406 insertions(+), 47 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2021-02-01  9:05 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-27 15:12 [PATCH 0/8] Add Host control mode to HPB Avri Altman
2021-01-27 15:12 ` [PATCH 1/8] scsi: ufshpb: Cache HPB Control mode on init Avri Altman
2021-01-27 15:19   ` Greg KH
2021-01-31  7:08     ` Avri Altman
2021-01-31  7:13       ` Greg KH
2021-01-31  7:17         ` Avri Altman
2021-01-27 15:12 ` [PATCH 2/8] scsi: ufshpb: Add host control mode support to rsp_upiu Avri Altman
2021-01-27 15:20   ` Greg KH
2021-01-31  7:08     ` Avri Altman
2021-01-27 15:12 ` [PATCH 3/8] scsi: ufshpb: Add region's reads counter Avri Altman
2021-01-27 15:21   ` Greg KH
2021-01-31  7:25     ` Avri Altman
2021-01-31  7:35       ` Greg KH
2021-02-01  3:51   ` Daejun Park
2021-02-01  7:12     ` Avri Altman
2021-02-01  7:30       ` gregkh
2021-02-01  7:51         ` Avri Altman
2021-02-01  8:01           ` gregkh
2021-02-01  8:17             ` Avri Altman
2021-02-01  8:44               ` gregkh
2021-02-01  9:04                 ` Avri Altman
2021-01-27 15:12 ` [PATCH 4/8] scsi: ufshpb: Make eviction depends on region's reads Avri Altman
2021-02-01  3:59   ` Daejun Park
2021-02-01  7:14     ` Avri Altman
2021-01-27 15:12 ` [PATCH 5/8] scsi: ufshpb: Region inactivation in host mode Avri Altman
2021-01-27 15:12 ` [PATCH 6/8] scsi: ufshpb: Add hpb dev reset response Avri Altman
2021-02-01  5:10   ` Daejun Park
2021-02-01  7:20     ` Avri Altman
2021-01-27 15:12 ` [PATCH 7/8] scsi: ufshpb: Add "Cold" regions timer Avri Altman
2021-01-27 15:23   ` Greg KH
2021-01-31  7:30     ` Avri Altman
2021-01-27 15:12 ` [PATCH 8/8] scsi: ufshpb: Add support for host control mode Avri Altman

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.