aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCédric Le Goater <clg@kaod.org>2017-02-27 15:29:26 +0100
committerDavid Gibson <david@gibson.dropbear.id.au>2017-03-01 11:23:39 +1100
commitb0ec31290cbf0df4c9945370aeb921248995543d (patch)
treeea4c0ccdcf6f1c33b84231ff4016ccf6f170b92b
parentb4f27d71e3c98c9c4590de40d478004b8482b277 (diff)
downloadqemu-b0ec31290cbf0df4c9945370aeb921248995543d.zip
qemu-b0ec31290cbf0df4c9945370aeb921248995543d.tar.gz
qemu-b0ec31290cbf0df4c9945370aeb921248995543d.tar.bz2
ppc/xics: simplify spapr_dt_xics() interface
spapr_dt_xics() only needs the number of servers to build the device tree nodes. Let's change the routine interface to reflect that. Signed-off-by: Cédric Le Goater <clg@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rw-r--r--hw/intc/xics_spapr.c4
-rw-r--r--hw/ppc/spapr.c2
-rw-r--r--include/hw/ppc/xics.h2
3 files changed, 4 insertions, 4 deletions
diff --git a/hw/intc/xics_spapr.c b/hw/intc/xics_spapr.c
index bc62b0c..35045a2 100644
--- a/hw/intc/xics_spapr.c
+++ b/hw/intc/xics_spapr.c
@@ -387,10 +387,10 @@ void spapr_ics_free(ICSState *ics, int irq, int num)
}
}
-void spapr_dt_xics(XICSState *xics, void *fdt, uint32_t phandle)
+void spapr_dt_xics(int nr_servers, void *fdt, uint32_t phandle)
{
uint32_t interrupt_server_ranges_prop[] = {
- 0, cpu_to_be32(xics->nr_servers),
+ 0, cpu_to_be32(nr_servers),
};
int node;
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index f9289c6..7ad932f 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -966,7 +966,7 @@ static void *spapr_build_fdt(sPAPRMachineState *spapr,
_FDT(fdt_setprop_cell(fdt, 0, "#size-cells", 2));
/* /interrupt controller */
- spapr_dt_xics(spapr->xics, fdt, PHANDLE_XICP);
+ spapr_dt_xics(spapr->xics->nr_servers, fdt, PHANDLE_XICP);
ret = spapr_populate_memory(spapr, fdt);
if (ret < 0) {
diff --git a/include/hw/ppc/xics.h b/include/hw/ppc/xics.h
index c57e80e..f618848 100644
--- a/include/hw/ppc/xics.h
+++ b/include/hw/ppc/xics.h
@@ -202,7 +202,7 @@ int spapr_ics_alloc(ICSState *ics, int irq_hint, bool lsi, Error **errp);
int spapr_ics_alloc_block(ICSState *ics, int num, bool lsi, bool align,
Error **errp);
void spapr_ics_free(ICSState *ics, int irq, int num);
-void spapr_dt_xics(XICSState *xics, void *fdt, uint32_t phandle);
+void spapr_dt_xics(int nr_servers, void *fdt, uint32_t phandle);
qemu_irq xics_get_qirq(XICSFabric *xi, int irq);
ICPState *xics_icp_get(XICSFabric *xi, int server);