diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2009-11-04 19:14:11 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2009-11-04 19:14:11 +0000 |
commit | 977663b99170667667569e24c3cc3c783721c5d2 (patch) | |
tree | 074971fd3c83c1872e970f2ad03edf724c909540 /sys/dev | |
parent | 6c3b6a695dfbbd617cb55229859fc54028fa1dc0 (diff) |
Get rid of __HAVE_GENERIC_SOFT_INTERRUPTS now that all our platforms support it.
ok jsing@, miod@
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/ic/com.c | 32 | ||||
-rw-r--r-- | sys/dev/ic/comvar.h | 6 | ||||
-rw-r--r-- | sys/dev/usb/ehci.c | 12 | ||||
-rw-r--r-- | sys/dev/usb/ohci.c | 8 | ||||
-rw-r--r-- | sys/dev/usb/ohcivar.h | 4 | ||||
-rw-r--r-- | sys/dev/usb/uhci.c | 8 | ||||
-rw-r--r-- | sys/dev/usb/uhcivar.h | 4 | ||||
-rw-r--r-- | sys/dev/usb/usb.c | 11 | ||||
-rw-r--r-- | sys/dev/usb/usb_port.h | 8 | ||||
-rw-r--r-- | sys/dev/usb/usbdi.h | 11 | ||||
-rw-r--r-- | sys/dev/usb/usbdivar.h | 5 | ||||
-rw-r--r-- | sys/dev/usb/usbf_subr.c | 10 | ||||
-rw-r--r-- | sys/dev/usb/usbfvar.h | 4 |
13 files changed, 19 insertions, 104 deletions
diff --git a/sys/dev/ic/com.c b/sys/dev/ic/com.c index f71a1c3316b..2af5e0306f4 100644 --- a/sys/dev/ic/com.c +++ b/sys/dev/ic/com.c @@ -1,4 +1,4 @@ -/* $OpenBSD: com.c,v 1.135 2009/11/01 20:29:00 nicm Exp $ */ +/* $OpenBSD: com.c,v 1.136 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: com.c,v 1.82.4.1 1996/06/02 09:08:00 mrg Exp $ */ /* @@ -224,11 +224,7 @@ com_detach(struct device *self, int flags) timeout_del(&sc->sc_dtr_tmo); timeout_del(&sc->sc_diag_tmo); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS softintr_disestablish(sc->sc_si); -#else - timeout_del(&sc->sc_comsoft_tmo); -#endif return (0); } @@ -328,10 +324,6 @@ comopen(dev_t dev, int flag, int mode, struct proc *p) comparam(tp, &tp->t_termios); ttsetwater(tp); -#ifndef __HAVE_GENERIC_SOFT_INTERRUPTS - timeout_add(&sc->sc_comsoft_tmo, 1); -#endif - sc->sc_ibufp = sc->sc_ibuf = sc->sc_ibufs[0]; sc->sc_ibufhigh = sc->sc_ibuf + COM_IHIGHWATER; sc->sc_ibufend = sc->sc_ibuf + COM_IBUFSIZE; @@ -508,9 +500,6 @@ comclose(dev_t dev, int flag, int mode, struct proc *p) compwroff(sc); } CLR(tp->t_state, TS_BUSY | TS_FLUSH); -#ifndef __HAVE_GENERIC_SOFT_INTERRUPTS - timeout_del(&sc->sc_comsoft_tmo); -#endif sc->sc_cua = 0; splx(s); ttyclose(tp); @@ -1010,7 +999,7 @@ comsoft(void *arg) }; if (sc == NULL || sc->sc_ibufp == sc->sc_ibuf) - goto out; + return; tp = sc->sc_tty; @@ -1021,7 +1010,7 @@ comsoft(void *arg) if (ibufp == ibufend) { splx(s); - goto out; + return; } sc->sc_ibufp = sc->sc_ibuf = (ibufp == sc->sc_ibufs[0]) ? @@ -1031,7 +1020,7 @@ comsoft(void *arg) if (tp == NULL || !ISSET(tp->t_state, TS_ISOPEN)) { splx(s); - goto out; + return; } if (ISSET(tp->t_cflag, CRTSCTS) && @@ -1055,13 +1044,6 @@ comsoft(void *arg) c |= lsrmap[(*ibufp++ & (LSR_BI|LSR_FE|LSR_PE)) >> 2]; (*linesw[tp->t_line].l_rint)(c, tp); } - -out: -#ifndef __HAVE_GENERIC_SOFT_INTERRUPTS - timeout_add(&sc->sc_comsoft_tmo, 1); -#else - ; -#endif } #ifdef KGDB @@ -1142,9 +1124,7 @@ comintr(void *arg) if (ISSET(lsr, LSR_RXRDY)) { u_char *p = sc->sc_ibufp; -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS softintr_schedule(sc->sc_si); -#endif do { data = bus_space_read_1(iot, ioh, com_data); if (ISSET(lsr, LSR_BI)) { @@ -1732,14 +1712,10 @@ com_attach_subr(sc) timeout_set(&sc->sc_diag_tmo, comdiag, sc); timeout_set(&sc->sc_dtr_tmo, com_raisedtr, sc); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS sc->sc_si = softintr_establish(IPL_TTY, comsoft, sc); if (sc->sc_si == NULL) panic("%s: can't establish soft interrupt", sc->sc_dev.dv_xname); -#else - timeout_set(&sc->sc_comsoft_tmo, comsoft, sc); -#endif /* * If there are no enable/disable functions, assume the device diff --git a/sys/dev/ic/comvar.h b/sys/dev/ic/comvar.h index b8c16b67315..afbb64ea32f 100644 --- a/sys/dev/ic/comvar.h +++ b/sys/dev/ic/comvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: comvar.h,v 1.46 2009/10/13 19:33:16 pirofti Exp $ */ +/* $OpenBSD: comvar.h,v 1.47 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: comvar.h,v 1.5 1996/05/05 19:50:47 christos Exp $ */ /* @@ -76,11 +76,7 @@ struct com_softc { struct tty *sc_tty; struct timeout sc_dtr_tmo; struct timeout sc_diag_tmo; -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS void *sc_si; -#else - struct timeout sc_comsoft_tmo; -#endif int sc_overflows; int sc_floods; diff --git a/sys/dev/usb/ehci.c b/sys/dev/usb/ehci.c index 890ef32b821..3b2274ca27d 100644 --- a/sys/dev/usb/ehci.c +++ b/sys/dev/usb/ehci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ehci.c,v 1.103 2009/10/13 19:33:17 pirofti Exp $ */ +/* $OpenBSD: ehci.c,v 1.104 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: ehci.c,v 1.66 2004/06/30 03:11:56 mycroft Exp $ */ /* @@ -672,12 +672,10 @@ ehci_softintr(void *v) timeout_add_sec(&sc->sc_tmo_intrlist, 1); } -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS if (sc->sc_softwake) { sc->sc_softwake = 0; wakeup(&sc->sc_softwake); } -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ sc->sc_bus.intr_context--; } @@ -2795,13 +2793,9 @@ ehci_abort_xfer(usbd_xfer_handle xfer, usbd_status status) * has run. */ s = splusb(); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS sc->sc_softwake = 1; -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ usb_schedsoftintr(&sc->sc_bus); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS tsleep(&sc->sc_softwake, PZERO, "ehciab", 0); -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ /* * Step 5: Remove any vestiges of the xfer from the hardware. @@ -2957,13 +2951,9 @@ ehci_abort_isoc_xfer(usbd_xfer_handle xfer, usbd_status status) splx(s); s = splusb(); -#ifdef USB_USE_SOFTINTR sc->sc_softwake = 1; -#endif /* USB_USE_SOFTINTR */ usb_schedsoftintr(&sc->sc_bus); -#ifdef USB_USE_SOFTINTR tsleep(&sc->sc_softwake, PZERO, "ehciab", 0); -#endif /* USB_USE_SOFTINTR */ splx(s); #ifdef DIAGNOSTIC diff --git a/sys/dev/usb/ohci.c b/sys/dev/usb/ohci.c index e402cf7c9fa..5a58262dcc1 100644 --- a/sys/dev/usb/ohci.c +++ b/sys/dev/usb/ohci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ohci.c,v 1.92 2009/10/13 19:33:17 pirofti Exp $ */ +/* $OpenBSD: ohci.c,v 1.93 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: ohci.c,v 1.139 2003/02/22 05:24:16 tsutsui Exp $ */ /* $FreeBSD: src/sys/dev/usb/ohci.c,v 1.22 1999/11/17 22:33:40 n_hibma Exp $ */ @@ -1470,12 +1470,10 @@ ohci_softintr(void *v) } } -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS if (sc->sc_softwake) { sc->sc_softwake = 0; wakeup(&sc->sc_softwake); } -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ sc->sc_bus.intr_context--; DPRINTFN(10,("ohci_softintr: done:\n")); @@ -2213,13 +2211,9 @@ ohci_abort_xfer(usbd_xfer_handle xfer, usbd_status status) */ usb_delay_ms(opipe->pipe.device->bus, 20); /* Hardware finishes in 1ms */ s = splusb(); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS sc->sc_softwake = 1; -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ usb_schedsoftintr(&sc->sc_bus); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS tsleep(&sc->sc_softwake, PZERO, "ohciab", 0); -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ splx(s); /* diff --git a/sys/dev/usb/ohcivar.h b/sys/dev/usb/ohcivar.h index f17fdf820fe..27b2a6fb596 100644 --- a/sys/dev/usb/ohcivar.h +++ b/sys/dev/usb/ohcivar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ohcivar.h,v 1.27 2009/10/13 19:33:17 pirofti Exp $ */ +/* $OpenBSD: ohcivar.h,v 1.28 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: ohcivar.h,v 1.32 2003/02/22 05:24:17 tsutsui Exp $ */ /* $FreeBSD: src/sys/dev/usb/ohcivar.h,v 1.13 1999/11/17 22:33:41 n_hibma Exp $ */ @@ -100,9 +100,7 @@ typedef struct ohci_softc { u_int8_t sc_addr; /* device address */ u_int8_t sc_conf; /* device configuration */ -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS char sc_softwake; -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ ohci_soft_ed_t *sc_freeeds; ohci_soft_td_t *sc_freetds; diff --git a/sys/dev/usb/uhci.c b/sys/dev/usb/uhci.c index 8afa70119bf..58c24368ad3 100644 --- a/sys/dev/usb/uhci.c +++ b/sys/dev/usb/uhci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uhci.c,v 1.72 2009/10/13 19:33:17 pirofti Exp $ */ +/* $OpenBSD: uhci.c,v 1.73 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: uhci.c,v 1.172 2003/02/23 04:19:26 simonb Exp $ */ /* $FreeBSD: src/sys/dev/usb/uhci.c,v 1.33 1999/11/17 22:33:41 n_hibma Exp $ */ @@ -1251,12 +1251,10 @@ uhci_softintr(void *v) uhci_check_intr(sc, ii); } -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS if (sc->sc_softwake) { sc->sc_softwake = 0; wakeup(&sc->sc_softwake); } -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ sc->sc_bus.intr_context--; } @@ -1923,14 +1921,10 @@ uhci_abort_xfer(usbd_xfer_handle xfer, usbd_status status) */ usb_delay_ms(upipe->pipe.device->bus, 2); /* Hardware finishes in 1ms */ s = splusb(); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS sc->sc_softwake = 1; -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ usb_schedsoftintr(&sc->sc_bus); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS DPRINTFN(1,("uhci_abort_xfer: tsleep\n")); tsleep(&sc->sc_softwake, PZERO, "uhciab", 0); -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ splx(s); /* diff --git a/sys/dev/usb/uhcivar.h b/sys/dev/usb/uhcivar.h index 86d29d34ce4..c7ea2d0059d 100644 --- a/sys/dev/usb/uhcivar.h +++ b/sys/dev/usb/uhcivar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: uhcivar.h,v 1.21 2009/10/13 19:33:19 pirofti Exp $ */ +/* $OpenBSD: uhcivar.h,v 1.22 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: uhcivar.h,v 1.36 2002/12/31 00:39:11 augustss Exp $ */ /* $FreeBSD: src/sys/dev/usb/uhcivar.h,v 1.14 1999/11/17 22:33:42 n_hibma Exp $ */ @@ -155,9 +155,7 @@ typedef struct uhci_softc { u_int8_t sc_saved_sof; u_int16_t sc_saved_frnum; -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS char sc_softwake; -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ char sc_isreset; char sc_suspend; diff --git a/sys/dev/usb/usb.c b/sys/dev/usb/usb.c index 222aa200cd5..63b17a494f4 100644 --- a/sys/dev/usb/usb.c +++ b/sys/dev/usb/usb.c @@ -1,4 +1,4 @@ -/* $OpenBSD: usb.c,v 1.60 2009/10/31 06:40:17 deraadt Exp $ */ +/* $OpenBSD: usb.c,v 1.61 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: usb.c,v 1.77 2003/01/01 00:10:26 thorpej Exp $ */ /* @@ -192,7 +192,6 @@ usb_attach(struct device *parent, struct device *self, void *aux) ue.u.ue_ctrlr.ue_bus = sc->sc_dev.dv_unit; usb_add_event(USB_EVENT_CTRLR_ATTACH, &ue); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS /* XXX we should have our own level */ sc->sc_bus->soft = softintr_establish(IPL_SOFTNET, sc->sc_bus->methods->soft_intr, sc->sc_bus); @@ -201,7 +200,6 @@ usb_attach(struct device *parent, struct device *self, void *aux) sc->sc_dying = 1; return; } -#endif err = usbd_new_device(&sc->sc_dev, sc->sc_bus, 0, speed, 0, &sc->sc_port); @@ -780,15 +778,12 @@ void usb_schedsoftintr(usbd_bus_handle bus) { DPRINTFN(10,("usb_schedsoftintr: polling=%d\n", bus->use_polling)); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS + if (bus->use_polling) { bus->methods->soft_intr(bus); } else { softintr_schedule(bus->soft); } -#else - bus->methods->soft_intr(bus); -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ } int @@ -839,12 +834,10 @@ usb_detach(struct device *self, int flags) usbd_finish(); -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS if (sc->sc_bus->soft != NULL) { softintr_disestablish(sc->sc_bus->soft); sc->sc_bus->soft = NULL; } -#endif ue.u.ue_ctrlr.ue_bus = sc->sc_dev.dv_unit; usb_add_event(USB_EVENT_CTRLR_DETACH, &ue); diff --git a/sys/dev/usb/usb_port.h b/sys/dev/usb/usb_port.h index c57dfe5e0b5..a18fb4623a4 100644 --- a/sys/dev/usb/usb_port.h +++ b/sys/dev/usb/usb_port.h @@ -1,4 +1,4 @@ -/* $OpenBSD: usb_port.h,v 1.98 2009/10/13 19:33:19 pirofti Exp $ */ +/* $OpenBSD: usb_port.h,v 1.99 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: usb_port.h,v 1.62 2003/02/15 18:33:30 augustss Exp $ */ /* $FreeBSD: src/sys/dev/usb/usb_port.h,v 1.21 1999/11/17 22:33:47 n_hibma Exp $ */ @@ -40,12 +40,6 @@ * NetBSD or FreeBSD. */ -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS -#define USB_USE_SOFTINTR -#else -#undef USB_USE_SOFTINTR -#endif - #define Static #define UMASS_ATAPISTR "atapiscsi" diff --git a/sys/dev/usb/usbdi.h b/sys/dev/usb/usbdi.h index 1fcc956c560..3b6010250d8 100644 --- a/sys/dev/usb/usbdi.h +++ b/sys/dev/usb/usbdi.h @@ -1,4 +1,4 @@ -/* $OpenBSD: usbdi.h,v 1.32 2009/09/23 19:59:08 miod Exp $ */ +/* $OpenBSD: usbdi.h,v 1.33 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: usbdi.h,v 1.62 2002/07/11 21:14:35 augustss Exp $ */ /* $FreeBSD: src/sys/dev/usb/usbdi.h,v 1.18 1999/11/17 22:33:49 n_hibma Exp $ */ @@ -240,20 +240,11 @@ struct usb_attach_arg { #define UMATCH_NONE 0 /* XXX Perhaps USB should have its own levels? */ -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS #define splusb splsoftnet #if 0 #define SPLUSBCHECK splsoftassert(IPL_SOFTNET) #else #define SPLUSBCHECK do { /* nothing */ } while (0) #endif -#else -#define splusb splbio -#if 0 -#define SPLUSBCHECK splassert(IPL_BIO) -#else -#define SPLUSBCHECK do { /* nothing */ } while (0) -#endif -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ #define splhardusb splbio #define IPL_USB IPL_BIO diff --git a/sys/dev/usb/usbdivar.h b/sys/dev/usb/usbdivar.h index 9d44ae0191a..5addcde90e1 100644 --- a/sys/dev/usb/usbdivar.h +++ b/sys/dev/usb/usbdivar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: usbdivar.h,v 1.35 2009/08/30 19:15:40 miod Exp $ */ +/* $OpenBSD: usbdivar.h,v 1.36 2009/11/04 19:14:10 kettenis Exp $ */ /* $NetBSD: usbdivar.h,v 1.70 2002/07/11 21:14:36 augustss Exp $ */ /* $FreeBSD: src/sys/dev/usb/usbdivar.h,v 1.11 1999/11/17 22:33:51 n_hibma Exp $ */ @@ -116,10 +116,7 @@ struct usbd_bus { #define USBREV_1_1 3 #define USBREV_2_0 4 #define USBREV_STR { "unknown", "pre 1.0", "1.0", "1.1", "2.0" } - -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS void *soft; /* soft interrupt cookie */ -#endif bus_dma_tag_t dmatag; /* DMA tag */ }; diff --git a/sys/dev/usb/usbf_subr.c b/sys/dev/usb/usbf_subr.c index 61ee9013d87..4a0b29ed476 100644 --- a/sys/dev/usb/usbf_subr.c +++ b/sys/dev/usb/usbf_subr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: usbf_subr.c,v 1.14 2008/12/01 16:58:48 deraadt Exp $ */ +/* $OpenBSD: usbf_subr.c,v 1.15 2009/11/04 19:14:10 kettenis Exp $ */ /* * Copyright (c) 2006 Uwe Stuehler <uwe@openbsd.org> @@ -1066,23 +1066,19 @@ usbf_transfer_complete(usbf_xfer_handle xfer) usbf_status usbf_softintr_establish(struct usbf_bus *bus) { -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS KASSERT(bus->soft == NULL); + /* XXX we should have our own level */ bus->soft = softintr_establish(IPL_SOFTNET, bus->methods->soft_intr, bus); if (bus->soft == NULL) return USBF_INVAL; -#endif + return USBF_NORMAL_COMPLETION; } void usbf_schedsoftintr(struct usbf_bus *bus) { -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS softintr_schedule(bus->soft); -#else - bus->methods->soft_intr(bus); -#endif /* __HAVE_GENERIC_SOFT_INTERRUPTS */ } diff --git a/sys/dev/usb/usbfvar.h b/sys/dev/usb/usbfvar.h index e8dfe5cb18c..f742181a2a9 100644 --- a/sys/dev/usb/usbfvar.h +++ b/sys/dev/usb/usbfvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: usbfvar.h,v 1.6 2007/06/15 11:41:48 mbalmer Exp $ */ +/* $OpenBSD: usbfvar.h,v 1.7 2009/11/04 19:14:10 kettenis Exp $ */ /* * Copyright (c) 2006 Uwe Stuehler <uwe@openbsd.org> @@ -101,9 +101,7 @@ struct usbf_bus { /* Filled by usbf driver */ struct usbf_softc *usbfctl; int intr_context; -#ifdef __HAVE_GENERIC_SOFT_INTERRUPTS void *soft; /* soft interrupt cookie */ -#endif bus_dma_tag_t dmatag; /* DMA tag */ }; |