Re: [PATCH v9 1/4] scsi: ufs: Add HPB feature related parameters

2020-08-29 Thread Bart Van Assche
On 2020-08-28 00:17, Daejun Park wrote:
> This is a patch for parameters to be used for HPB feature.

Reviewed-by: Bart Van Assche 


[PATCH v9 1/4] scsi: ufs: Add HPB feature related parameters

2020-08-28 Thread Daejun Park
This is a patch for parameters to be used for HPB feature.

Acked-by: Avri Altman 
Reviewed-by: Can Guo 
Tested-by: Bean Huo 
Signed-off-by: Daejun Park 
---
 drivers/scsi/ufs/ufs.h | 13 +
 1 file changed, 13 insertions(+)

diff --git a/drivers/scsi/ufs/ufs.h b/drivers/scsi/ufs/ufs.h
index f8ab16f30fdc..e879ac34c065 100644
--- a/drivers/scsi/ufs/ufs.h
+++ b/drivers/scsi/ufs/ufs.h
@@ -122,6 +122,7 @@ enum flag_idn {
QUERY_FLAG_IDN_WB_EN= 0x0E,
QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN = 0x0F,
QUERY_FLAG_IDN_WB_BUFF_FLUSH_DURING_HIBERN8 = 0x10,
+   QUERY_FLAG_IDN_HPB_RESET= 0x11,
 };
 
 /* Attribute idn for Query requests */
@@ -195,6 +196,9 @@ enum unit_desc_param {
UNIT_DESC_PARAM_PHY_MEM_RSRC_CNT= 0x18,
UNIT_DESC_PARAM_CTX_CAPABILITIES= 0x20,
UNIT_DESC_PARAM_LARGE_UNIT_SIZE_M1  = 0x22,
+   UNIT_DESC_HPB_LU_MAX_ACTIVE_REGIONS = 0x23,
+   UNIT_DESC_HPB_LU_PIN_REGION_START_OFFSET= 0x25,
+   UNIT_DESC_HPB_LU_NUM_PIN_REGIONS= 0x27,
UNIT_DESC_PARAM_WB_BUF_ALLOC_UNITS  = 0x29,
 };
 
@@ -235,6 +239,8 @@ enum device_desc_param {
DEVICE_DESC_PARAM_PSA_MAX_DATA  = 0x25,
DEVICE_DESC_PARAM_PSA_TMT   = 0x29,
DEVICE_DESC_PARAM_PRDCT_REV = 0x2A,
+   DEVICE_DESC_PARAM_HPB_VER   = 0x40,
+   DEVICE_DESC_PARAM_HPB_CONTROL   = 0x42,
DEVICE_DESC_PARAM_EXT_UFS_FEATURE_SUP   = 0x4F,
DEVICE_DESC_PARAM_WB_PRESRV_USRSPC_EN   = 0x53,
DEVICE_DESC_PARAM_WB_TYPE   = 0x54,
@@ -283,6 +289,10 @@ enum geometry_desc_param {
GEOMETRY_DESC_PARAM_ENM4_MAX_NUM_UNITS  = 0x3E,
GEOMETRY_DESC_PARAM_ENM4_CAP_ADJ_FCTR   = 0x42,
GEOMETRY_DESC_PARAM_OPT_LOG_BLK_SIZE= 0x44,
+   GEOMETRY_DESC_PARAM_HPB_REGION_SIZE = 0x48,
+   GEOMETRY_DESC_PARAM_HPB_NUMBER_LU   = 0x49,
+   GEOMETRY_DESC_PARAM_HPB_SUBREGION_SIZE  = 0x4A,
+   GEOMETRY_DESC_PARAM_HPB_MAX_ACTIVE_REGS = 0x4B,
GEOMETRY_DESC_PARAM_WB_MAX_ALLOC_UNITS  = 0x4F,
GEOMETRY_DESC_PARAM_WB_MAX_WB_LUNS  = 0x53,
GEOMETRY_DESC_PARAM_WB_BUFF_CAP_ADJ = 0x54,
@@ -327,8 +337,10 @@ enum {
 
 /* Possible values for dExtendedUFSFeaturesSupport */
 enum {
+   UFS_DEV_HPB_SUPPORT = BIT(7),
UFS_DEV_WRITE_BOOSTER_SUP   = BIT(8),
 };
+#define UFS_DEV_HPB_SUPPORT_VERSION0x310
 
 #define POWER_DESC_MAX_SIZE0x62
 #define POWER_DESC_MAX_ACTV_ICC_LVLS   16
@@ -537,6 +549,7 @@ struct ufs_dev_info {
u8 *model;
u16 wspecversion;
u32 clk_gating_wait_us;
+   u8 b_ufs_feature_sup;
u32 d_ext_ufs_feature_sup;
u8 b_wb_buffer_type;
u32 d_wb_alloc_units;
-- 
2.17.1