summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata/ata-disk.c
diff options
context:
space:
mode:
authorsos <sos@FreeBSD.org>2002-04-18 19:11:45 +0000
committersos <sos@FreeBSD.org>2002-04-18 19:11:45 +0000
commit57865251c86fc1a67f3fe94878e07688c988ee3d (patch)
tree26178c91467b079e298762402bb89e12781834b8 /sys/dev/ata/ata-disk.c
parentf446eb58b0ea3667e039476b9e742450b2ad3328 (diff)
downloadFreeBSD-src-57865251c86fc1a67f3fe94878e07688c988ee3d.zip
FreeBSD-src-57865251c86fc1a67f3fe94878e07688c988ee3d.tar.gz
Fix the breakage of tagged queueing that the busdma integration
introduced. Since its now only possible to have one DMA control block at a time, we move the setup to dmastart instead.
Diffstat (limited to 'sys/dev/ata/ata-disk.c')
-rw-r--r--sys/dev/ata/ata-disk.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/ata/ata-disk.c b/sys/dev/ata/ata-disk.c
index 5a72220..d7ac069 100644
--- a/sys/dev/ata/ata-disk.c
+++ b/sys/dev/ata/ata-disk.c
@@ -487,7 +487,8 @@ ad_transfer(struct ad_request *request)
}
/* start transfer, return and wait for interrupt */
- ata_dmastart(adp->device, request->flags & ADR_F_READ);
+ ata_dmastart(adp->device, request->data, request->bytecount,
+ request->flags & ADR_F_READ);
return ATA_OP_CONTINUES;
}
@@ -749,7 +750,8 @@ ad_service(struct ad_softc *adp, int change)
ad_invalidatequeue(adp, NULL);
return ATA_OP_FINISHED;
}
- ata_dmastart(adp->device, request->flags & ADR_F_READ);
+ ata_dmastart(adp->device, request->data, request->bytecount,
+ request->flags & ADR_F_READ);
return ATA_OP_CONTINUES;
}
return ATA_OP_FINISHED;
OpenPOWER on IntegriCloud