summaryrefslogtreecommitdiff
path: root/sys/dev/fdt
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2018-05-25 00:04:13 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2018-05-25 00:04:13 +0000
commitc83e4ad9aee40137831d6d50849f4865a0db595f (patch)
treef493867b483e174e0fc01c1cb2ff5ea9ff42a52c /sys/dev/fdt
parent3a3a014677b18c95d69f22a93fa69f474e4bb30d (diff)
For SDIO multi-blocks we must not use the AUTO CMD12 feature,
this is only for memory card read/writes. ok kettenis@
Diffstat (limited to 'sys/dev/fdt')
-rw-r--r--sys/dev/fdt/imxesdhc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/fdt/imxesdhc.c b/sys/dev/fdt/imxesdhc.c
index 97c17aefc78..f6d085132c1 100644
--- a/sys/dev/fdt/imxesdhc.c
+++ b/sys/dev/fdt/imxesdhc.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: imxesdhc.c,v 1.4 2018/05/03 11:18:08 patrick Exp $ */
+/* $OpenBSD: imxesdhc.c,v 1.5 2018/05/25 00:04:11 patrick Exp $ */
/*
* Copyright (c) 2009 Dale Rahn <drahn@openbsd.org>
* Copyright (c) 2006 Uwe Stuehler <uwe@openbsd.org>
@@ -30,6 +30,7 @@
#include <dev/sdmmc/sdmmcchip.h>
#include <dev/sdmmc/sdmmcvar.h>
+#include <dev/sdmmc/sdmmc_ioreg.h>
#include <dev/ofw/openfirm.h>
#include <dev/ofw/ofw_clock.h>
@@ -903,7 +904,8 @@ imxesdhc_start_command(struct imxesdhc_softc *sc, struct sdmmc_command *cmd)
command |= SDHC_MIX_CTRL_BCEN;
if (blkcount > 1) {
command |= SDHC_MIX_CTRL_MSBSEL;
- command |= SDHC_MIX_CTRL_AC12EN;
+ if (cmd->c_opcode != SD_IO_RW_EXTENDED)
+ command |= SDHC_MIX_CTRL_AC12EN;
}
}
if (cmd->c_dmamap && cmd->c_datalen > 0 &&