From 6a89557ef31b14e2346ff1ab8020d21ace9e5c31 Mon Sep 17 00:00:00 2001 From: kettenis Date: Mon, 7 Nov 2022 18:56:20 +0000 Subject: [PATCH] Implement the "halt" IPI. ok patrick@ --- sys/arch/arm64/dev/aplintc.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/arch/arm64/dev/aplintc.c b/sys/arch/arm64/dev/aplintc.c index c663ed04cfc..3c60feaa38b 100644 --- a/sys/arch/arm64/dev/aplintc.c +++ b/sys/arch/arm64/dev/aplintc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: aplintc.c,v 1.13 2022/08/22 12:34:55 tobhe Exp $ */ +/* $OpenBSD: aplintc.c,v 1.14 2022/11/07 18:56:20 kettenis Exp $ */ /* * Copyright (c) 2021 Mark Kettenis * @@ -635,6 +635,9 @@ aplintc_handle_ipi(struct aplintc_softc *sc) #ifdef DDB db_enter(); #endif + } else if (sc->sc_ipi_reason[ci->ci_cpuid] == ARM_IPI_HALT) { + sc->sc_ipi_reason[ci->ci_cpuid] = ARM_IPI_NOP; + cpu_halt(); } sc->sc_ipi_count.ec_count++; -- 2.20.1