aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Chigot <chigot@adacore.com>2024-01-05 11:24:18 +0100
committerPhilippe Mathieu-Daudé <philmd@linaro.org>2024-01-05 16:20:15 +0100
commita318da6b3f6a88e6cfd6953c519def9457e8962f (patch)
tree49c96ca40adf845c0ead460d08bce0bf0d0a2b91
parent25145a7d7735344a469551946fc2a7f19eb4aa3d (diff)
downloadqemu-a318da6b3f6a88e6cfd6953c519def9457e8962f.zip
qemu-a318da6b3f6a88e6cfd6953c519def9457e8962f.tar.gz
qemu-a318da6b3f6a88e6cfd6953c519def9457e8962f.tar.bz2
target/sparc: Simplify qemu_irq_ack
This is a simple cleanup, since env is passed to qemu_irq_ack it can be accessed from inside qemu_irq_ack. Just drop this parameter. Co-developed-by: Frederic Konrad <konrad.frederic@yahoo.fr> Signed-off-by: Clément Chigot <chigot@adacore.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20240105102421.163554-7-chigot@adacore.com>
-rw-r--r--hw/sparc/leon3.c8
-rw-r--r--target/sparc/cpu.h2
-rw-r--r--target/sparc/int32_helper.c2
3 files changed, 6 insertions, 6 deletions
diff --git a/hw/sparc/leon3.c b/hw/sparc/leon3.c
index 1e39d2e..2dfb742 100644
--- a/hw/sparc/leon3.c
+++ b/hw/sparc/leon3.c
@@ -164,9 +164,9 @@ static void leon3_cache_control_int(CPUSPARCState *env)
}
}
-static void leon3_irq_ack(void *irq_manager, int intno)
+static void leon3_irq_ack(CPUSPARCState *env, int intno)
{
- grlib_irqmp_ack((DeviceState *)irq_manager, intno);
+ grlib_irqmp_ack(env->irq_manager, intno);
}
/*
@@ -208,9 +208,9 @@ static void leon3_set_pil_in(void *opaque, int n, int level)
}
}
-static void leon3_irq_manager(CPUSPARCState *env, void *irq_manager, int intno)
+static void leon3_irq_manager(CPUSPARCState *env, int intno)
{
- leon3_irq_ack(irq_manager, intno);
+ leon3_irq_ack(env, intno);
leon3_cache_control_int(env);
}
diff --git a/target/sparc/cpu.h b/target/sparc/cpu.h
index 6999a10..12a11ec 100644
--- a/target/sparc/cpu.h
+++ b/target/sparc/cpu.h
@@ -549,7 +549,7 @@ struct CPUArchState {
sparc_def_t def;
void *irq_manager;
- void (*qemu_irq_ack)(CPUSPARCState *env, void *irq_manager, int intno);
+ void (*qemu_irq_ack)(CPUSPARCState *env, int intno);
/* Leon3 cache control */
uint32_t cache_control;
diff --git a/target/sparc/int32_helper.c b/target/sparc/int32_helper.c
index 1563613..8f4e08e 100644
--- a/target/sparc/int32_helper.c
+++ b/target/sparc/int32_helper.c
@@ -160,7 +160,7 @@ void sparc_cpu_do_interrupt(CPUState *cs)
#if !defined(CONFIG_USER_ONLY)
/* IRQ acknowledgment */
if ((intno & ~15) == TT_EXTINT && env->qemu_irq_ack != NULL) {
- env->qemu_irq_ack(env, env->irq_manager, intno);
+ env->qemu_irq_ack(env, intno);
}
#endif
}