diff options
| author | glass <glass@NetBSD.org> | 1993-08-15 23:01:58 +0000 |
|---|---|---|
| committer | glass <glass@NetBSD.org> | 1993-08-15 23:01:58 +0000 |
| commit | 8ff8fa8046501b4988a07f02f42f2ffd76fa044e (patch) | |
| tree | 9bec9eb99be032e892b8c7d3e69a21e52fc504de /sys/arch/sun3/include | |
| parent | 3e94657cf6dba8425790230daaf8b6770823e2af (diff) | |
runs up to and including configure().
todo: exceptions, interrupt support, make isrs affect vector table
kernel/user stacks
Diffstat (limited to 'sys/arch/sun3/include')
| -rw-r--r-- | sys/arch/sun3/include/autoconf.h | 5 | ||||
| -rw-r--r-- | sys/arch/sun3/include/idprom.h | 8 | ||||
| -rw-r--r-- | sys/arch/sun3/include/isr.h | 6 | ||||
| -rw-r--r-- | sys/arch/sun3/include/obctl.h | 12 | ||||
| -rw-r--r-- | sys/arch/sun3/include/obio.h | 20 | ||||
| -rw-r--r-- | sys/arch/sun3/include/obmem.h | 9 | ||||
| -rw-r--r-- | sys/arch/sun3/include/vmparam.h | 5 | ||||
| -rw-r--r-- | sys/arch/sun3/include/vmparam3.h | 5 |
8 files changed, 62 insertions, 8 deletions
diff --git a/sys/arch/sun3/include/autoconf.h b/sys/arch/sun3/include/autoconf.h new file mode 100644 index 00000000000..6a05f015779 --- /dev/null +++ b/sys/arch/sun3/include/autoconf.h @@ -0,0 +1,5 @@ + +int always_match __P((struct device *, struct cfdata *, void *)); + +#define DEVICE_UNIT(device) (device->dv_unit) +#define CFDATA_LOC(cfdata) (cfdata->cf_loc) diff --git a/sys/arch/sun3/include/idprom.h b/sys/arch/sun3/include/idprom.h index cf1578a84c0..595da273b43 100644 --- a/sys/arch/sun3/include/idprom.h +++ b/sys/arch/sun3/include/idprom.h @@ -8,15 +8,15 @@ struct idprom { unsigned char idp_format; unsigned char idp_machtype; - unsigned char idp_etheraddr; + unsigned char idp_etheraddr[6]; long idp_date; unsigned char idp_serialnum[3]; unsigned char idp_checksum; - unsigned char ipd_reserved[16]; + unsigned char idp_reserved[16]; }; #define IDPROM_VERSION 1 #define IDPROM_SIZE (sizeof(struct idprom)) -int idprom_fetch __P((struct idprom *, int version)); - +int idprom_fetch __P((struct idprom *, int)); +void idprom_etheraddr __P((u_char *)); diff --git a/sys/arch/sun3/include/isr.h b/sys/arch/sun3/include/isr.h index 085ecb2ecd5..60f124cd6f3 100644 --- a/sys/arch/sun3/include/isr.h +++ b/sys/arch/sun3/include/isr.h @@ -42,5 +42,7 @@ struct isr { int isr_ipl; }; -#define NISR 3 -#define ISRIPL(x) ((x) - 3) +#define NISR 8 + +void isr_init __P((void)); +void isr_add __P((int, int (*handler)(), int )); diff --git a/sys/arch/sun3/include/obctl.h b/sys/arch/sun3/include/obctl.h new file mode 100644 index 00000000000..de9da66abdd --- /dev/null +++ b/sys/arch/sun3/include/obctl.h @@ -0,0 +1,12 @@ + +struct obctl_cf_loc { + int obctl_addr; + int obctl_size; +}; + +#define OBCTL_DEFAULT_PARAM(cast, arg, default) \ + (cast) (arg == -1 ? default : arg) + +#define OBCTL_LOC(device) (struct obctl_cf_loc *) device->dv_cfdata->cf_loc + + diff --git a/sys/arch/sun3/include/obio.h b/sys/arch/sun3/include/obio.h index eea575d230d..84d42087ede 100644 --- a/sys/arch/sun3/include/obio.h +++ b/sys/arch/sun3/include/obio.h @@ -39,6 +39,26 @@ #define OBIO_DES_SIZE 0x00004 #define OBIO_ECCREG_SIZE 0x00100 +/* flags to obio_alloc() */ +#define OBIO_CACHE 0x1 +#define OBIO_WRITE 0x2 + +struct obio_cf_loc { + int obio_addr; + int obio_level; +}; + +caddr_t obio_alloc __P((caddr_t, caddr_t, int)); +caddr_t obio_vm_alloc __P((int)); +void obio_print __P((caddr_t addr, int level)); +void obio_probe __P((caddr_t addr)); + + +#define OBIO_DEFAULT_PARAM(cast, arg, default) \ + (cast) (arg == -1 ? default : arg) + +#define OBIO_LOC(device) (struct obio_cf_loc *) device->dv_cfdata->cf_loc + #ifdef KERNEL extern char *interrupt_reg; diff --git a/sys/arch/sun3/include/obmem.h b/sys/arch/sun3/include/obmem.h new file mode 100644 index 00000000000..026e84bdba5 --- /dev/null +++ b/sys/arch/sun3/include/obmem.h @@ -0,0 +1,9 @@ +/* put something in here about framebuffers... */ + +struct obmem_cf_loc { + int obmem_cf_addr; + int obmem_cf_size; + int obmem_cf_level; +}; + + diff --git a/sys/arch/sun3/include/vmparam.h b/sys/arch/sun3/include/vmparam.h index c29d6715cd7..7fa2e065dfd 100644 --- a/sys/arch/sun3/include/vmparam.h +++ b/sys/arch/sun3/include/vmparam.h @@ -68,6 +68,9 @@ #define SAFERSS 4 /* nominal ``small'' resident set size protected against replacement */ +#define DVMA_SPACE_SIZE 0x00100000 +#define DVMA_SPACE_START 0x0FD00000 +#define DVMA_SPACE_END 0x0FE00000 /* mon start */ /* * Mach derived constants @@ -78,7 +81,7 @@ #define VM_MAXUSER_ADDRESS ((vm_offset_t)0x0E000000) #define VM_MAX_ADDRESS ((vm_offset_t)0xFFF00000) #define VM_MIN_KERNEL_ADDRESS ((vm_offset_t)0x0E004000) -#define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)0x0FE00000) /* mon start */ +#define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)0x0FD00000) /* mon start */ /* virtual sizes (bytes) for various kernel submaps */ #define VM_MBUF_SIZE (NMBCLUSTERS*MCLBYTES) diff --git a/sys/arch/sun3/include/vmparam3.h b/sys/arch/sun3/include/vmparam3.h index c29d6715cd7..7fa2e065dfd 100644 --- a/sys/arch/sun3/include/vmparam3.h +++ b/sys/arch/sun3/include/vmparam3.h @@ -68,6 +68,9 @@ #define SAFERSS 4 /* nominal ``small'' resident set size protected against replacement */ +#define DVMA_SPACE_SIZE 0x00100000 +#define DVMA_SPACE_START 0x0FD00000 +#define DVMA_SPACE_END 0x0FE00000 /* mon start */ /* * Mach derived constants @@ -78,7 +81,7 @@ #define VM_MAXUSER_ADDRESS ((vm_offset_t)0x0E000000) #define VM_MAX_ADDRESS ((vm_offset_t)0xFFF00000) #define VM_MIN_KERNEL_ADDRESS ((vm_offset_t)0x0E004000) -#define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)0x0FE00000) /* mon start */ +#define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)0x0FD00000) /* mon start */ /* virtual sizes (bytes) for various kernel submaps */ #define VM_MBUF_SIZE (NMBCLUSTERS*MCLBYTES) |
