···11-/*22-** -----------------------------------------------------------------------------33-**44-** Perle Specialix driver for Linux55-** Ported from existing RIO Driver for SCO sources.66-77- *88- * (C) 1990 - 2000 Specialix International Ltd., Byfleet, Surrey, UK.99- *1010- * This program is free software; you can redistribute it and/or modify1111- * it under the terms of the GNU General Public License as published by1212- * the Free Software Foundation; either version 2 of the License, or1313- * (at your option) any later version.1414- *1515- * This program is distributed in the hope that it will be useful,1616- * but WITHOUT ANY WARRANTY; without even the implied warranty of1717- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the1818- * GNU General Public License for more details.1919- *2020- * You should have received a copy of the GNU General Public License2121- * along with this program; if not, write to the Free Software2222- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.2323-**2424-** Module : eisa.h2525-** SID : 1.22626-** Last Modified : 11/6/98 11:34:102727-** Retrieved : 11/6/98 11:34:212828-**2929-** ident @(#)eisa.h 1.23030-**3131-** -----------------------------------------------------------------------------3232-*/3333-3434-#ifndef __rio_eisa_h__3535-#define __rio_eisa_h__3636-3737-#ifdef SCCS_LABELS3838-#ifndef lint3939-static char *_eisa_h_sccs_ = "@(#)eisa.h 1.2";4040-#endif4141-#endif4242-4343-/*4444-** things to do with the EISA bus4545-*/4646-4747-#define RIO_EISA_STRING_ADDRESS 0xfffd9 /* where EISA is stored */4848-4949-#define RIO_MAX_EISA_SLOTS 16 /* how many EISA slots? */5050-5151-#define RIO_EISA_IDENT 0x984D /* Specialix */5252-#define RIO_EISA_PRODUCT_CODE 0x14 /* Code 14 */5353-#define RIO_EISA_ENABLE_BIT 0x01 /* To enable card */5454-5555-#define EISA_MEMORY_BASE_LO 0xC00 /* A16-A23 */5656-#define EISA_MEMORY_BASE_HI 0xC01 /* A24-A31 */5757-#define EISA_INTERRUPT_VEC 0xC02 /* see below */5858-#define EISA_CONTROL_PORT 0xC02 /* see below */5959-#define EISA_INTERRUPT_RESET 0xC03 /* read to clear IRQ */6060-6161-#define EISA_PRODUCT_IDENT_LO 0xC80 /* where RIO_EISA_IDENT is */6262-#define EISA_PRODUCT_IDENT_HI 0xC816363-#define EISA_PRODUCT_NUMBER 0xC82 /* where PROD_CODE is */6464-#define EISA_REVISION_NUMBER 0xC83 /* revision (1dp) */6565-#define EISA_ENABLE 0xC84 /* set LSB to enable card */6666-#define EISA_UNIQUE_NUM_0 0xC88 /* vomit */6767-#define EISA_UNIQUE_NUM_1 0xC8A6868-#define EISA_UNIQUE_NUM_2 0xC90 /* bit strangely arranged */6969-#define EISA_UNIQUE_NUM_3 0xC927070-#define EISA_MANUF_YEAR 0xC98 /* when */7171-#define EISA_MANUF_WEEK 0xC9A /* more when */7272-7373-#define EISA_TP_BOOT_FROM_RAM 0x017474-#define EISA_TP_BOOT_FROM_LINK 0x007575-#define EISA_TP_FAST_LINKS 0x027676-#define EISA_TP_SLOW_LINKS 0x007777-#define EISA_TP_BUS_ENABLE 0x047878-#define EISA_TP_BUS_DISABLE 0x007979-#define EISA_TP_RUN 0x088080-#define EISA_TP_RESET 0x008181-#define EISA_POLLED 0x008282-#define EISA_IRQ_3 0x308383-#define EISA_IRQ_4 0x408484-#define EISA_IRQ_5 0x508585-#define EISA_IRQ_6 0x608686-#define EISA_IRQ_7 0x708787-#define EISA_IRQ_9 0x908888-#define EISA_IRQ_10 0xA08989-#define EISA_IRQ_11 0xB09090-#define EISA_IRQ_12 0xC09191-#define EISA_IRQ_14 0xE09292-#define EISA_IRQ_15 0xF09393-9494-#define EISA_INTERRUPT_MASK 0xF09595-#define EISA_CONTROL_MASK 0x0F9696-9797-#define RIO_EISA_DEFAULT_MODE EISA_TP_SLOW_LINKS9898-9999-#define RIOEisaToIvec(X) (uchar )((uchar)((X) & EISA_INTERRUPT_MASK)>>4)100100-101101-#define INBZ(z,x) inb(((z)<<12) | (x))102102-#define OUTBZ(z,x,y) outb((((z)<<12) | (x)), y)103103-104104-#endif /* __rio_eisa_h__ */