diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2009-10-01 20:19:20 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2009-10-01 20:19:20 +0000 |
commit | 2f170aacf72c46c917cdfe67ac32e89d65edf81d (patch) | |
tree | 1dc5956ddab9243ed357fece1a6b970c972f9953 /sys/arch/socppc/dev | |
parent | 6c8d318a056e70f92a487ab483553d455ad77e55 (diff) |
Generic soft interrupts for macppc. Tested by mk@, deraadt@
ok miod@
Diffstat (limited to 'sys/arch/socppc/dev')
-rw-r--r-- | sys/arch/socppc/dev/ipic.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/arch/socppc/dev/ipic.c b/sys/arch/socppc/dev/ipic.c index 5b0b59bfac6..3d51da16528 100644 --- a/sys/arch/socppc/dev/ipic.c +++ b/sys/arch/socppc/dev/ipic.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ipic.c,v 1.10 2009/09/12 21:38:01 kettenis Exp $ */ +/* $OpenBSD: ipic.c,v 1.11 2009/10/01 20:19:19 kettenis Exp $ */ /* * Copyright (c) 2008 Mark Kettenis @@ -221,7 +221,7 @@ intr_calculatemasks(void) int level; for (level = IPL_NONE; level < IPL_NUM; level++) - imask[level] = SINT_MASK | (1 << level); + imask[level] = SINT_ALLMASK | (1 << level); /* * There are tty, network and disk drivers that use free() at interrupt @@ -233,7 +233,7 @@ intr_calculatemasks(void) imask[IPL_NET] |= imask[IPL_BIO]; imask[IPL_TTY] |= imask[IPL_NET]; imask[IPL_VM] |= imask[IPL_TTY]; - imask[IPL_CLOCK] |= imask[IPL_VM] | SPL_CLOCK; + imask[IPL_CLOCK] |= imask[IPL_VM] | SPL_CLOCKMASK; /* * These are pseudo-levels. @@ -376,8 +376,8 @@ ipic_do_pending_int(void) uint32_t mask; int level; - ci->ci_ipending &= SINT_MASK; - level = cntlzw(31 - (ci->ci_cpl & ~(SPL_CLOCK|SINT_MASK))); + ci->ci_ipending &= SINT_ALLMASK; + level = cntlzw(31 - (ci->ci_cpl & ~(SPL_CLOCKMASK|SINT_ALLMASK))); mask = sc->sc_simsr_h[IPL_HIGH] & ~sc->sc_simsr_h[level]; ipic_write(sc, IPIC_SIMSR_H, mask); mask = sc->sc_simsr_l[IPL_HIGH] & ~sc->sc_simsr_l[level]; |