diff options
| author | Søren Schmidt <sos@FreeBSD.org> | 2007-04-08 15:31:39 +0000 |
|---|---|---|
| committer | Søren Schmidt <sos@FreeBSD.org> | 2007-04-08 15:31:39 +0000 |
| commit | cd945eed47c272ec70e863f08ce6669b97329703 (patch) | |
| tree | 511b9399806896e922ed1f10478f41ea6bd269c1 /sys/dev/ata | |
| parent | 27f0ce0f2b8bb2189adfd35b03082e2b9a439fac (diff) | |
Notes
Diffstat (limited to 'sys/dev/ata')
| -rw-r--r-- | sys/dev/ata/ata-dma.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/ata/ata-dma.c b/sys/dev/ata/ata-dma.c index fbe23f0b3201..46278562560a 100644 --- a/sys/dev/ata/ata-dma.c +++ b/sys/dev/ata/ata-dma.c @@ -259,7 +259,8 @@ ata_dmaload(device_t dev, caddr_t data, int32_t count, int dir, dir ? BUS_DMASYNC_PREREAD : BUS_DMASYNC_PREWRITE); ch->dma->cur_iosize = count; - ch->dma->flags = dir ? (ATA_DMA_LOADED | ATA_DMA_READ) : ATA_DMA_LOADED; + ch->dma->flags &= ATA_DMA_READ; + ch->dma->flags |= dir ? (ATA_DMA_LOADED | ATA_DMA_READ) : ATA_DMA_LOADED; return 0; } @@ -273,7 +274,7 @@ ata_dmaunload(device_t dev) BUS_DMASYNC_POSTWRITE); bus_dmamap_sync(ch->dma->data_tag, ch->dma->data_map, - (ch->dma->flags & ATA_DMA_READ) != 0 ? + (ch->dma->flags & ATA_DMA_READ) ? BUS_DMASYNC_POSTREAD : BUS_DMASYNC_POSTWRITE); bus_dmamap_unload(ch->dma->data_tag, ch->dma->data_map); |
