NetBSD/sys/arch/mips/alchemy/dev/com_aubus_reg.h
gdamore 34537908ab Add an option COM_REGMAP to allow com(4) to use an array of register indices.
This allows us to convert aucom to just another com attachment, and cleanup
some code in the com_arbus.c.

Additionally, we use a common com_cleanup routine rather than having a
zillion copies of it in the attachment points.

This has been tested on a number architectures, and it has been shown to get
close to comparable performance when COM_REGMAP is defined, and comparable
when it is not defined.

Approved by core@.  Fixes PR port-evbmips/32362.
2006-07-13 22:56:00 +00:00

28 lines
996 B
C

/* $NetBSD: com_aubus_reg.h,v 1.2 2006/07/13 22:56:01 gdamore Exp $ */
/* copyright */
#undef COM_FREQ /* relative to CPU clock speed on Au1X00 */
/*
* Alchemy Semi Au1X00 UART registers
*/
#define AUCOM_RXDATA 0x00 /* receive data register (R) */
#define AUCOM_TXDATA 0x04 /* transmit data register (W) */
#define AUCOM_IER 0x08 /* interrupt enable (R/W) */
#define AUCOM_IIR 0x0c /* interrupt identification (R) */
#define AUCOM_FIFO 0x10 /* FIFO control (R/W) */
#define AUCOM_LCTL 0x14 /* line control register (R/W) */
#define AUCOM_CFCR 0x14 /* line control register (R/W) */
#define AUCOM_MCR 0x18 /* modem control register (R/W) */
#define AUCOM_LSR 0x1c /* line status register (R) */
#define AUCOM_MSR 0x20 /* modem status register (R) */
#define AUCOM_DLB 0x28 /* divisor latch (16bit) (R/W) */
#define AUCOM_MODCTL 0x100 /* module control register (R/W) */
#define UMC_CE 0x2 /* module clock enable */
#define UMC_ME 0x1 /* module enable */
#define AUCOM_NPORTS 0x104