Module Name:    src
Committed By:   jmcneill
Date:           Fri Nov 16 23:18:17 UTC 2018

Modified Files:
        src/sys/dev/acpi: ahcisata_acpi.c dwiic_acpi.c ehci_acpi.c
            virtio_acpi.c xhci_acpi.c

Log Message:
Use acpi_intr_establish


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/dev/acpi/ahcisata_acpi.c
cvs rdiff -u -r1.1 -r1.2 src/sys/dev/acpi/dwiic_acpi.c \
    src/sys/dev/acpi/virtio_acpi.c src/sys/dev/acpi/xhci_acpi.c
cvs rdiff -u -r1.2 -r1.3 src/sys/dev/acpi/ehci_acpi.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/acpi/ahcisata_acpi.c
diff -u src/sys/dev/acpi/ahcisata_acpi.c:1.3 src/sys/dev/acpi/ahcisata_acpi.c:1.4
--- src/sys/dev/acpi/ahcisata_acpi.c:1.3	Mon Oct 15 18:58:35 2018
+++ src/sys/dev/acpi/ahcisata_acpi.c	Fri Nov 16 23:18:17 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: ahcisata_acpi.c,v 1.3 2018/10/15 18:58:35 jdolecek Exp $ */
+/* $NetBSD: ahcisata_acpi.c,v 1.4 2018/11/16 23:18:17 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ahcisata_acpi.c,v 1.3 2018/10/15 18:58:35 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ahcisata_acpi.c,v 1.4 2018/11/16 23:18:17 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -43,6 +43,7 @@ __KERNEL_RCSID(0, "$NetBSD: ahcisata_acp
 
 #include <dev/acpi/acpireg.h>
 #include <dev/acpi/acpivar.h>
+#include <dev/acpi/acpi_intr.h>
 
 #include <dev/pci/pcireg.h>
 
@@ -102,8 +103,8 @@ ahcisata_acpi_attach(device_t parent, de
 		goto done;
 	}
 
-	const int type = (irq->ar_type == ACPI_EDGE_SENSITIVE) ? IST_EDGE : IST_LEVEL;
-	ih = intr_establish(irq->ar_irq, IPL_BIO, type, ahci_intr, sc);
+	ih = acpi_intr_establish(self, (uint64_t)aa->aa_node->ad_handle,
+	    IPL_BIO, false, ahci_intr, sc, device_xname(self));
 	if (ih == NULL) {
 		aprint_error_dev(self, "couldn't install interrupt handler\n");
 		return;

Index: src/sys/dev/acpi/dwiic_acpi.c
diff -u src/sys/dev/acpi/dwiic_acpi.c:1.1 src/sys/dev/acpi/dwiic_acpi.c:1.2
--- src/sys/dev/acpi/dwiic_acpi.c:1.1	Wed Oct 17 00:03:47 2018
+++ src/sys/dev/acpi/dwiic_acpi.c	Fri Nov 16 23:18:17 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: dwiic_acpi.c,v 1.1 2018/10/17 00:03:47 jmcneill Exp $ */
+/* $NetBSD: dwiic_acpi.c,v 1.2 2018/11/16 23:18:17 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dwiic_acpi.c,v 1.1 2018/10/17 00:03:47 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dwiic_acpi.c,v 1.2 2018/11/16 23:18:17 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -39,6 +39,7 @@ __KERNEL_RCSID(0, "$NetBSD: dwiic_acpi.c
 
 #include <dev/acpi/acpireg.h>
 #include <dev/acpi/acpivar.h>
+#include <dev/acpi/acpi_intr.h>
 #include <dev/acpi/acpi_i2c.h>
 
 #include <dev/ic/dwiic_var.h>
@@ -113,8 +114,8 @@ dwiic_acpi_attach(device_t parent, devic
 		return;
 	}
 
-	const int type = (irq->ar_type == ACPI_EDGE_SENSITIVE) ? IST_EDGE : IST_LEVEL;
-	ih = intr_establish(irq->ar_irq, IPL_VM, type, dwiic_intr, sc);
+	ih = acpi_intr_establish(self, (uint64_t)aa->aa_node->ad_handle,
+	    IPL_VM, true, dwiic_intr, sc, device_xname(self));
 	if (ih == NULL) {
 		aprint_error_dev(self, "couldn't install interrupt handler\n");
 		bus_space_unmap(sc->sc_iot, sc->sc_ioh, mem->ar_length);
Index: src/sys/dev/acpi/virtio_acpi.c
diff -u src/sys/dev/acpi/virtio_acpi.c:1.1 src/sys/dev/acpi/virtio_acpi.c:1.2
--- src/sys/dev/acpi/virtio_acpi.c:1.1	Sun Oct 21 12:26:38 2018
+++ src/sys/dev/acpi/virtio_acpi.c	Fri Nov 16 23:18:17 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: virtio_acpi.c,v 1.1 2018/10/21 12:26:38 jmcneill Exp $ */
+/* $NetBSD: virtio_acpi.c,v 1.2 2018/11/16 23:18:17 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: virtio_acpi.c,v 1.1 2018/10/21 12:26:38 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: virtio_acpi.c,v 1.2 2018/11/16 23:18:17 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -39,12 +39,14 @@ __KERNEL_RCSID(0, "$NetBSD: virtio_acpi.
 
 #include <dev/acpi/acpireg.h>
 #include <dev/acpi/acpivar.h>
+#include <dev/acpi/acpi_intr.h>
 
 #define	VIRTIO_PRIVATE
 #include <dev/virtio/virtio_mmiovar.h>
 
 struct virtio_acpi_softc {
 	struct virtio_mmio_softc	sc_msc;
+	ACPI_HANDLE			sc_handle;
 	int				sc_irq;
 	int				sc_irqtype;
 };
@@ -90,6 +92,7 @@ virtio_acpi_attach(device_t parent, devi
 	ACPI_STATUS rv;
 	int error;
 
+	sc->sc_handle = aa->aa_node->ad_handle;
 	msc->sc_iot = aa->aa_memt;
 	vsc->sc_dev = self;
 	vsc->sc_dmat = aa->aa_dmat;
@@ -164,7 +167,8 @@ virtio_acpi_setup_interrupts(struct virt
 	struct virtio_acpi_softc * const sc = (struct virtio_acpi_softc *)msc;
 	struct virtio_softc * const vsc = &msc->sc_sc;
 
-	msc->sc_ih = intr_establish(sc->sc_irq, IPL_VM, sc->sc_irqtype, virtio_mmio_intr, msc);
+	msc->sc_ih = acpi_intr_establish(vsc->sc_dev, (uint64_t)sc->sc_handle,
+            IPL_VM, false, virtio_mmio_intr, msc, device_xname(vsc->sc_dev));
 	if (msc->sc_ih == NULL) {
 		aprint_error_dev(vsc->sc_dev, "couldn't install interrupt handler\n");
 		return -1;
@@ -179,7 +183,7 @@ static void
 virtio_acpi_free_interrupts(struct virtio_mmio_softc *msc)
 {
 	if (msc->sc_ih != NULL) {
-		intr_disestablish(msc->sc_ih);
+		acpi_intr_disestablish(msc->sc_ih);
 		msc->sc_ih = NULL;
 	}
 }
Index: src/sys/dev/acpi/xhci_acpi.c
diff -u src/sys/dev/acpi/xhci_acpi.c:1.1 src/sys/dev/acpi/xhci_acpi.c:1.2
--- src/sys/dev/acpi/xhci_acpi.c:1.1	Fri Oct 26 23:33:38 2018
+++ src/sys/dev/acpi/xhci_acpi.c	Fri Nov 16 23:18:17 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: xhci_acpi.c,v 1.1 2018/10/26 23:33:38 jmcneill Exp $ */
+/* $NetBSD: xhci_acpi.c,v 1.2 2018/11/16 23:18:17 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xhci_acpi.c,v 1.1 2018/10/26 23:33:38 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xhci_acpi.c,v 1.2 2018/11/16 23:18:17 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -46,6 +46,7 @@ __KERNEL_RCSID(0, "$NetBSD: xhci_acpi.c,
 
 #include <dev/acpi/acpireg.h>
 #include <dev/acpi/acpivar.h>
+#include <dev/acpi/acpi_intr.h>
 #include <dev/acpi/acpi_usb.h>
 
 static const char * const compatible[] = {
@@ -113,7 +114,7 @@ xhci_acpi_attach(device_t parent, device
 	}
 
 	irq = acpi_res_irq(&res, 0);
-	if (mem == NULL) {
+	if (irq == NULL) {
 		aprint_error_dev(self, "couldn't find irq resource\n");
 		goto done;
 	}
@@ -126,8 +127,8 @@ xhci_acpi_attach(device_t parent, device
 		return;
 	}
 
-	const int type = (irq->ar_type == ACPI_EDGE_SENSITIVE) ? IST_EDGE : IST_LEVEL;
-	ih = intr_establish(irq->ar_irq, IPL_USB, type, xhci_intr, sc);
+        ih = acpi_intr_establish(self, (uint64_t)aa->aa_node->ad_handle,
+	    IPL_USB, true, xhci_intr, sc, device_xname(self));
 	if (ih == NULL) {
 		aprint_error_dev(self, "couldn't establish interrupt\n");
 		return;

Index: src/sys/dev/acpi/ehci_acpi.c
diff -u src/sys/dev/acpi/ehci_acpi.c:1.2 src/sys/dev/acpi/ehci_acpi.c:1.3
--- src/sys/dev/acpi/ehci_acpi.c:1.2	Fri Oct 26 23:33:38 2018
+++ src/sys/dev/acpi/ehci_acpi.c	Fri Nov 16 23:18:17 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: ehci_acpi.c,v 1.2 2018/10/26 23:33:38 jmcneill Exp $ */
+/* $NetBSD: ehci_acpi.c,v 1.3 2018/11/16 23:18:17 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ehci_acpi.c,v 1.2 2018/10/26 23:33:38 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ehci_acpi.c,v 1.3 2018/11/16 23:18:17 jmcneill Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -46,6 +46,7 @@ __KERNEL_RCSID(0, "$NetBSD: ehci_acpi.c,
 
 #include <dev/acpi/acpireg.h>
 #include <dev/acpi/acpivar.h>
+#include <dev/acpi/acpi_intr.h>
 #include <dev/acpi/acpi_usb.h>
 
 static const char * const compatible[] = {
@@ -113,7 +114,7 @@ ehci_acpi_attach(device_t parent, device
 	}
 
 	irq = acpi_res_irq(&res, 0);
-	if (mem == NULL) {
+	if (irq == NULL) {
 		aprint_error_dev(self, "couldn't find irq resource\n");
 		goto done;
 	}
@@ -130,8 +131,8 @@ ehci_acpi_attach(device_t parent, device
 	sc->sc_offs = EREAD1(sc, EHCI_CAPLENGTH);
 	EOWRITE4(sc, EHCI_USBINTR, 0);
 
-	const int type = (irq->ar_type == ACPI_EDGE_SENSITIVE) ? IST_EDGE : IST_LEVEL;
-	ih = intr_establish(irq->ar_irq, IPL_USB, type, ehci_intr, sc);
+	ih = acpi_intr_establish(self, (uint64_t)aa->aa_node->ad_handle,
+	    IPL_USB, true, ehci_intr, sc, device_xname(self));
 	if (ih == NULL) {
 		aprint_error_dev(self, "couldn't establish interrupt\n");
 		return;

Reply via email to