Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: syssrc/sys/arch/i386/mca



Module Name:    syssrc
Committed By:   jdolecek
Date:           Fri Nov 23 22:24:36 UTC 2001

Modified Files:
        syssrc/sys/arch/i386/mca: mca_machdep.c

Log Message:
Properly glue in the MCA DMA controller support, using bus_dma
interface, using the code from dev/mca/edc_mca.c:edc_setup_dma()
as a base. Use ISA routines for dmamap/dmamem functions, primarily
to get the buffer bouncing for >16MB RAM machines.  The MCA DMA
channel is stored in unused upper 4 bits of ISA DMA cookie's
id_flags, hopefully that's not too disgusting :)
Export mca_dmamap_create(), which returns map suitable for further DMA
operations using MCA DMA controller.

mca_busprobe(): also report if machine has 32bit DMA (feature byte 2
bit 1)

Use symbolic names for DMA controller commands - I've finally got
info what they mean from Tymm Twillman's Linux include/asm/mca_dma.h.
No more magic constants! Also fix bug in the way DMA counter has been
setup - for 16bit DMA, it's necessary to tell the controller _half_
the byte count. This was wrong in the former code.


To generate a diff of this commit:
cvs rdiff -r1.10 -r1.11 syssrc/sys/arch/i386/mca/mca_machdep.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index