From e3f51f5ddcd2959467b82cf208763001bcc3ba3e Mon Sep 17 00:00:00 2001 From: Miod Vallat Date: Wed, 21 Oct 2009 20:48:46 +0000 Subject: Replace IP32 hw_setintrmask() .S routine with a two line C routine. --- sys/arch/sgi/localbus/macebus.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'sys/arch/sgi/localbus/macebus.c') 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; +} -- cgit v1.2.3