aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lepore <ian@FreeBSD.org>2019-04-21 17:39:01 +0000
committerIan Lepore <ian@FreeBSD.org>2019-04-21 17:39:01 +0000
commit9e655cd522b05db0716a0c0936abcef491f8193b (patch)
tree57de4dca16761ead615e2aedee59620e7b802a5e
parent1fa5142093dc2208c9d4b9931321e063d6ad8436 (diff)
downloadsrc-9e655cd522b05db0716a0c0936abcef491f8193b.tar.gz
src-9e655cd522b05db0716a0c0936abcef491f8193b.zip
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).
Notes
Notes: svn path=/head/; revision=346489
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2835_intr.c2
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2836.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_intr.c b/sys/arm/broadcom/bcm2835/bcm2835_intr.c
index 0d493a298b23..24bb7014db55 100644
--- a/sys/arm/broadcom/bcm2835/bcm2835_intr.c
+++ b/sys/arm/broadcom/bcm2835/bcm2835_intr.c
@@ -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);
diff --git a/sys/arm/broadcom/bcm2835/bcm2836.c b/sys/arm/broadcom/bcm2835/bcm2836.c
index 15febf8811bf..09196476360b 100644
--- a/sys/arm/broadcom/bcm2835/bcm2836.c
+++ b/sys/arm/broadcom/bcm2835/bcm2836.c
@@ -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);