1993-06-12 14:58:17 +00:00
|
|
|
/*
|
|
|
|
* Intel 8237 DMA Controller
|
1993-10-16 13:48:52 +00:00
|
|
|
*
|
1999-08-28 01:08:13 +00:00
|
|
|
* $FreeBSD$
|
1993-06-12 14:58:17 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#define DMA37MD_SINGLE 0x40 /* single pass mode */
|
|
|
|
#define DMA37MD_CASCADE 0xc0 /* cascade mode */
|
1994-11-01 17:26:50 +00:00
|
|
|
#define DMA37MD_AUTO 0x50 /* autoinitialise single pass mode */
|
1993-06-12 14:58:17 +00:00
|
|
|
#define DMA37MD_WRITE 0x04 /* read the device, write memory operation */
|
|
|
|
#define DMA37MD_READ 0x08 /* write the device, read memory operation */
|
1995-05-30 08:16:23 +00:00
|
|
|
|
2005-02-06 13:46:39 +00:00
|
|
|
#ifndef PC98
|
|
|
|
/*
|
|
|
|
** Register definitions for DMA controller 1 (channels 0..3):
|
|
|
|
*/
|
|
|
|
#define DMA1_CHN(c) (IO_DMA1 + 1*(2*(c))) /* addr reg for channel c */
|
|
|
|
#define DMA1_STATUS (IO_DMA1 + 1*8) /* status register */
|
|
|
|
#define DMA1_SMSK (IO_DMA1 + 1*10) /* single mask register */
|
|
|
|
#define DMA1_MODE (IO_DMA1 + 1*11) /* mode register */
|
|
|
|
#define DMA1_FFC (IO_DMA1 + 1*12) /* clear first/last FF */
|
|
|
|
#define DMA1_RESET (IO_DMA1 + 1*13) /* reset */
|
|
|
|
|
|
|
|
/*
|
|
|
|
** Register definitions for DMA controller 2 (channels 4..7):
|
|
|
|
*/
|
|
|
|
#define DMA2_CHN(c) (IO_DMA2 + 2*(2*(c))) /* addr reg for channel c */
|
|
|
|
#define DMA2_STATUS (IO_DMA2 + 2*8) /* status register */
|
|
|
|
#define DMA2_SMSK (IO_DMA2 + 2*10) /* single mask register */
|
|
|
|
#define DMA2_MODE (IO_DMA2 + 2*11) /* mode register */
|
|
|
|
#define DMA2_FFC (IO_DMA2 + 2*12) /* clear first/last FF */
|
|
|
|
#define DMA2_RESET (IO_DMA2 + 2*13) /* reset */
|
|
|
|
#endif
|
|
|
|
|