[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PATCH v5 02/14] xics: move reset and cpu_setup
From: |
Alexey Kardashevskiy |
Subject: |
[Qemu-ppc] [PATCH v5 02/14] xics: move reset and cpu_setup |
Date: |
Thu, 26 Sep 2013 16:18:36 +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 bb018d1..a0d71ef 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 v5 00/14] xics: reworks and in-kernel support, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 01/14] target-ppc: Add helper for KVM_PPC_RTAS_DEFINE_TOKEN, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 09/14] xics: add cpu_setup callback, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 10/14] xics-kvm: Support for in-kernel XICS interrupt controller, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 02/14] xics: move reset and cpu_setup,
Alexey Kardashevskiy <=
- [Qemu-ppc] [PATCH v5 03/14] spapr: move cpu_setup after kvmppc_set_papr, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 07/14] xics: add missing const specifiers to TypeInfo, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 04/14] xics: replace fprintf with error_report, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 14/14] spapr-pci: enable irqfd for INTx, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 05/14] xics: add pre_save/post_load dispatchers, Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 06/14] xics: convert init() to realize(), Alexey Kardashevskiy, 2013/09/26
- [Qemu-ppc] [PATCH v5 08/14] xics: split to xics and xics-common, Alexey Kardashevskiy, 2013/09/26