aboutsummaryrefslogtreecommitdiff
path: root/sys/arm64/arm64/mp_machdep.c
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2016-07-14 17:31:29 +0000
committerAndrew Turner <andrew@FreeBSD.org>2016-07-14 17:31:29 +0000
commit5d94bbc2412822273465fc12905e25ce5a7e5e5b (patch)
treec7527b557065dbb5994433bbb2a266d69839eb02 /sys/arm64/arm64/mp_machdep.c
parentec1172ed92815f504dce664c5a595d1c2d0a93cc (diff)
downloadsrc-5d94bbc2412822273465fc12905e25ce5a7e5e5b.tar.gz
src-5d94bbc2412822273465fc12905e25ce5a7e5e5b.zip
Finish removing the non-INTRNG support from sys/arm64.
Obtained from: ABT Systems Ltd MFC after: 1 month Sponsored by: The FreeBSD Foundation
Notes
Notes: svn path=/head/; revision=302853
Diffstat (limited to 'sys/arm64/arm64/mp_machdep.c')
-rw-r--r--sys/arm64/arm64/mp_machdep.c61
1 files changed, 0 insertions, 61 deletions
diff --git a/sys/arm64/arm64/mp_machdep.c b/sys/arm64/arm64/mp_machdep.c
index ee0524470f4c..5256dcfbdf4b 100644
--- a/sys/arm64/arm64/mp_machdep.c
+++ b/sys/arm64/arm64/mp_machdep.c
@@ -65,7 +65,6 @@ __FBSDID("$FreeBSD$");
#include <dev/psci/psci.h>
-#ifdef INTRNG
#include "pic_if.h"
typedef void intr_ipi_send_t(void *, cpuset_t, u_int);
@@ -86,7 +85,6 @@ static struct intr_ipi ipi_sources[INTR_IPI_COUNT];
static struct intr_ipi *intr_ipi_lookup(u_int);
static void intr_pic_ipi_setup(u_int, const char *, intr_ipi_handler_t *,
void *);
-#endif /* INTRNG */
boolean_t ofw_cpu_reg(phandle_t node, u_int, cell_t *);
@@ -214,18 +212,12 @@ release_aps(void *dummy __unused)
{
int cpu, i;
-#ifdef INTRNG
intr_pic_ipi_setup(IPI_AST, "ast", ipi_ast, NULL);
intr_pic_ipi_setup(IPI_PREEMPT, "preempt", ipi_preempt, NULL);
intr_pic_ipi_setup(IPI_RENDEZVOUS, "rendezvous", ipi_rendezvous, NULL);
intr_pic_ipi_setup(IPI_STOP, "stop", ipi_stop, NULL);
intr_pic_ipi_setup(IPI_STOP_HARD, "stop hard", ipi_stop, NULL);
intr_pic_ipi_setup(IPI_HARDCLOCK, "hardclock", ipi_hardclock, NULL);
-#else
- /* Setup the IPI handler */
- for (i = 0; i < INTR_IPI_COUNT; i++)
- arm_setup_ipihandler(ipi_handler, i);
-#endif
atomic_store_rel_int(&aps_ready, 1);
/* Wake up the other CPUs */
@@ -253,9 +245,6 @@ void
init_secondary(uint64_t cpu)
{
struct pcpu *pcpup;
-#ifndef INTRNG
- int i;
-#endif
pcpup = &__pcpu[cpu];
/*
@@ -282,15 +271,7 @@ init_secondary(uint64_t cpu)
*/
identify_cpu();
-#ifdef INTRNG
intr_pic_init_secondary();
-#else
- /* Configure the interrupt controller */
- arm_init_secondary();
-
- for (i = 0; i < INTR_IPI_COUNT; i++)
- arm_unmask_ipi(i);
-#endif
/* Start per-CPU event timers. */
cpu_initclocks_ap();
@@ -322,7 +303,6 @@ init_secondary(uint64_t cpu)
/* NOTREACHED */
}
-#ifdef INTRNG
/*
* Send IPI thru interrupt controller.
*/
@@ -378,7 +358,6 @@ intr_ipi_send(cpuset_t cpus, u_int ipi)
ii->ii_send(ii->ii_send_arg, cpus, ipi);
}
-#endif
static void
ipi_ast(void *dummy __unused)
@@ -432,44 +411,6 @@ ipi_stop(void *dummy __unused)
CTR0(KTR_SMP, "IPI_STOP (restart)");
}
-#ifndef INTRNG
-static int
-ipi_handler(void *arg)
-{
- u_int cpu, ipi;
-
- arg = (void *)((uintptr_t)arg & ~(1 << 16));
- KASSERT((uintptr_t)arg < INTR_IPI_COUNT,
- ("Invalid IPI %ju", (uintptr_t)arg));
-
- cpu = PCPU_GET(cpuid);
- ipi = (uintptr_t)arg;
-
- switch(ipi) {
- case IPI_AST:
- ipi_ast(NULL);
- break;
- case IPI_PREEMPT:
- ipi_preempt(NULL);
- break;
- case IPI_RENDEZVOUS:
- ipi_rendezvous(NULL);
- break;
- case IPI_STOP:
- case IPI_STOP_HARD:
- ipi_stop(NULL);
- break;
- case IPI_HARDCLOCK:
- ipi_hardclock(NULL);
- break;
- default:
- panic("Unknown IPI %#0x on cpu %d", ipi, curcpu);
- }
-
- return (FILTER_HANDLED);
-}
-#endif
-
struct cpu_group *
cpu_topo(void)
{
@@ -624,7 +565,6 @@ cpu_mp_setmaxid(void)
mp_maxid = 0;
}
-#ifdef INTRNG
/*
* Lookup IPI source.
*/
@@ -768,4 +708,3 @@ ipi_selected(cpuset_t cpus, u_int ipi)
CTR2(KTR_SMP, "%s: ipi: %x", __func__, ipi);
intr_ipi_send(cpus, ipi);
}
-#endif /* INTRNG */