[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PATCH v4 02/12] xics: move reset and cpu_setup
From: |
Alexey Kardashevskiy |
Subject: |
[Qemu-ppc] [PATCH v4 02/12] xics: move reset and cpu_setup |
Date: |
Fri, 30 Aug 2013 15:28:23 +1000 |
This simple change makes following patches nicer.
Signed-off-by: Alexey Kardashevskiy <address@hidden>
---
hw/intc/xics.c | 72 +++++++++++++++++++++++++++++-----------------------------
1 file changed, 36 insertions(+), 36 deletions(-)
diff --git a/hw/intc/xics.c b/hw/intc/xics.c
index 31868c4..539a33a 100644
--- a/hw/intc/xics.c
+++ b/hw/intc/xics.c
@@ -30,6 +30,42 @@
#include "hw/ppc/spapr.h"
#include "hw/ppc/xics.h"
+void xics_cpu_setup(XICSState *icp, PowerPCCPU *cpu)
+{
+ CPUState *cs = CPU(cpu);
+ CPUPPCState *env = &cpu->env;
+ ICPState *ss = &icp->ss[cs->cpu_index];
+
+ assert(cs->cpu_index < icp->nr_servers);
+
+ switch (PPC_INPUT(env)) {
+ case PPC_FLAGS_INPUT_POWER7:
+ ss->output = env->irq_inputs[POWER7_INPUT_INT];
+ break;
+
+ case PPC_FLAGS_INPUT_970:
+ ss->output = env->irq_inputs[PPC970_INPUT_INT];
+ break;
+
+ default:
+ fprintf(stderr, "XICS interrupt controller does not support this CPU "
+ "bus model\n");
+ abort();
+ }
+}
+
+static void xics_reset(DeviceState *d)
+{
+ XICSState *icp = XICS(d);
+ int i;
+
+ for (i = 0; i < icp->nr_servers; i++) {
+ device_reset(DEVICE(&icp->ss[i]));
+ }
+
+ device_reset(DEVICE(icp->ics));
+}
+
/*
* ICP: Presentation layer
*/
@@ -600,42 +636,6 @@ static void rtas_int_on(PowerPCCPU *cpu, sPAPREnvironment
*spapr,
* XICS
*/
-static void xics_reset(DeviceState *d)
-{
- XICSState *icp = XICS(d);
- int i;
-
- for (i = 0; i < icp->nr_servers; i++) {
- device_reset(DEVICE(&icp->ss[i]));
- }
-
- device_reset(DEVICE(icp->ics));
-}
-
-void xics_cpu_setup(XICSState *icp, PowerPCCPU *cpu)
-{
- CPUState *cs = CPU(cpu);
- CPUPPCState *env = &cpu->env;
- ICPState *ss = &icp->ss[cs->cpu_index];
-
- assert(cs->cpu_index < icp->nr_servers);
-
- switch (PPC_INPUT(env)) {
- case PPC_FLAGS_INPUT_POWER7:
- ss->output = env->irq_inputs[POWER7_INPUT_INT];
- break;
-
- case PPC_FLAGS_INPUT_970:
- ss->output = env->irq_inputs[PPC970_INPUT_INT];
- break;
-
- default:
- fprintf(stderr, "XICS interrupt controller does not support this CPU "
- "bus model\n");
- abort();
- }
-}
-
static void xics_realize(DeviceState *dev, Error **errp)
{
XICSState *icp = XICS(dev);
--
1.8.4.rc4
- [Qemu-ppc] [PATCH v4 00/12] xics: reworks and in-kernel support, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 01/12] target-ppc: Add helper for KVM_PPC_RTAS_DEFINE_TOKEN, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 11/12] xics: Implement H_IPOLL, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 08/12] xics: split to xics and xics-common, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 02/12] xics: move reset and cpu_setup,
Alexey Kardashevskiy <=
- [Qemu-ppc] [PATCH v4 05/12] xics: add pre_save/post_load dispatchers, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 04/12] xics: replace fprintf with error_report, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 06/12] xics: convert init() to realize(), Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 12/12] xics: Implement H_XIRR_X, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 07/12] xics: add missing const specifiers to TypeInfo, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 10/12] xics-kvm: Support for in-kernel XICS interrupt controller, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 09/12] xics: add cpu_setup callback, Alexey Kardashevskiy, 2013/08/30
- [Qemu-ppc] [PATCH v4 03/12] spapr: move cpu_setup after kvmppc_set_papr, Alexey Kardashevskiy, 2013/08/30