projects
/
bootcensus
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of github.com:jtsiomb/pcboot
[bootcensus]
/
src
/
dma.c
diff --git
a/src/dma.c
b/src/dma.c
index
b6c4605
..
8d36edf
100644
(file)
--- a/
src/dma.c
+++ b/
src/dma.c
@@
-117,8
+117,8
@@
static void dma_io(int chan, uint32_t phyaddr, int size, unsigned int flags, uns
mask(chan);
outb(0, DMA_CLR_FLIPFLOP(chan));
mask(chan);
outb(0, DMA_CLR_FLIPFLOP(chan));
- /* single / block / cascade */
- mode = ((flags & 3) << 6) | MODE_CHAN(chan);
+ /* first 2 bits of flags correspond to the mode bits 6,7 */
+ mode = ((flags & 3) << 6) | dir | MODE_CHAN(chan);
if(flags & DMA_DECR) mode |= MODE_DECR;
if(flags & DMA_AUTO) mode |= MODE_AUTO;
outb(mode, DMA_MODE(chan));
if(flags & DMA_DECR) mode |= MODE_DECR;
if(flags & DMA_AUTO) mode |= MODE_AUTO;
outb(mode, DMA_MODE(chan));