| Viewing file:  mvme16xhw.h (2.51 KB)      -rw-r--r-- Select action/file-type:
 
  (+) |  (+) |  (+) | Code (+) | Session (+) |  (+) | SDB (+) |  (+) |  (+) |  (+) |  (+) |  (+) | 
 
#ifndef _M68K_MVME16xHW_H_#define _M68K_MVME16xHW_H_
 
 #include <asm/irq.h>
 
 /* Board ID data structure - pointer to this retrieved from Bug by head.S */
 
 /* Note, bytes 12 and 13 are board no in BCD (0162,0166,0167,0177,etc) */
 
 extern long mvme_bdid_ptr;
 
 typedef struct {
 char    bdid[4];
 u_char    rev, mth, day, yr;
 u_short    size, reserved;
 u_short    brdno;
 char brdsuffix[2];
 u_long    options;
 u_short    clun, dlun, ctype, dnum;
 u_long    option2;
 } t_bdid, *p_bdid;
 
 
 typedef struct {
 u_char    ack_icr,
 flt_icr,
 sel_icr,
 pe_icr,
 bsy_icr,
 spare1,
 isr,
 cr,
 spare2,
 spare3,
 spare4,
 data;
 } MVMElp, *MVMElpPtr;
 
 #define MVME_LPR_BASE    0xfff42030
 
 #define mvmelp   ((*(volatile MVMElpPtr)(MVME_LPR_BASE)))
 
 typedef struct {
 unsigned char
 ctrl,
 bcd_sec,
 bcd_min,
 bcd_hr,
 bcd_dow,
 bcd_dom,
 bcd_mth,
 bcd_year;
 } MK48T08_t, *MK48T08ptr_t;
 
 #define RTC_WRITE    0x80
 #define RTC_READ    0x40
 #define RTC_STOP    0x20
 
 #define MVME_RTC_BASE    0xfffc1ff8
 
 #define MVME_I596_BASE    0xfff46000
 
 #define MVME_SCC_A_ADDR    0xfff45005
 #define MVME_SCC_B_ADDR    0xfff45001
 #define MVME_SCC_PCLK    10000000
 
 #define MVME162_IRQ_TYPE_PRIO    0
 
 #define MVME167_IRQ_PRN        (IRQ_USER+20)
 #define MVME16x_IRQ_I596    (IRQ_USER+23)
 #define MVME16x_IRQ_SCSI    (IRQ_USER+21)
 #define MVME16x_IRQ_FLY        (IRQ_USER+63)
 #define MVME167_IRQ_SER_ERR    (IRQ_USER+28)
 #define MVME167_IRQ_SER_MODEM    (IRQ_USER+29)
 #define MVME167_IRQ_SER_TX    (IRQ_USER+30)
 #define MVME167_IRQ_SER_RX    (IRQ_USER+31)
 #define MVME16x_IRQ_TIMER    (IRQ_USER+25)
 #define MVME167_IRQ_ABORT    (IRQ_USER+46)
 #define MVME162_IRQ_ABORT    (IRQ_USER+30)
 
 /* SCC interrupts, for MVME162 */
 #define MVME162_IRQ_SCC_BASE        (IRQ_USER+0)
 #define MVME162_IRQ_SCCB_TX        (IRQ_USER+0)
 #define MVME162_IRQ_SCCB_STAT        (IRQ_USER+2)
 #define MVME162_IRQ_SCCB_RX        (IRQ_USER+4)
 #define MVME162_IRQ_SCCB_SPCOND        (IRQ_USER+6)
 #define MVME162_IRQ_SCCA_TX        (IRQ_USER+8)
 #define MVME162_IRQ_SCCA_STAT        (IRQ_USER+10)
 #define MVME162_IRQ_SCCA_RX        (IRQ_USER+12)
 #define MVME162_IRQ_SCCA_SPCOND        (IRQ_USER+14)
 
 /* MVME162 version register */
 
 #define MVME162_VERSION_REG    0xfff4202e
 
 extern unsigned short mvme16x_config;
 
 /* Lower 8 bits must match the revision register in the MC2 chip */
 
 #define MVME16x_CONFIG_SPEED_32        0x0001
 #define MVME16x_CONFIG_NO_VMECHIP2    0x0002
 #define MVME16x_CONFIG_NO_SCSICHIP    0x0004
 #define MVME16x_CONFIG_NO_ETHERNET    0x0008
 #define MVME16x_CONFIG_GOT_FPU        0x0010
 
 #define MVME16x_CONFIG_GOT_LP        0x0100
 #define MVME16x_CONFIG_GOT_CD2401    0x0200
 #define MVME16x_CONFIG_GOT_SCCA        0x0400
 #define MVME16x_CONFIG_GOT_SCCB        0x0800
 
 #endif
 
 |