1 /* $NetBSD: secreg.h,v 1.1 2006/10/01 12:39:35 bjh21 Exp $ */
2 
3 /*
4  * Ben Harris 2006
5  *
6  * This file is in the public domain.
7  */
8 
9 /*
10  * Register definitions for Acorn SCSI expansion cards (AKA30, AKA31, AKA32)
11  */
12 
13 /*
14  * Offsets are in bus_space units (words)
15  */
16 
17 /* Podule "fast" space */
18 #define SEC_ROM               0x000
19 #define SEC_ISR               0x800 /* Interrupt status (read-only) */
20 #define SEC_ISR_SBIC          0x08  /* Interrupt from WD33C93A SBIC */
21 #define SEC_ISR_DMAC          0x02  /* TC uPD71071 DMAC */
22 #define SEC_ISR_IRQ 0x01  /* OR of the above */
23 #define SEC_CLRINT  0x800 /* Clear TC interrupt (write-only) */
24 #define SEC_MPR               0xc00 /* Memory page register */
25 #define SEC_MPR_UR  0x80  /* User reset */
26 #define SEC_MPR_IE  0x40  /* Interrupts enabled */
27 #define SEC_MPR_PAGE          0x3f  /* EPROM/SRAM page address */
28 
29 /* Module space */
30 #define SEC_SRAM    0x000
31 #define SEC_SBIC    0x800
32 #define SEC_DMAC    0xc00
33 
34 /* The address lines of the DMAC are permuted. */
35 #define DMAC(addr) ((addr) >> 1 | ((addr) & 1) << 7)
36 
37 #define SEC_CLKFREQ 80        /* Clock speed in 100 kHz */
38 #define SEC_NPAGES  16
39 #define SEC_PAGESIZE          4096
40 #define SEC_MEMSIZE (SEC_PAGESIZE * SEC_NPAGES)
41