summaryrefslogtreecommitdiff
path: root/sys/arch/sun3/include
diff options
context:
space:
mode:
authorglass <glass@NetBSD.org>1993-08-15 23:01:58 +0000
committerglass <glass@NetBSD.org>1993-08-15 23:01:58 +0000
commit8ff8fa8046501b4988a07f02f42f2ffd76fa044e (patch)
tree9bec9eb99be032e892b8c7d3e69a21e52fc504de /sys/arch/sun3/include
parent3e94657cf6dba8425790230daaf8b6770823e2af (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.h5
-rw-r--r--sys/arch/sun3/include/idprom.h8
-rw-r--r--sys/arch/sun3/include/isr.h6
-rw-r--r--sys/arch/sun3/include/obctl.h12
-rw-r--r--sys/arch/sun3/include/obio.h20
-rw-r--r--sys/arch/sun3/include/obmem.h9
-rw-r--r--sys/arch/sun3/include/vmparam.h5
-rw-r--r--sys/arch/sun3/include/vmparam3.h5
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)