Re: [PATCH 1/2] scsi: ufs: Add Multi-Circular Queue support

From: Asutosh Das (asd)
Date: Mon Jul 25 2022 - 12:38:54 EST


On 7/23/2022 9:07 PM, Avri Altman wrote:
@@ -2558,7 +2587,8 @@ void ufshcd_prepare_utp_scsi_cmd_upiu(struct
ufshcd_lrb *lrbp, u8 upiu_flags)
UPIU_TRANSACTION_COMMAND, upiu_flags,
lrbp->lun, lrbp->task_tag);
ucd_req_ptr->header.dword_1 = UPIU_HEADER_DWORD(
- UPIU_COMMAND_SET_TYPE_SCSI, 0, 0, 0);
+ UPIU_COMMAND_SET_TYPE_SCSI |
+ (lrbp->hw_queue_id << 4), 0, 0, 0);
This is fine, as long as we have 16 queues or less.
Otherwise, we need to fill the EXT_IID as well (only if bEXTIIDEn = 1).

Yes, correct. Will add the code for EXT_IID in the next version.

Also, don't we need to do this for query commands as well?
Or at least add a comment that the queue id for query command is 0.

Query commands would use the reserved queue whose id = 0.
I agree a comment should be added detailing this.
Will add in the next version.

Thanks,
Avri