Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1470010
| From | Zang Leigang <zangleigang@hisilicon.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH v2] UFS: Date Segment only need for WRITE DESCRIPTOR |
| Date | 2016-08-25 11:40 +0200 |
| Message-ID | <s9ZiF-7DA-9@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
Some device may cause a compatibility issue while receiving a Query UPIU with Data Segment which does not expected. Signed-off-by: Zang Leigang <zangleigang@hisilicon.com> --- drivers/scsi/ufs/ufshcd.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index f08d41a..9b21d88 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -1266,9 +1266,12 @@ static void ufshcd_prepare_utp_query_req_upiu(struct ufs_hba *hba, ucd_req_ptr->header.dword_1 = UPIU_HEADER_DWORD( 0, query->request.query_func, 0, 0); - /* Data segment length */ - ucd_req_ptr->header.dword_2 = UPIU_HEADER_DWORD( - 0, 0, len >> 8, (u8)len); + /* Data segment length only need for WRITE_DESC */ + if (query->request.upiu_req.opcode == UPIU_QUERY_OPCODE_WRITE_DESC) + ucd_req_ptr->header.dword_2 = + UPIU_HEADER_DWORD(0, 0, (len >> 8), (u8)len); + else + ucd_req_ptr->header.dword_2 = 0; /* Copy the Query Request buffer as is */ memcpy(&ucd_req_ptr->qr, &query->request.upiu_req, -- 2.9.3
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
[PATCH v2] UFS: Date Segment only need for WRITE DESCRIPTOR Zang Leigang <zangleigang@hisilicon.com> - 2016-08-25 11:40 +0200
csiph-web