summaryrefslogtreecommitdiff
path: root/sys/arch/sgi/localbus/macebus.c
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2009-10-21 20:48:46 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2009-10-21 20:48:46 +0000
commite3f51f5ddcd2959467b82cf208763001bcc3ba3e (patch)
tree8461bd439da9d9128736911f9d77d4bd3b98859c /sys/arch/sgi/localbus/macebus.c
parent259d40fe56ca062d8399856d724d7615a856c409 (diff)
Replace IP32 hw_setintrmask() .S routine with a two line C routine.
Diffstat (limited to 'sys/arch/sgi/localbus/macebus.c')
-rw-r--r--sys/arch/sgi/localbus/macebus.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/sys/arch/sgi/localbus/macebus.c b/sys/arch/sgi/localbus/macebus.c
index 7dfd03ff74c..a293d046dc9 100644
--- a/sys/arch/sgi/localbus/macebus.c
+++ b/sys/arch/sgi/localbus/macebus.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: macebus.c,v 1.44 2009/10/07 08:35:47 syuu Exp $ */
+/* $OpenBSD: macebus.c,v 1.45 2009/10/21 20:48:45 miod Exp $ */
/*
* Copyright (c) 2000-2004 Opsycon AB (www.opsycon.se)
@@ -221,8 +221,6 @@ macebusattach(struct device *parent, struct device *self, void *aux)
printf(": can't map CRIME control registers\n");
return;
}
- hwmask_addr = (void *)
- (PHYS_TO_XKPHYS(CRIMEBUS_BASE, CCA_NC) + CRIME_INT_MASK);
creg = bus_space_read_8(&crimebus_tag, crime_h, CRIME_REVISION);
printf(": crime rev %d.%d\n", (creg & 0xf0) >> 4, creg & 0xf);
@@ -726,3 +724,10 @@ macebus_aux(intrmask_t hwpend, struct trap_frame *cf)
return 0; /* Real clock int handler registers. */
}
+
+void
+hw_setintrmask(intrmask_t m)
+{
+ *(volatile uint64_t *)(PHYS_TO_XKPHYS(CRIMEBUS_BASE, CCA_NC) +
+ CRIME_INT_MASK) = mace_intem & ~m;
+}