aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/mmc/mmcsd.c
diff options
context:
space:
mode:
authorIan Lepore <ian@FreeBSD.org>2013-03-24 17:23:10 +0000
committerIan Lepore <ian@FreeBSD.org>2013-03-24 17:23:10 +0000
commita350e54067ceb472590584494e164031c4516384 (patch)
treeccfeead4fba05769ff59b183a5d405dbad6357ab /sys/dev/mmc/mmcsd.c
parentdb12db318dbb46e519994eb1829fa6a0eb6d6b90 (diff)
downloadsrc-a350e54067ceb472590584494e164031c4516384.tar.gz
src-a350e54067ceb472590584494e164031c4516384.zip
Set the backlink in mmc commands to the mmc request that contains them.
Notes
Notes: svn path=/head/; revision=248689
Diffstat (limited to 'sys/dev/mmc/mmcsd.c')
-rw-r--r--sys/dev/mmc/mmcsd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/dev/mmc/mmcsd.c b/sys/dev/mmc/mmcsd.c
index 52b23e443ce0..888b61baea44 100644
--- a/sys/dev/mmc/mmcsd.c
+++ b/sys/dev/mmc/mmcsd.c
@@ -322,6 +322,7 @@ mmcsd_rw(struct mmcsd_softc *sc, struct bio *bp)
memset(&req, 0, sizeof(req));
memset(&cmd, 0, sizeof(cmd));
memset(&stop, 0, sizeof(stop));
+ cmd.mrq = &req;
req.cmd = &cmd;
cmd.data = &data;
if (bp->bio_cmd == BIO_READ) {
@@ -351,6 +352,7 @@ mmcsd_rw(struct mmcsd_softc *sc, struct bio *bp)
stop.opcode = MMC_STOP_TRANSMISSION;
stop.arg = 0;
stop.flags = MMC_RSP_R1B | MMC_CMD_AC;
+ stop.mrq = &req;
req.stop = &stop;
}
MMCBUS_WAIT_FOR_REQUEST(device_get_parent(dev), dev,
@@ -398,6 +400,7 @@ mmcsd_delete(struct mmcsd_softc *sc, struct bio *bp)
/* Set erase start position. */
memset(&req, 0, sizeof(req));
memset(&cmd, 0, sizeof(cmd));
+ cmd.mrq = &req;
req.cmd = &cmd;
if (mmc_get_card_type(dev) == mode_sd)
cmd.opcode = SD_ERASE_WR_BLK_START;