/*
* Copyright (c) 1996 BBN Corporation.
* BBN Systems and Technologies Division
* 10 Moulton Street
* Cambridge, Ma. 02138
* 617-873-3000
*
* Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice and this permission appear in all copies and in
* supporting documentation, and that the name of BBN Corporation not be used
* in advertising or publicity pertaining to distribution of the software
* without specific, written prior permission. BBN makes no representations
* about the suitability of this software for any purposes. It is provided
* "AS IS" without express or implied warranties.
*/
/*
* Intel 82378 System I/O (SIO) Chip
*
* Taken from the Intel "Peripheral Components" manual, 1995 Edition.
*/
/*
* ISA Address Decoder Registers
*/
#define SIO_PCIREG_IADCON 0x48 /* ISA Address Decoder Control */
#define SIO_PCIREG_IADRBE 0x49 /* ISA Addr. Decoder ROM Block Enable */
#define SIO_PCIREG_IADBOH 0x4A /* ISA Addr. Decoder Bottom of Hole */
#define SIO_PCIREG_IADTOH 0x4B /* ISA Addr. Decoder Top of Hole */
/*
* Clocks and Timers
*/
#define SIO_PCIREG_ICRT 0x4C /* ISA Controller Recovery Timer */
#define SIO_PCIREG_ICD 0x4D /* ISA Clock Divisor */
#define SIO_PCIREG_ 0x80 /* BIOS Timer Base Address */
/*
* Miscellaneous
*/
#define SIO_PCIREG_UBCSA 0x4E /* Utility Bus Chip Select A */
#define SIO_PCIREG_UBCSB 0x4F /* Utility Bus Chip Select B */
/*
* PIRQ# Route Control
*/
#define SIO_PCIREG_PIRQ0 0x60 /* PIRQ0 Route Control */
#define SIO_PCIREG_PIRQ1 0x61 /* PIRQ1 Route Control */
#define SIO_PCIREG_PIRQ2 0x62 /* PIRQ2 Route Control */
#define SIO_PCIREG_PIRQ3 0x63 /* PIRQ3 Route Control */
#define SIO_PCIREG_PIRQ_RTCTRL SIO_PCIREG_PIRQ0
/* extract the PIRQx field from 32-bit reg */
#define PIRQ_RTCTRL_PIRQx(r, p) (((r) >> ((p) * 8)) & 0xff)
/* bits within each PIRQx field */
#define PIRQ_RTCTRL_NOT_ROUTED __BIT(7) /* 0 == interrupt routed */
#define PIRQ_RTCTRL_IRQ __BITS(0,3) /* PIRQ routed to this ISA IRQ */
/*
* System Management Interrupt (SMI)
*/
#define SIO_PCIREG_SMICNTL 0xA0 /* SMI Control */
#define SIO_PCIREG_SMIEN 0xA2 /* SMI Enable */
#define SIO_PCIREG_SEE 0xA4 /* System Event Enable */
#define SIO_PCIREG_FTMR 0xA8 /* Fast Off Timer */
#define SIO_PCIREG_SMIREQ 0xAA /* SMI Request */
/*
* Non-Configuration Registers
*/
/*
* Control
*/
#define SIO_REG_RSTUB 0x060 /* Reset UBus */
#define SIO_REG_NMICTRL 0x061 /* NMI Status and Control */
#define SIO_REG_CMOSRAM 0x070 /* CMOS RAM Address and NMI Mask */
#define SIO_REG_NMIMASK 0x070 /* CMOS RAM Address and NMI Mask */
#define SIO_REG_PORT92 0x092 /* Port 92 */
#define SIO_REG_CPERR 0x0F0 /* Coprocessor Error */