-/* $OpenBSD: pyro.c,v 1.36 2020/10/01 05:14:10 jsg Exp $ */
+/* $OpenBSD: pyro.c,v 1.37 2024/03/29 21:18:19 miod Exp $ */
/*
* Copyright (c) 2002 Jason L. Wright (jason@thought.net)
bus_space_write_8(sc->sc_bust, sc->sc_csrh,
FIRE_MSI_CLEAR(msinum), FIRE_MSI_CLEAR_EQWR_N);
- send_softint(-1, ih->ih_pil, ih);
+ send_softint(ih->ih_pil, ih);
head += 1;
head &= eq->eq_mask;
-/* $OpenBSD: vpci.c,v 1.33 2020/10/27 21:01:33 kettenis Exp $ */
+/* $OpenBSD: vpci.c,v 1.34 2024/03/29 21:18:19 miod Exp $ */
/*
* Copyright (c) 2008 Mark Kettenis <kettenis@openbsd.org>
*
if (err != H_EOK)
printf("%s: pci_msi_setstate: %d\n", __func__, err);
- send_softint(-1, ih->ih_pil, ih);
+ send_softint(ih->ih_pil, ih);
head += sizeof(struct vpci_msi_msg);
head &= eq->eq_mask;
-/* $OpenBSD: intr.h,v 1.23 2024/03/29 21:16:01 miod Exp $ */
+/* $OpenBSD: intr.h,v 1.24 2024/03/29 21:18:19 miod Exp $ */
/* $NetBSD: intr.h,v 1.8 2001/01/14 23:50:30 thorpej Exp $ */
/*-
void softintr_disestablish(void *);
void softintr_schedule(void *);
-void send_softint(int cpu, int level, struct intrhand *ih);
+void send_softint(int, struct intrhand *);
#endif /* _MACHINE_INTR_H_ */
-/* $OpenBSD: clock.c,v 1.83 2024/03/29 21:06:14 miod Exp $ */
+/* $OpenBSD: clock.c,v 1.84 2024/03/29 21:18:19 miod Exp $ */
/* $NetBSD: clock.c,v 1.41 2001/07/24 19:29:25 eeh Exp $ */
/*
void
sparc64_raise_clockintr(void)
{
- send_softint(-1, PIL_CLOCK, &curcpu()->ci_tickintr);
+ send_softint(PIL_CLOCK, &curcpu()->ci_tickintr);
}
-/* $OpenBSD: intr.c,v 1.65 2024/03/29 21:17:13 miod Exp $ */
+/* $OpenBSD: intr.c,v 1.66 2024/03/29 21:18:19 miod Exp $ */
/* $NetBSD: intr.c,v 1.39 2001/07/19 23:38:11 eeh Exp $ */
/*
{
struct intrhand *ih = cookie;
- send_softint(-1, ih->ih_pil, ih);
+ send_softint(ih->ih_pil, ih);
}
#ifdef DIAGNOSTIC
-/* $OpenBSD: locore.s,v 1.209 2024/03/29 21:17:13 miod Exp $ */
+/* $OpenBSD: locore.s,v 1.210 2024/03/29 21:18:19 miod Exp $ */
/* $NetBSD: locore.s,v 1.137 2001/08/13 06:10:10 jdolecek Exp $ */
/*
END(cecc_catch)
/*
- * send_softint(cpu, level, intrhand)
+ * send_softint(level, intrhand)
*
* Send a softint with an intrhand pointer so we can cause a vectored
* interrupt instead of a polled interrupt. This does pretty much the
* same as interrupt_vector. If intrhand is NULL then it just sends
- * a polled interrupt. If cpu is -1 then send it to this CPU, if it's
- * -2 send it to any CPU, otherwise send it to a particular CPU.
- *
- * XXXX Dispatching to different CPUs is not implemented yet.
+ * a polled interrupt.
*/
ENTRY(send_softint)
rdpr %pstate, %g1
andn %g1, PSTATE_IE, %o3
wrpr %o3, 0, %pstate
- brz,pn %o2, 1f
+ brz,pn %o1, 1f
add %g7, CI_INTRPENDING, %o3
- ldx [%o2 + IH_PEND], %o5
+ ldx [%o1 + IH_PEND], %o5
brnz,pn %o5, 1f
- sll %o1, 3+3, %o5 ! Find start of table for this IPL
+ sll %o0, 3+3, %o5 ! Find start of table for this IPL
add %o3, %o5, %o3
ldx [%o3], %o5 ! Load list head
- add %o2, IH_PEND, %o4
+ add %o1, IH_PEND, %o4
casxa [%o4] ASI_N, %g0, %o5
brnz,pn %o5, 1f
nop
- stx %o2, [%o3]
+ stx %o1, [%o3]
mov 1, %o3 ! Change from level to bitmask
- sllx %o3, %o1, %o3
+ sllx %o3, %o0, %o3
wr %o3, 0, SET_SOFTINT ! SET_SOFTINT
1:
retl