summaryrefslogtreecommitdiff
path: root/sys/arch/alpha/pci/cia_bwx_bus_io.c
diff options
context:
space:
mode:
authorArtur Grabowski <art@cvs.openbsd.org>2000-11-08 16:01:27 +0000
committerArtur Grabowski <art@cvs.openbsd.org>2000-11-08 16:01:27 +0000
commitfd438f5ca0b94ed3d88d133b522e0103dee486b8 (patch)
tree6d0a5d2c22adef30dd9a9bb3ce9d92ff9ebc024a /sys/arch/alpha/pci/cia_bwx_bus_io.c
parent979a51167c72e38f0c094528a264a7fccca6d1c5 (diff)
Merge in big portions of the improvements NetBSD did to their alpha port.
Highlights: UVM, PMAP_NEW, bus_dma (only on some buses for now), new hardware support, possiblity for ELF, etc, etc. Too much to mention. This is still work in progress. video consoles might be broken, otherwise we have basically the same functionality as before plus more.
Diffstat (limited to 'sys/arch/alpha/pci/cia_bwx_bus_io.c')
-rw-r--r--sys/arch/alpha/pci/cia_bwx_bus_io.c57
1 files changed, 57 insertions, 0 deletions
diff --git a/sys/arch/alpha/pci/cia_bwx_bus_io.c b/sys/arch/alpha/pci/cia_bwx_bus_io.c
new file mode 100644
index 00000000000..b159c8f5982
--- /dev/null
+++ b/sys/arch/alpha/pci/cia_bwx_bus_io.c
@@ -0,0 +1,57 @@
+/* $NetBSD: cia_bwx_bus_io.c,v 1.3 2000/06/29 08:58:46 mrg Exp $ */
+
+/*
+ * Copyright (c) 1996 Carnegie-Mellon University.
+ * All rights reserved.
+ *
+ * Author: Chris G. Demetriou
+ *
+ * Permission to use, copy, modify and distribute this software and
+ * its documentation is hereby granted, provided that both the copyright
+ * notice and this permission notice appear in all copies of the
+ * software, derivative works or modified versions, and any portions
+ * thereof, and that both notices appear in supporting documentation.
+ *
+ * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
+ * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
+ * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
+ *
+ * Carnegie Mellon requests users of this software to return to
+ *
+ * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
+ * School of Computer Science
+ * Carnegie Mellon University
+ * Pittsburgh PA 15213-3890
+ *
+ * any improvements or extensions that they make and grant Carnegie the
+ * rights to redistribute these changes.
+ */
+
+#include <sys/param.h>
+#include <sys/systm.h>
+#include <sys/malloc.h>
+#include <sys/syslog.h>
+#include <sys/device.h>
+
+#include <vm/vm.h>
+#include <uvm/uvm_extern.h>
+
+#include <machine/bus.h>
+
+#include <alpha/pci/ciareg.h>
+#include <alpha/pci/ciavar.h>
+
+#define CHIP cia_bwx
+
+#define CHIP_EX_MALLOC_SAFE(v) (((struct cia_config *)(v))->cc_mallocsafe)
+#define CHIP_IO_EXTENT(v) (((struct cia_config *)(v))->cc_io_ex)
+
+#define CHIP_IO_SYS_START(v) CIA_EV56_BWIO
+
+/*
+ * CIA core logic with BWX enabled appears on EV56 and PCA56. We
+ * require at least EV56 support for the assembler to emit BWX opcodes.
+ */
+__asm(".arch ev56");
+
+#include <alpha/pci/pci_bwx_bus_io_chipdep.c>