summaryrefslogtreecommitdiffstats
path: root/sys/arm
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2014-08-17 01:48:12 +0000
committerian <ian@FreeBSD.org>2014-08-17 01:48:12 +0000
commit266195b56bb3d4b79227735414ee40a4bab6620e (patch)
tree8e85ccfd8f6321cd861e1d7778501895ed6bd35f /sys/arm
parent704fa959ad9f6830f0cdd94c8fbe31a3b5c40fce (diff)
downloadFreeBSD-src-266195b56bb3d4b79227735414ee40a4bab6620e.zip
FreeBSD-src-266195b56bb3d4b79227735414ee40a4bab6620e.tar.gz
MFC r269646: Use a SYSINIT to init the array of interrupt names on arm.
Diffstat (limited to 'sys/arm')
-rw-r--r--sys/arm/arm/intr.c7
-rw-r--r--sys/arm/arm/machdep.c1
2 files changed, 5 insertions, 3 deletions
diff --git a/sys/arm/arm/intr.c b/sys/arm/arm/intr.c
index ba15127..83eca07 100644
--- a/sys/arm/arm/intr.c
+++ b/sys/arm/arm/intr.c
@@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/syslog.h>
+#include <sys/kernel.h>
#include <sys/malloc.h>
#include <sys/proc.h>
#include <sys/bus.h>
@@ -75,8 +76,8 @@ size_t sintrnames = sizeof(intrnames);
* assumptions of vmstat(8) and the kdb "show intrcnt" command, the two
* consumers of this data.
*/
-void
-arm_intrnames_init(void)
+static void
+intr_init(void *unused)
{
int i;
@@ -86,6 +87,8 @@ arm_intrnames_init(void)
}
}
+SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL);
+
void
arm_setup_irqhandler(const char *name, driver_filter_t *filt,
void (*hand)(void*), void *arg, int irq, int flags, void **cookiep)
diff --git a/sys/arm/arm/machdep.c b/sys/arm/arm/machdep.c
index 2b7c3869..f6c6d2b 100644
--- a/sys/arm/arm/machdep.c
+++ b/sys/arm/arm/machdep.c
@@ -1277,7 +1277,6 @@ initarm(struct arm_boot_params *abp)
init_proc0(kernelstack.pv_va);
- arm_intrnames_init();
arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL);
pmap_bootstrap(freemempos, &kernel_l1pt);
msgbufp = (void *)msgbufpv.pv_va;
OpenPOWER on IntegriCloud