summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/sdmmc/sdmmc_scsi.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/sys/dev/sdmmc/sdmmc_scsi.c b/sys/dev/sdmmc/sdmmc_scsi.c
index 9e87a3a387e..09a5f43e029 100644
--- a/sys/dev/sdmmc/sdmmc_scsi.c
+++ b/sys/dev/sdmmc/sdmmc_scsi.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sdmmc_scsi.c,v 1.22 2010/05/20 00:55:18 krw Exp $ */
+/* $OpenBSD: sdmmc_scsi.c,v 1.23 2010/06/20 23:05:29 mk Exp $ */
/*
* Copyright (c) 2006 Uwe Stuehler <uwe@openbsd.org>
@@ -47,7 +47,6 @@ struct sdmmc_ccb {
struct scsi_xfer *ccb_xs;
int ccb_flags;
#define SDMMC_CCB_F_ERR 0x0001
- void (*ccb_done)(struct sdmmc_ccb *);
u_int32_t ccb_blockno;
u_int32_t ccb_blockcnt;
volatile enum {
@@ -210,7 +209,6 @@ sdmmc_alloc_ccbs(struct sdmmc_scsi_softc *scbus, int nccbs)
ccb->ccb_state = SDMMC_CCB_FREE;
ccb->ccb_flags = 0;
ccb->ccb_xs = NULL;
- ccb->ccb_done = NULL;
TAILQ_INSERT_TAIL(&scbus->sc_ccb_freeq, ccb, ccb_link);
}
@@ -256,7 +254,6 @@ sdmmc_put_ccb(struct sdmmc_ccb *ccb)
ccb->ccb_state = SDMMC_CCB_FREE;
ccb->ccb_flags = 0;
ccb->ccb_xs = NULL;
- ccb->ccb_done = NULL;
TAILQ_INSERT_TAIL(&scbus->sc_ccb_freeq, ccb, ccb_link);
if (TAILQ_NEXT(ccb, ccb_link) == NULL)
wakeup(&scbus->sc_ccb_freeq);
@@ -380,7 +377,6 @@ sdmmc_scsi_cmd(struct scsi_xfer *xs)
}
ccb->ccb_xs = xs;
- ccb->ccb_done = sdmmc_done_xs;
ccb->ccb_blockcnt = blockcnt;
ccb->ccb_blockno = blockno;
@@ -440,7 +436,7 @@ sdmmc_complete_xs(void *arg)
if (error != 0)
xs->error = XS_DRIVER_STUFFUP;
- ccb->ccb_done(ccb);
+ sdmmc_done_xs(ccb);
splx(s);
}
@@ -478,7 +474,7 @@ sdmmc_stimeout(void *arg)
ccb->ccb_flags |= SDMMC_CCB_F_ERR;
if (sdmmc_task_pending(&ccb->ccb_task)) {
sdmmc_del_task(&ccb->ccb_task);
- ccb->ccb_done(ccb);
+ sdmmc_done_xs(ccb);
}
splx(s);
}