summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2020-12-06 21:20:41 +0000
committerkettenis <kettenis@openbsd.org>2020-12-06 21:20:41 +0000
commit021a09795f05c37e2878eecdc45808844bbc91d9 (patch)
tree3b2ca1c57fa51d41114a4066cec9a45998e2944f
parentImplement acpi_intr_disestablish() for arm64. (diff)
downloadwireguard-openbsd-021a09795f05c37e2878eecdc45808844bbc91d9.tar.xz
wireguard-openbsd-021a09795f05c37e2878eecdc45808844bbc91d9.zip
Implement pci_intr_disestablish(9) for acpicpi(4) on arm64.
ok patrick@
-rw-r--r--sys/arch/arm64/dev/acpipci.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/arch/arm64/dev/acpipci.c b/sys/arch/arm64/dev/acpipci.c
index c2f675e9985..6fef5f16e05 100644
--- a/sys/arch/arm64/dev/acpipci.c
+++ b/sys/arch/arm64/dev/acpipci.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: acpipci.c,v 1.21 2020/11/19 13:31:07 kettenis Exp $ */
+/* $OpenBSD: acpipci.c,v 1.22 2020/12/06 21:20:41 kettenis Exp $ */
/*
* Copyright (c) 2018 Mark Kettenis
*
@@ -487,7 +487,13 @@ acpipci_intr_establish(void *v, pci_intr_handle_t ih, int level,
void
acpipci_intr_disestablish(void *v, void *cookie)
{
- panic("%s", __func__);
+ struct arm_intr_handle *aih = cookie;
+ struct interrupt_controller *ic = aih->ih_ic;
+
+ if (ic->ic_establish_msi)
+ ic->ic_disestablish(aih->ih_ih);
+ else
+ acpi_intr_disestablish(cookie);
}
/*