Module Name: src
Committed By: mlelstv
Date: Tue Nov 3 07:59:29 UTC 2015
Modified Files:
src/sys/dev/sdmmc: sdhc.c
Log Message:
Also wait for DAT when sending RSP_BSY commands. Fixes PR 50388.
To generate a diff of this commit:
cvs rdiff -u -r1.90 -r1.91 src/sys/dev/sdmmc/sdhc.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/sdmmc/sdhc.c
diff -u src/sys/dev/sdmmc/sdhc.c:1.90 src/sys/dev/sdmmc/sdhc.c:1.91
--- src/sys/dev/sdmmc/sdhc.c:1.90 Tue Nov 3 06:49:39 2015
+++ src/sys/dev/sdmmc/sdhc.c Tue Nov 3 07:59:29 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: sdhc.c,v 1.90 2015/11/03 06:49:39 mlelstv Exp $ */
+/* $NetBSD: sdhc.c,v 1.91 2015/11/03 07:59:29 mlelstv Exp $ */
/* $OpenBSD: sdhc.c,v 1.25 2009/01/13 19:44:20 grange Exp $ */
/*
@@ -23,7 +23,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sdhc.c,v 1.90 2015/11/03 06:49:39 mlelstv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sdhc.c,v 1.91 2015/11/03 07:59:29 mlelstv Exp $");
#ifdef _KERNEL_OPT
#include "opt_sdmmc.h"
@@ -1596,7 +1596,7 @@ sdhc_start_command(struct sdhc_host *hp,
/* Wait until command and optionally data inhibit bits are clear. (1.5) */
pmask = SDHC_CMD_INHIBIT_CMD;
- if (cmd->c_flags & SCF_CMD_ADTC)
+ if (cmd->c_flags & (SCF_CMD_ADTC|SCF_RSP_BSY))
pmask |= SDHC_CMD_INHIBIT_DAT;
error = sdhc_wait_state(hp, pmask, 0);
if (error) {