On 9/8/24 11:20, Avri Altman wrote: > Prevent Host Software Queue from enabling for SDUC. In SDUC, CMD44 is > modified to include 6-bit upper address by utilizing its reserved bits. > Exclude hsq for SDUC for now. The message here is misleading, actually hsq has nothing to do with the actual CQ as in CMD44, it's just a hack to present itself to the mmc subsystem as such to then get more in-flight requests from mmc core, which can be prepared in advance and be issued asynchronously to the completion of the preceding request (in atomic context). So the card is completely oblivious to hsq. This is presumably broken though by the mandatory CMD22 for SDUC. > > Signed-off-by: Avri Altman <avri.altman@xxxxxxx> > --- > drivers/mmc/core/sd.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c > index 1d09f0f2e769..5d35fc8802c7 100644 > --- a/drivers/mmc/core/sd.c > +++ b/drivers/mmc/core/sd.c > @@ -1558,7 +1558,7 @@ static int mmc_sd_init_card(struct mmc_host *host, u32 ocr, > goto free_card; > } > > - if (host->cqe_ops && !host->cqe_enabled) { > + if (!mmc_card_ult_capacity(card) && host->cqe_ops && !host->cqe_enabled) { > err = host->cqe_ops->cqe_enable(host, card); > if (!err) { > host->cqe_enabled = true;