mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 01:33:56 -06:00
spapr: Make DRC get_index and get_type methods into plain functions
These two methods only have one implementation, and the spec they're implementing means any other implementation is unlikely, verging on impossible. So replace them with simple functions. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Reviewed-by: Laurent Vivier <lvivier@redhat.com> Tested-by: Daniel Barboza <danielhb@linux.vnet.ibm.com>
This commit is contained in:
parent
4f65ce00ab
commit
0b55aa91c9
5 changed files with 44 additions and 54 deletions
|
@ -456,15 +456,13 @@ static void spapr_populate_cpu_dt(CPUState *cs, void *fdt, int offset,
|
|||
uint32_t pft_size_prop[] = {0, cpu_to_be32(spapr->htab_shift)};
|
||||
int compat_smt = MIN(smp_threads, ppc_compat_max_threads(cpu));
|
||||
sPAPRDRConnector *drc;
|
||||
sPAPRDRConnectorClass *drck;
|
||||
int drc_index;
|
||||
uint32_t radix_AP_encodings[PPC_PAGE_SIZES_MAX_SZ];
|
||||
int i;
|
||||
|
||||
drc = spapr_dr_connector_by_id(SPAPR_DR_CONNECTOR_TYPE_CPU, index);
|
||||
if (drc) {
|
||||
drck = SPAPR_DR_CONNECTOR_GET_CLASS(drc);
|
||||
drc_index = drck->get_index(drc);
|
||||
drc_index = spapr_drc_index(drc);
|
||||
_FDT((fdt_setprop_cell(fdt, offset, "ibm,my-drc-index", drc_index)));
|
||||
}
|
||||
|
||||
|
@ -654,15 +652,13 @@ static int spapr_populate_drconf_memory(sPAPRMachineState *spapr, void *fdt)
|
|||
|
||||
if (i >= hotplug_lmb_start) {
|
||||
sPAPRDRConnector *drc;
|
||||
sPAPRDRConnectorClass *drck;
|
||||
|
||||
drc = spapr_dr_connector_by_id(SPAPR_DR_CONNECTOR_TYPE_LMB, i);
|
||||
g_assert(drc);
|
||||
drck = SPAPR_DR_CONNECTOR_GET_CLASS(drc);
|
||||
|
||||
dynamic_memory[0] = cpu_to_be32(addr >> 32);
|
||||
dynamic_memory[1] = cpu_to_be32(addr & 0xffffffff);
|
||||
dynamic_memory[2] = cpu_to_be32(drck->get_index(drc));
|
||||
dynamic_memory[2] = cpu_to_be32(spapr_drc_index(drc));
|
||||
dynamic_memory[3] = cpu_to_be32(0); /* reserved */
|
||||
dynamic_memory[4] = cpu_to_be32(numa_get_node(addr, NULL));
|
||||
if (memory_region_present(get_system_memory(), addr)) {
|
||||
|
@ -2560,7 +2556,7 @@ static void spapr_add_lmbs(DeviceState *dev, uint64_t addr_start, uint64_t size,
|
|||
drck = SPAPR_DR_CONNECTOR_GET_CLASS(drc);
|
||||
spapr_hotplug_req_add_by_count_indexed(SPAPR_DR_CONNECTOR_TYPE_LMB,
|
||||
nr_lmbs,
|
||||
drck->get_index(drc));
|
||||
spapr_drc_index(drc));
|
||||
} else {
|
||||
spapr_hotplug_req_add_by_count(SPAPR_DR_CONNECTOR_TYPE_LMB,
|
||||
nr_lmbs);
|
||||
|
@ -2770,8 +2766,7 @@ static void spapr_memory_unplug_request(HotplugHandler *hotplug_dev,
|
|||
addr_start / SPAPR_MEMORY_BLOCK_SIZE);
|
||||
drck = SPAPR_DR_CONNECTOR_GET_CLASS(drc);
|
||||
spapr_hotplug_req_remove_by_count_indexed(SPAPR_DR_CONNECTOR_TYPE_LMB,
|
||||
nr_lmbs,
|
||||
drck->get_index(drc));
|
||||
nr_lmbs, spapr_drc_index(drc));
|
||||
out:
|
||||
error_propagate(errp, local_err);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue