[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CH2PR04MB657022BFB9D32FAD8472B68CFC879@CH2PR04MB6570.namprd04.prod.outlook.com>
Date: Fri, 29 Oct 2021 23:47:49 +0000
From: Avri Altman <Avri.Altman@....com>
To: "daejun7.park@...sung.com" <daejun7.park@...sung.com>,
"James E . J . Bottomley" <jejb@...ux.vnet.ibm.com>,
"Martin K . Petersen" <martin.petersen@...cle.com>
CC: "linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Bart Van Assche <bvanassche@....org>,
Adrian Hunter <adrian.hunter@...el.com>,
Bean Huo <beanhuo@...ron.com>,
James Bottomley <James.Bottomley@...senPartnership.com>
Subject: RE: [PATCH v2] scsi: ufshpb: Opt out pre-reqs from HPB2.0 flows
> 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.
Yes, this patch downgrades HPB to support single block only as if HPB1.0.
But You are correct.
the spec only _recommend_ to use pre-req commands if transfer length > bMAX_DATA_SIZE_FOR_HPB_SINGLE_CMD.
Meaning, it is ok to use HPB-READ with hpb-read-id = 0x0 and transfer length <= bMAX_DATA_SIZE_FOR_HPB_SINGLE_CMD.
Will re-insert those pieces of code in v3.
While at it, I noticed that I didn't removed ufshpb_get_read_id - will remove it as well.
Thanks,
Avri
Powered by blists - more mailing lists