summaryrefslogtreecommitdiff
path: root/sys/arch/arc/isa
diff options
context:
space:
mode:
authorPer Fogelstrom <pefo@cvs.openbsd.org>1997-03-12 19:17:04 +0000
committerPer Fogelstrom <pefo@cvs.openbsd.org>1997-03-12 19:17:04 +0000
commit63e70c1bce393b8e92002c93029eeb1a67f80fcc (patch)
tree1ffb854bd1045ee6f0999913b74a788a879368bc /sys/arch/arc/isa
parentfd5a4621c16957714dbc7335eb5afa6b0f28b29e (diff)
Addition of support for a PCI based Vr4300 board from Algorithmics, the P-4032.
Changes to io macros were done to handle sparse bus addressing dynamically. This is a first cut (rough).
Diffstat (limited to 'sys/arch/arc/isa')
-rw-r--r--sys/arch/arc/isa/isa_machdep.h9
-rw-r--r--sys/arch/arc/isa/isabus.c10
2 files changed, 8 insertions, 11 deletions
diff --git a/sys/arch/arc/isa/isa_machdep.h b/sys/arch/arc/isa/isa_machdep.h
index 060f511356a..d714d2e94e5 100644
--- a/sys/arch/arc/isa/isa_machdep.h
+++ b/sys/arch/arc/isa/isa_machdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: isa_machdep.h,v 1.2 1996/09/14 15:58:26 pefo Exp $ */
+/* $OpenBSD: isa_machdep.h,v 1.3 1997/03/12 19:16:58 pefo Exp $ */
/*
* Copyright (c) 1996 Per Fogelstrom
@@ -40,12 +40,9 @@ typedef struct arc_isa_bus *isa_chipset_tag_t;
* However, the cpu executes an instruction every 7.5ns
* so the bus is much slower so it doesn't matter, really.
*/
-#define isa_outb(x,y) outb(isa_io_base + (x), y)
-#define isa_inb(x) inb(isa_io_base + (x))
+#define isa_outb(x,y) outb(arc_bus.isa_io_base + (x), y)
+#define isa_inb(x) inb(arc_bus.isa_io_base + (x))
-extern int isa_io_base; /* Base address for ISA I/O space */
-extern int isa_mem_base; /* Base address for ISA MEM space */
-
struct arc_isa_bus {
void *ic_data;
diff --git a/sys/arch/arc/isa/isabus.c b/sys/arch/arc/isa/isabus.c
index 2d21710a5ae..ab8d79944be 100644
--- a/sys/arch/arc/isa/isabus.c
+++ b/sys/arch/arc/isa/isabus.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: isabus.c,v 1.7 1996/11/28 23:35:44 niklas Exp $ */
+/* $OpenBSD: isabus.c,v 1.8 1997/03/12 19:16:59 pefo Exp $ */
/* $NetBSD: isa.c,v 1.33 1995/06/28 04:30:51 cgd Exp $ */
/*-
@@ -193,8 +193,8 @@ isabrattach(parent, self, aux)
sc->arc_isa_cs.ic_intr_disestablish = isabr_intr_disestablish;
iba.iba_busname = "isa";
- iba.iba_iot = (bus_space_tag_t)isa_io_base;
- iba.iba_memt = (bus_space_tag_t)isa_mem_base;
+ iba.iba_iot = (bus_space_tag_t)&arc_bus;
+ iba.iba_memt = (bus_space_tag_t)&arc_bus;
iba.iba_ic = &sc->arc_isa_cs;
config_found(self, &iba, isabrprint);
}
@@ -208,8 +208,8 @@ isabrprint(aux, pnp)
if (pnp)
printf("%s at %s", ca->ca_name, pnp);
- printf(" isa_io_base 0x%lx isa_mem_base 0x%lx", isa_io_base,
- isa_mem_base);
+ printf(" isa_io_base 0x%lx isa_mem_base 0x%lx",
+ arc_bus.isa_io_base, arc_bus.isa_mem_base);
return (UNCONF);
}