Lines Matching refs:chan
47 static int isa_get_dma_residue(unsigned int chan, dma_t *dma) in isa_get_dma_residue() argument
49 unsigned int io_port = isa_dma_port[chan][ISA_DMA_COUNT]; in isa_get_dma_residue()
55 return chan < 4 ? count : (count << 1); in isa_get_dma_residue()
58 static void isa_enable_dma(unsigned int chan, dma_t *dma) in isa_enable_dma() argument
65 mode = (chan & 3) | dma->dma_mode; in isa_enable_dma()
100 outb(address >> 16, isa_dma_port[chan][ISA_DMA_PGLO]); in isa_enable_dma()
101 outb(address >> 24, isa_dma_port[chan][ISA_DMA_PGHI]); in isa_enable_dma()
103 if (chan >= 4) { in isa_enable_dma()
108 outb(0, isa_dma_port[chan][ISA_DMA_CLRFF]); in isa_enable_dma()
110 outb(address, isa_dma_port[chan][ISA_DMA_ADDR]); in isa_enable_dma()
111 outb(address >> 8, isa_dma_port[chan][ISA_DMA_ADDR]); in isa_enable_dma()
113 outb(length, isa_dma_port[chan][ISA_DMA_COUNT]); in isa_enable_dma()
114 outb(length >> 8, isa_dma_port[chan][ISA_DMA_COUNT]); in isa_enable_dma()
116 outb(mode, isa_dma_port[chan][ISA_DMA_MODE]); in isa_enable_dma()
119 outb(chan & 3, isa_dma_port[chan][ISA_DMA_MASK]); in isa_enable_dma()
122 static void isa_disable_dma(unsigned int chan, dma_t *dma) in isa_disable_dma() argument
124 outb(chan | 4, isa_dma_port[chan][ISA_DMA_MASK]); in isa_disable_dma()
175 unsigned int chan, i; in isa_init_dma() local
177 for (chan = 0; chan < 8; chan++) { in isa_init_dma()
178 isa_dma[chan].d_ops = &isa_dma_ops; in isa_init_dma()
179 isa_disable_dma(chan, NULL); in isa_init_dma()
213 for (chan = 0; chan < 8; chan++) { in isa_init_dma()
214 int ret = isa_dma_add(chan, &isa_dma[chan]); in isa_init_dma()
217 chan, ret); in isa_init_dma()