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

From: Asutosh Das (asd)
Date: Mon Jul 25 2022 - 16:24:59 EST


On 7/25/2022 12:50 PM, Avri Altman wrote:
On 7/23/2022 1:22 PM, Avri Altman wrote:
-static void ufshcd_host_memory_configure(struct ufs_hba *hba)
+static int ufshcd_host_memory_configure(struct ufs_hba *hba)
{
struct utp_transfer_req_desc *utrdlp;
dma_addr_t cmd_desc_dma_addr; @@ -3721,6 +3764,9 @@ static
void ufshcd_host_memory_configure(struct
ufs_hba *hba)
int cmd_desc_size;
int i;

+ if (is_mcq_enabled(hba))
+ return ufshcd_mcq_memory_configure(hba);
+
utrdlp = hba->utrdl_base_addr;

response_offset =
@@ -3759,6 +3805,8 @@ static void
ufshcd_host_memory_configure(struct
ufs_hba *hba)

ufshcd_init_lrb(hba, &hba->lrb[i], i);
If is_mcq_enabled, do you still call ufshcd_init_lrb?

Thanks,
Avri

}
Another function ufshcd_mcq_init_lrb() is called.
But you are still calling ufshcd_init_lrb anyway.

I checked the patch, but couldn't find where ufshcd_init_lrb() is being invoked if mcq is enabled.
Please can you point it to me?

In ufshcd_host_memory_configure(), it goes as:
if (is_mcq_enabled(hba))
return ufshcd_mcq_memory_configure(hba);

And ufshcd_init_lrb() is only invoked from ufshcd_host_memory_configure().

Am I missing something?

Thanks,
Avri



-asd