Hi Avri, > @@ -1841,13 +1575,7 @@ static void ufshpb_lu_parameter_init(struct ufs_hba *hba, > u32 entries_per_rgn; > u64 rgn_mem_size, tmp; > > - /* for pre_req */ > - hpb->pre_req_min_tr_len = hpb_dev_info->max_hpb_single_cmd + 1; > - > - if (ufshpb_is_legacy(hba)) > - hpb->pre_req_max_tr_len = HPB_LEGACY_CHUNK_HIGH; > - else > - hpb->pre_req_max_tr_len = HPB_MULTI_CHUNK_HIGH; > + hpb->pre_req_max_tr_len = HPB_LEGACY_CHUNK_HIGH; They are should be not changed, because it makes ufshpb_is_supported_chunk() determine to non-HPB READ when the its size is bigger than 4KB. > > hpb->cur_read_id = 0; > > @@ -2858,8 +2586,7 @@ void ufshpb_get_geo_info(struct ufs_hba *hba, u8 *geo_buf) > void ufshpb_get_dev_info(struct ufs_hba *hba, u8 *desc_buf) > { > struct ufshpb_dev_info *hpb_dev_info = &hba->ufshpb_dev; > - int version, ret; > - u32 max_hpb_single_cmd = HPB_MULTI_CHUNK_LOW; > + int version; > > hpb_dev_info->control_mode = desc_buf[DEVICE_DESC_PARAM_HPB_CONTROL]; > > @@ -2875,13 +2602,6 @@ void ufshpb_get_dev_info(struct ufs_hba *hba, u8 *desc_buf) > if (version == HPB_SUPPORT_LEGACY_VERSION) > hpb_dev_info->is_legacy = true; > > - ret = ufshcd_query_attr_retry(hba, UPIU_QUERY_OPCODE_READ_ATTR, > - QUERY_ATTR_IDN_MAX_HPB_SINGLE_CMD, 0, 0, &max_hpb_single_cmd); > - if (ret) > - dev_err(hba->dev, "%s: idn: read max size of single hpb cmd query request failed", > - __func__); > - hpb_dev_info->max_hpb_single_cmd = max_hpb_single_cmd; > - > /* > * Get the number of user logical unit to check whether all > * scsi_device finish initialization > diff --git a/drivers/scsi/ufs/ufshpb.h b/drivers/scsi/ufs/ufshpb.h > index a79e07398970..a4e7e33d451e 100644 > --- a/drivers/scsi/ufs/ufshpb.h > +++ b/drivers/scsi/ufs/ufshpb.h > @@ -31,8 +31,6 @@ > > /* hpb support chunk size */ > #define HPB_LEGACY_CHUNK_HIGH 1 > -#define HPB_MULTI_CHUNK_LOW 7 > -#define HPB_MULTI_CHUNK_HIGH 255 Because of above issue, they should be remained. Thanks, Daejun