|
@@ -210,6 +210,15 @@ static void meson_mmc_get_transfer_mode(struct mmc_host *mmc,
|
|
|
int i;
|
|
|
bool use_desc_chain_mode = true;
|
|
|
|
|
|
+ /*
|
|
|
+ * Broken SDIO with AP6255-based WiFi on Khadas VIM Pro has been
|
|
|
+ * reported. For some strange reason this occurs in descriptor
|
|
|
+ * chain mode only. So let's fall back to bounce buffer mode
|
|
|
+ * for command SD_IO_RW_EXTENDED.
|
|
|
+ */
|
|
|
+ if (mrq->cmd->opcode == SD_IO_RW_EXTENDED)
|
|
|
+ return;
|
|
|
+
|
|
|
for_each_sg(data->sg, sg, data->sg_len, i)
|
|
|
/* check for 8 byte alignment */
|
|
|
if (sg->offset & 7) {
|