aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOleksandr Tymoshenko <gonzo@FreeBSD.org>2021-02-01 07:56:22 +0000
committerOleksandr Tymoshenko <gonzo@FreeBSD.org>2021-02-01 07:56:22 +0000
commitd6f9c5a6d2f87865f9714d2b8dfd1a9f3080c71e (patch)
tree278d7b15377c0f4ee17978b1b1be70490335d7f1
parente6ff6154d2034c13f3d0da73c1e00d69fdb36516 (diff)
-rw-r--r--sys/mips/nlm/intr_machdep.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/sys/mips/nlm/intr_machdep.c b/sys/mips/nlm/intr_machdep.c
index b66118c06ee8..33bfad1fe882 100644
--- a/sys/mips/nlm/intr_machdep.c
+++ b/sys/mips/nlm/intr_machdep.c
@@ -59,6 +59,17 @@ __FBSDID("$FreeBSD$");
#include <mips/nlm/hal/pic.h>
#include <mips/nlm/xlp.h>
+#define INTRCNT_COUNT 256
+#define INTRNAME_LEN (2*MAXCOMLEN + 1)
+
+MALLOC_DECLARE(M_MIPSINTR);
+MALLOC_DEFINE(M_MIPSINTR, "mipsintr", "MIPS interrupt handling");
+
+u_long *intrcnt;
+char *intrnames;
+size_t sintrcnt;
+size_t sintrnames;
+
struct xlp_intrsrc {
void (*bus_ack)(int, void *); /* Additional ack */
void *bus_ack_arg; /* arg for additional ack */
@@ -295,6 +306,13 @@ cpu_init_interrupts()
int i;
char name[MAXCOMLEN + 1];
+ intrcnt = mallocarray(INTRCNT_COUNT, sizeof(u_long), M_MIPSINTR,
+ M_WAITOK | M_ZERO);
+ intrnames = mallocarray(INTRCNT_COUNT, INTRNAME_LEN, M_MIPSINTR,
+ M_WAITOK | M_ZERO);
+ sintrcnt = INTRCNT_COUNT * sizeof(u_long);
+ sintrnames = INTRCNT_COUNT * INTRNAME_LEN;
+
/*
* Initialize all available vectors so spare IRQ
* would show up in systat output