| Viewing file:  bvme6000hw.h (3.41 KB)      -rw-r--r-- Select action/file-type:
 
  (+) |  (+) |  (+) | Code (+) | Session (+) |  (+) | SDB (+) |  (+) |  (+) |  (+) |  (+) |  (+) | 
 
#ifndef _M68K_BVME6000HW_H_#define _M68K_BVME6000HW_H_
 
 #include <asm/irq.h>
 
 /*
 * PIT structure
 */
 
 #define BVME_PIT_BASE    0xffa00000
 
 typedef struct {
 unsigned char
 pad_a[3], pgcr,
 pad_b[3], psrr,
 pad_c[3], paddr,
 pad_d[3], pbddr,
 pad_e[3], pcddr,
 pad_f[3], pivr,
 pad_g[3], pacr,
 pad_h[3], pbcr,
 pad_i[3], padr,
 pad_j[3], pbdr,
 pad_k[3], paar,
 pad_l[3], pbar,
 pad_m[3], pcdr,
 pad_n[3], psr,
 pad_o[3], res1,
 pad_p[3], res2,
 pad_q[3], tcr,
 pad_r[3], tivr,
 pad_s[3], res3,
 pad_t[3], cprh,
 pad_u[3], cprm,
 pad_v[3], cprl,
 pad_w[3], res4,
 pad_x[3], crh,
 pad_y[3], crm,
 pad_z[3], crl,
 pad_A[3], tsr,
 pad_B[3], res5;
 } PitRegs_t, *PitRegsPtr;
 
 #define bvmepit   ((*(volatile PitRegsPtr)(BVME_PIT_BASE)))
 
 #define BVME_RTC_BASE    0xff900000
 
 typedef struct {
 unsigned char
 pad_a[3], msr,
 pad_b[3], t0cr_rtmr,
 pad_c[3], t1cr_omr,
 pad_d[3], pfr_icr0,
 pad_e[3], irr_icr1,
 pad_f[3], bcd_tenms,
 pad_g[3], bcd_sec,
 pad_h[3], bcd_min,
 pad_i[3], bcd_hr,
 pad_j[3], bcd_dom,
 pad_k[3], bcd_mth,
 pad_l[3], bcd_year,
 pad_m[3], bcd_ujcc,
 pad_n[3], bcd_hjcc,
 pad_o[3], bcd_dow,
 pad_p[3], t0lsb,
 pad_q[3], t0msb,
 pad_r[3], t1lsb,
 pad_s[3], t1msb,
 pad_t[3], cmp_sec,
 pad_u[3], cmp_min,
 pad_v[3], cmp_hr,
 pad_w[3], cmp_dom,
 pad_x[3], cmp_mth,
 pad_y[3], cmp_dow,
 pad_z[3], sav_sec,
 pad_A[3], sav_min,
 pad_B[3], sav_hr,
 pad_C[3], sav_dom,
 pad_D[3], sav_mth,
 pad_E[3], ram,
 pad_F[3], test;
 } RtcRegs_t, *RtcPtr_t;
 
 
 #define BVME_I596_BASE    0xff100000
 
 #define BVME_ETHIRQ_REG    0xff20000b
 
 #define BVME_LOCAL_IRQ_STAT  0xff20000f
 
 #define BVME_ETHERR          0x02
 #define BVME_ABORT_STATUS    0x08
 
 #define BVME_NCR53C710_BASE    0xff000000
 
 #define BVME_SCC_A_ADDR    0xffb0000b
 #define BVME_SCC_B_ADDR    0xffb00003
 #define BVME_SCC_RTxC    7372800
 
 #define BVME_CONFIG_REG    0xff500003
 
 #define config_reg_ptr    (volatile unsigned char *)BVME_CONFIG_REG
 
 #define BVME_CONFIG_SW1    0x08
 #define BVME_CONFIG_SW2    0x04
 #define BVME_CONFIG_SW3    0x02
 #define BVME_CONFIG_SW4    0x01
 
 
 #define BVME_IRQ_TYPE_PRIO    0
 
 #define BVME_IRQ_PRN        (IRQ_USER+20)
 #define BVME_IRQ_TIMER        (IRQ_USER+25)
 #define BVME_IRQ_I596        IRQ_AUTO_2
 #define BVME_IRQ_SCSI        IRQ_AUTO_3
 #define BVME_IRQ_RTC        IRQ_AUTO_6
 #define BVME_IRQ_ABORT        IRQ_AUTO_7
 
 /* SCC interrupts */
 #define BVME_IRQ_SCC_BASE        IRQ_USER
 #define BVME_IRQ_SCCB_TX        IRQ_USER
 #define BVME_IRQ_SCCB_STAT        (IRQ_USER+2)
 #define BVME_IRQ_SCCB_RX        (IRQ_USER+4)
 #define BVME_IRQ_SCCB_SPCOND        (IRQ_USER+6)
 #define BVME_IRQ_SCCA_TX        (IRQ_USER+8)
 #define BVME_IRQ_SCCA_STAT        (IRQ_USER+10)
 #define BVME_IRQ_SCCA_RX        (IRQ_USER+12)
 #define BVME_IRQ_SCCA_SPCOND        (IRQ_USER+14)
 
 /* Address control registers */
 
 #define BVME_ACR_A32VBA        0xff400003
 #define BVME_ACR_A32MSK        0xff410003
 #define BVME_ACR_A24VBA        0xff420003
 #define BVME_ACR_A24MSK        0xff430003
 #define BVME_ACR_A16VBA        0xff440003
 #define BVME_ACR_A32LBA        0xff450003
 #define BVME_ACR_A24LBA        0xff460003
 #define BVME_ACR_ADDRCTL    0xff470003
 
 #define bvme_acr_a32vba        *(volatile unsigned char *)BVME_ACR_A32VBA
 #define bvme_acr_a32msk        *(volatile unsigned char *)BVME_ACR_A32MSK
 #define bvme_acr_a24vba        *(volatile unsigned char *)BVME_ACR_A24VBA
 #define bvme_acr_a24msk        *(volatile unsigned char *)BVME_ACR_A24MSK
 #define bvme_acr_a16vba        *(volatile unsigned char *)BVME_ACR_A16VBA
 #define bvme_acr_a32lba        *(volatile unsigned char *)BVME_ACR_A32LBA
 #define bvme_acr_a24lba        *(volatile unsigned char *)BVME_ACR_A24LBA
 #define bvme_acr_addrctl    *(volatile unsigned char *)BVME_ACR_ADDRCTL
 
 #endif
 
 |