diff options
| author | riastradh <riastradh@NetBSD.org> | 2022-10-28 21:57:58 +0000 |
|---|---|---|
| committer | riastradh <riastradh@NetBSD.org> | 2022-10-28 21:57:58 +0000 |
| commit | 8fd5dd6fef8dd2b018299d5a7eb3e395a127f87f (patch) | |
| tree | bbad0f4994cd7bb785cdf35ab9ff08fb5cba104a /sys/dev | |
| parent | 0a0cb3426f65eb6807abcbb81a23aa9aa2480b9b (diff) | |
xhci(4): Mark PCI interrupt handler MP-safe.
xhci_intr has its own intr lock to coordinate with the MP-safe
softint it defers all its work to, other than reading and writing a
few registers to get and acknowledge the interrupt status.
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/pci/xhci_pci.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/pci/xhci_pci.c b/sys/dev/pci/xhci_pci.c index 6e70223c1d8..926dc707503 100644 --- a/sys/dev/pci/xhci_pci.c +++ b/sys/dev/pci/xhci_pci.c @@ -1,4 +1,4 @@ -/* $NetBSD: xhci_pci.c,v 1.31 2022/10/11 09:18:22 msaitoh Exp $ */ +/* $NetBSD: xhci_pci.c,v 1.32 2022/10/28 21:57:58 riastradh Exp $ */ /* OpenBSD: xhci_pci.c,v 1.4 2014/07/12 17:38:51 yuo Exp */ /* @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: xhci_pci.c,v 1.31 2022/10/11 09:18:22 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: xhci_pci.c,v 1.32 2022/10/28 21:57:58 riastradh Exp $"); #ifdef _KERNEL_OPT #include "opt_xhci_pci.h" @@ -229,6 +229,7 @@ xhci_pci_attach(device_t parent, device_t self, void *aux) } intrstr = pci_intr_string(pc, psc->sc_pihp[0], intrbuf, sizeof(intrbuf)); + pci_intr_setattr(pa->pa_pc, &psc->sc_pihp[0], PCI_INTR_MPSAFE, true); psc->sc_ih = pci_intr_establish_xname(pc, psc->sc_pihp[0], IPL_USB, xhci_intr, sc, device_xname(sc->sc_dev)); if (psc->sc_ih == NULL) { |
