|
@@ -1809,6 +1809,18 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr,
|
|
|
*/
|
|
|
card->reenable_cmdq = card->ext_csd.cmdq_en;
|
|
|
|
|
|
+ if (card->ext_csd.cmdq_en && !host->cqe_enabled) {
|
|
|
+ err = host->cqe_ops->cqe_enable(host, card);
|
|
|
+ if (err) {
|
|
|
+ pr_err("%s: Failed to enable CQE, error %d\n",
|
|
|
+ mmc_hostname(host), err);
|
|
|
+ } else {
|
|
|
+ host->cqe_enabled = true;
|
|
|
+ pr_info("%s: Command Queue Engine enabled\n",
|
|
|
+ mmc_hostname(host));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (!oldcard)
|
|
|
host->card = card;
|
|
|
|