Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 Sep 2019 14:07:38 -0000
From:      Ian Lepore <ian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r346489 - head/sys/arm/broadcom/bcm2835
Message-ID:  <201904211739.x3LHd1ce061747@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ian
Date: Sun Apr 21 17:39:01 2019
New Revision: 346489
URL: https://svnweb.freebsd.org/changeset/base/346489

Log:
  Move the reporting of spurious interrupts under bootverbose control, because
  occasional spurious interrupts are a normal thing on this hardware.  Also,
  change the name of the cpu-local interrupt controller driver from local_intc
  to lintc, because the name gets built into interrupt names, which have to
  fit into a 19-byte field for stats reporting (so this allows 5 more bytes
  of the actual interrupt name to be displayed).

Modified:
  head/sys/arm/broadcom/bcm2835/bcm2835_intr.c
  head/sys/arm/broadcom/bcm2835/bcm2836.c

Modified: head/sys/arm/broadcom/bcm2835/bcm2835_intr.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_intr.c	Sun Apr 21 16:17:35 2019	(r346488)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_intr.c	Sun Apr 21 17:39:01 2019	(r346489)
@@ -230,7 +230,7 @@ bcm2835_intc_intr(void *arg)
 		}
 		arm_irq_memory_barrier(0); /* XXX */
 	}
-	if (num == 0)
+	if (num == 0 && bootverbose)
 		device_printf(sc->sc_dev, "Spurious interrupt detected\n");
 
 	return (FILTER_HANDLED);

Modified: head/sys/arm/broadcom/bcm2835/bcm2836.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2836.c	Sun Apr 21 16:17:35 2019	(r346488)
+++ head/sys/arm/broadcom/bcm2835/bcm2836.c	Sun Apr 21 17:39:01 2019	(r346489)
@@ -421,7 +421,7 @@ bcm_lintc_intr(void *arg)
 	reg &= ~BCM_LINTC_PENDING_MASK;
 	if (reg != 0)
 		device_printf(sc->bls_dev, "Unknown interrupt(s) %x\n", reg);
-	else if (num == 0)
+	else if (num == 0 && bootverbose)
 		device_printf(sc->bls_dev, "Spurious interrupt detected\n");
 
 	return (FILTER_HANDLED);
@@ -730,12 +730,12 @@ static device_method_t bcm_lintc_methods[] = {
 };
 
 static driver_t bcm_lintc_driver = {
-	"local_intc",
+	"lintc",
 	bcm_lintc_methods,
 	sizeof(struct bcm_lintc_softc),
 };
 
 static devclass_t bcm_lintc_devclass;
 
-EARLY_DRIVER_MODULE(local_intc, simplebus, bcm_lintc_driver, bcm_lintc_devclass,
+EARLY_DRIVER_MODULE(lintc, simplebus, bcm_lintc_driver, bcm_lintc_devclass,
     0, 0, BUS_PASS_INTERRUPT);





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201904211739.x3LHd1ce061747>