freertos: fix arm64 ipi number warning [1/1]

PD#SWPL-252056

Problem:
fix arm64 ipi number warning

Solution:
fix arm64 ipi number warning

Verify:
local

Change-Id: Iec753dc8265c927782a3a5e75b90e557868d15e8
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
This commit is contained in:
qinglin.li
2026-01-14 10:55:14 +08:00
committed by gerrit autosubmit
parent bd3f73a36b
commit bfb883e5ac
@@ -1,4 +1,4 @@
From 35ce0b1b91753edc9d327085058427ba436204d2 Mon Sep 17 00:00:00 2001
From c383f848eb171c0dcb6279b3d24a55fb261225d3 Mon Sep 17 00:00:00 2001
From: "wanwei.jiang" <wanwei.jiang@amlogic.com>
Date: Mon, 28 Feb 2022 09:54:55 +0800
Subject: [PATCH] freertos: add freertos support [1/1]
@@ -21,10 +21,10 @@ Change-Id: Ib2b18fbcb026afa8df7654eac90355f080e9a74b
Signed-off-by: wanwei.jiang <wanwei.jiang@amlogic.com>
---
arch/arm/kernel/smp.c | 22 +++++++++++++++++++
arch/arm64/kernel/smp.c | 23 ++++++++++++++++++++
arch/arm64/kernel/smp.c | 21 +++++++++++++++++++
drivers/irqchip/irq-gic-common.c | 36 ++++++++++++++++++++++++++++++++
drivers/irqchip/irq-gic.c | 20 +++++++++++++++++-
4 files changed, 100 insertions(+), 1 deletion(-)
4 files changed, 98 insertions(+), 1 deletion(-)
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index 306b5da28c23e..f8f30ae23f494 100644
@@ -81,7 +81,7 @@ index 306b5da28c23e..f8f30ae23f494 100644
{
unsigned long timeout;
diff --git a/arch/arm64/kernel/smp.c b/arch/arm64/kernel/smp.c
index 15ad0056aa903..157d3317a5e5a 100644
index 15ad0056aa903..9625003ef1a43 100644
--- a/arch/arm64/kernel/smp.c
+++ b/arch/arm64/kernel/smp.c
@@ -53,6 +53,10 @@
@@ -95,16 +95,16 @@ index 15ad0056aa903..157d3317a5e5a 100644
#include <trace/events/ipi.h>
#undef CREATE_TRACE_POINTS
#include <trace/hooks/debug.h>
@@ -81,6 +85,9 @@ enum ipi_msg_type {
IPI_CPU_STOP_NMI,
@@ -82,6 +86,9 @@ enum ipi_msg_type {
IPI_TIMER,
IPI_IRQ_WORK,
+#if IS_ENABLED(CONFIG_AMLOGIC_FREERTOS)
+ IPI_FREERTOS = 7,
+#endif
NR_IPI,
+#if IS_ENABLED(CONFIG_AMLOGIC_FREERTOS)
+ IPI_FREERTOS = NR_IPI,
+#endif
/*
* Any enum >= NR_IPI and < MAX_IPI is special and not tracable
* with trace_ipi_*
@@ -844,6 +851,9 @@ static const char *ipi_types[MAX_IPI] __tracepoint_string = {
[IPI_CPU_STOP_NMI] = "CPU stop NMIs",
[IPI_TIMER] = "Timer broadcast interrupts",
@@ -129,19 +129,17 @@ index 15ad0056aa903..157d3317a5e5a 100644
static void __noreturn local_cpu_stop(unsigned int cpu)
{
set_cpu_online(cpu, false);
@@ -1007,6 +1024,12 @@ static void do_handle_IPI(int ipinr)
break;
@@ -1008,6 +1025,10 @@ static void do_handle_IPI(int ipinr)
#endif
+#if IS_ENABLED(CONFIG_AMLOGIC_FREERTOS)
+ case IPI_FREERTOS:
+ freertos_finish();
+ break;
+#endif
+
case IPI_CPU_BACKTRACE:
+#if IS_ENABLED(CONFIG_AMLOGIC_FREERTOS)
+ if (!freertos_finish())
+ break;
+#endif
/*
* NOTE: in some cases this _won't_ be NMI context. See the
* comment in arch_trigger_cpumask_backtrace().
diff --git a/drivers/irqchip/irq-gic-common.c b/drivers/irqchip/irq-gic-common.c
index c776f9142610e..49d9ba429ecd5 100644
--- a/drivers/irqchip/irq-gic-common.c