summaryrefslogtreecommitdiff
path: root/sys/arch/alpha/pci/tsp_bus_mem.c
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2003-09-02 17:25:22 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2003-09-02 17:25:22 +0000
commit7592107d280aebe0829159bdff0c28d07a15ad5c (patch)
treebe3858eb98d5551c88fa98da2beb45255bad0331 /sys/arch/alpha/pci/tsp_bus_mem.c
parent502ab6598a0aceb78d7a33559ce85c2c4ef131c0 (diff)
Our extent implementation relies on the fact that extents all have distinct
names. However, the tsp code uses one global extent, which both device instances want to reinitialize and use for themselves (whether this is a genuine bug or not is left to the reader). Solve the problem by putting the extents into the tsp softc, and change the pci_bwx_bus code to handle variable extent names. This makes DS20 systems with tsp0 and tsp1 work again. ok deraadt@
Diffstat (limited to 'sys/arch/alpha/pci/tsp_bus_mem.c')
-rw-r--r--sys/arch/alpha/pci/tsp_bus_mem.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/arch/alpha/pci/tsp_bus_mem.c b/sys/arch/alpha/pci/tsp_bus_mem.c
index 3ced801484b..97017b5b0fb 100644
--- a/sys/arch/alpha/pci/tsp_bus_mem.c
+++ b/sys/arch/alpha/pci/tsp_bus_mem.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tsp_bus_mem.c,v 1.3 2001/11/06 19:53:13 miod Exp $ */
+/* $OpenBSD: tsp_bus_mem.c,v 1.4 2003/09/02 17:25:21 miod Exp $ */
/* $NetBSD: tsp_bus_mem.c,v 1.4 2000/06/26 19:46:25 thorpej Exp $ */
/*-
@@ -62,6 +62,9 @@
*/
__asm(".arch ev6");
+#define CHIP_EXTENT_NAME(v) ((struct tsp_config *)(v))->pc_mem_ex_name
+#define CHIP_EXTENT_STORAGE(v) ((struct tsp_config *)(v))->pc_mem_ex_storage
+
#include <alpha/pci/pci_bwx_bus_mem_chipdep.c>
void