ppc/spapr: remove deprecated machine pseries-3.1
pseries-3.1 had been deprecated and due for removal now as per policy. Also remove backward compatibility flags and related code introduced for pre pseries-4.0 machines. Suggested-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Cédric Le Goater <clg@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Link: https://lore.kernel.org/qemu-devel/20251021084346.73671-4-philmd@linaro.org Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
This commit is contained in:
parent
d9b3b2079a
commit
ca9c5112f6
3 changed files with 5 additions and 65 deletions
|
|
@ -1182,7 +1182,6 @@ void *spapr_build_fdt(SpaprMachineState *spapr, bool reset, size_t space)
|
|||
{
|
||||
MachineState *machine = MACHINE(spapr);
|
||||
MachineClass *mc = MACHINE_GET_CLASS(machine);
|
||||
SpaprMachineClass *smc = SPAPR_MACHINE_GET_CLASS(machine);
|
||||
uint32_t root_drc_type_mask = 0;
|
||||
int ret;
|
||||
void *fdt;
|
||||
|
|
@ -1213,16 +1212,10 @@ void *spapr_build_fdt(SpaprMachineState *spapr, bool reset, size_t space)
|
|||
/* Host Model & Serial Number */
|
||||
if (spapr->host_model) {
|
||||
_FDT(fdt_setprop_string(fdt, 0, "host-model", spapr->host_model));
|
||||
} else if (smc->broken_host_serial_model && kvmppc_get_host_model(&buf)) {
|
||||
_FDT(fdt_setprop_string(fdt, 0, "host-model", buf));
|
||||
g_free(buf);
|
||||
}
|
||||
|
||||
if (spapr->host_serial) {
|
||||
_FDT(fdt_setprop_string(fdt, 0, "host-serial", spapr->host_serial));
|
||||
} else if (smc->broken_host_serial_model && kvmppc_get_host_serial(&buf)) {
|
||||
_FDT(fdt_setprop_string(fdt, 0, "host-serial", buf));
|
||||
g_free(buf);
|
||||
}
|
||||
|
||||
_FDT(fdt_setprop_cell(fdt, 0, "#address-cells", 2));
|
||||
|
|
@ -1260,9 +1253,8 @@ void *spapr_build_fdt(SpaprMachineState *spapr, bool reset, size_t space)
|
|||
|
||||
/* ibm,drc-indexes and friends */
|
||||
root_drc_type_mask |= SPAPR_DR_CONNECTOR_TYPE_LMB;
|
||||
if (smc->dr_phb_enabled) {
|
||||
root_drc_type_mask |= SPAPR_DR_CONNECTOR_TYPE_PHB;
|
||||
}
|
||||
root_drc_type_mask |= SPAPR_DR_CONNECTOR_TYPE_PHB;
|
||||
|
||||
if (mc->nvdimm_supported) {
|
||||
root_drc_type_mask |= SPAPR_DR_CONNECTOR_TYPE_PMEM;
|
||||
}
|
||||
|
|
@ -2063,9 +2055,7 @@ static const VMStateDescription vmstate_spapr_irq_map = {
|
|||
|
||||
static bool spapr_dtb_needed(void *opaque)
|
||||
{
|
||||
SpaprMachineClass *smc = SPAPR_MACHINE_GET_CLASS(opaque);
|
||||
|
||||
return smc->update_dt_enabled;
|
||||
return true; /* backward migration compat */
|
||||
}
|
||||
|
||||
static int spapr_dtb_pre_load(void *opaque)
|
||||
|
|
@ -3009,10 +2999,8 @@ static void spapr_machine_init(MachineState *machine)
|
|||
* connectors for a PHBs PCI slots) are added as needed during their
|
||||
* parent's realization.
|
||||
*/
|
||||
if (smc->dr_phb_enabled) {
|
||||
for (i = 0; i < SPAPR_MAX_PHBS; i++) {
|
||||
spapr_dr_connector_new(OBJECT(machine), TYPE_SPAPR_DRC_PHB, i);
|
||||
}
|
||||
for (i = 0; i < SPAPR_MAX_PHBS; i++) {
|
||||
spapr_dr_connector_new(OBJECT(machine), TYPE_SPAPR_DRC_PHB, i);
|
||||
}
|
||||
|
||||
/* Set up PCI */
|
||||
|
|
@ -4095,11 +4083,6 @@ static bool spapr_phb_pre_plug(HotplugHandler *hotplug_dev, DeviceState *dev,
|
|||
const unsigned windows_supported = spapr_phb_windows_supported(sphb);
|
||||
SpaprDrc *drc;
|
||||
|
||||
if (dev->hotplugged && !smc->dr_phb_enabled) {
|
||||
error_setg(errp, "PHB hotplug not supported for this machine");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (sphb->index == (uint32_t)-1) {
|
||||
error_setg(errp, "\"index\" for PAPR PHB is mandatory");
|
||||
return false;
|
||||
|
|
@ -4125,16 +4108,10 @@ static bool spapr_phb_pre_plug(HotplugHandler *hotplug_dev, DeviceState *dev,
|
|||
|
||||
static void spapr_phb_plug(HotplugHandler *hotplug_dev, DeviceState *dev)
|
||||
{
|
||||
SpaprMachineState *spapr = SPAPR_MACHINE(OBJECT(hotplug_dev));
|
||||
SpaprMachineClass *smc = SPAPR_MACHINE_GET_CLASS(spapr);
|
||||
SpaprPhbState *sphb = SPAPR_PCI_HOST_BRIDGE(dev);
|
||||
SpaprDrc *drc;
|
||||
bool hotplugged = spapr_drc_hotplugged(dev);
|
||||
|
||||
if (!smc->dr_phb_enabled) {
|
||||
return;
|
||||
}
|
||||
|
||||
drc = spapr_drc_by_id(TYPE_SPAPR_DRC_PHB, sphb->index);
|
||||
/* hotplug hooks should check it's enabled before getting this far */
|
||||
assert(drc);
|
||||
|
|
@ -4260,7 +4237,6 @@ static void spapr_machine_device_unplug_request(HotplugHandler *hotplug_dev,
|
|||
{
|
||||
SpaprMachineState *sms = SPAPR_MACHINE(OBJECT(hotplug_dev));
|
||||
MachineClass *mc = MACHINE_GET_CLASS(sms);
|
||||
SpaprMachineClass *smc = SPAPR_MACHINE_CLASS(mc);
|
||||
|
||||
if (object_dynamic_cast(OBJECT(dev), TYPE_PC_DIMM)) {
|
||||
if (spapr_memory_hot_unplug_supported(sms)) {
|
||||
|
|
@ -4275,10 +4251,6 @@ static void spapr_machine_device_unplug_request(HotplugHandler *hotplug_dev,
|
|||
}
|
||||
spapr_core_unplug_request(hotplug_dev, dev, errp);
|
||||
} else if (object_dynamic_cast(OBJECT(dev), TYPE_SPAPR_PCI_HOST_BRIDGE)) {
|
||||
if (!smc->dr_phb_enabled) {
|
||||
error_setg(errp, "PHB hot unplug not supported on this machine");
|
||||
return;
|
||||
}
|
||||
spapr_phb_unplug_request(hotplug_dev, dev, errp);
|
||||
} else if (object_dynamic_cast(OBJECT(dev), TYPE_SPAPR_TPM_PROXY)) {
|
||||
spapr_tpm_proxy_unplug(hotplug_dev, dev);
|
||||
|
|
@ -4634,7 +4606,6 @@ static void spapr_machine_class_init(ObjectClass *oc, const void *data)
|
|||
hc->unplug_request = spapr_machine_device_unplug_request;
|
||||
hc->unplug = spapr_machine_device_unplug;
|
||||
|
||||
smc->update_dt_enabled = true;
|
||||
mc->default_cpu_type = POWERPC_CPU_TYPE_NAME("power10_v2.0");
|
||||
mc->has_hotpluggable_cpus = true;
|
||||
mc->nvdimm_supported = true;
|
||||
|
|
@ -4688,7 +4659,6 @@ static void spapr_machine_class_init(ObjectClass *oc, const void *data)
|
|||
smc->default_caps.caps[SPAPR_CAP_AIL_MODE_3] = SPAPR_CAP_ON;
|
||||
spapr_caps_add_properties(smc);
|
||||
smc->irq = &spapr_irq_dual;
|
||||
smc->dr_phb_enabled = true;
|
||||
smc->linux_pci_probe = true;
|
||||
smc->smp_threads_vsmt = true;
|
||||
xfc->match_nvt = spapr_match_nvt;
|
||||
|
|
@ -5032,28 +5002,6 @@ static void spapr_machine_4_0_class_options(MachineClass *mc)
|
|||
|
||||
DEFINE_SPAPR_MACHINE(4, 0);
|
||||
|
||||
/*
|
||||
* pseries-3.1
|
||||
*/
|
||||
static void spapr_machine_3_1_class_options(MachineClass *mc)
|
||||
{
|
||||
SpaprMachineClass *smc = SPAPR_MACHINE_CLASS(mc);
|
||||
|
||||
spapr_machine_4_0_class_options(mc);
|
||||
compat_props_add(mc->compat_props, hw_compat_3_1, hw_compat_3_1_len);
|
||||
|
||||
mc->default_cpu_type = POWERPC_CPU_TYPE_NAME("power8_v2.0");
|
||||
smc->update_dt_enabled = false;
|
||||
smc->dr_phb_enabled = false;
|
||||
smc->broken_host_serial_model = true;
|
||||
smc->default_caps.caps[SPAPR_CAP_CFPC] = SPAPR_CAP_BROKEN;
|
||||
smc->default_caps.caps[SPAPR_CAP_SBBC] = SPAPR_CAP_BROKEN;
|
||||
smc->default_caps.caps[SPAPR_CAP_IBS] = SPAPR_CAP_BROKEN;
|
||||
smc->default_caps.caps[SPAPR_CAP_LARGE_DECREMENTER] = SPAPR_CAP_OFF;
|
||||
}
|
||||
|
||||
DEFINE_SPAPR_MACHINE(3, 1);
|
||||
|
||||
static void spapr_machine_register_types(void)
|
||||
{
|
||||
type_register_static(&spapr_machine_info);
|
||||
|
|
|
|||
|
|
@ -1475,16 +1475,11 @@ static target_ulong h_update_dt(PowerPCCPU *cpu, SpaprMachineState *spapr,
|
|||
target_ulong dt = ppc64_phys_to_real(args[0]);
|
||||
struct fdt_header hdr = { 0 };
|
||||
unsigned cb;
|
||||
SpaprMachineClass *smc = SPAPR_MACHINE_GET_CLASS(spapr);
|
||||
void *fdt;
|
||||
|
||||
cpu_physical_memory_read(dt, &hdr, sizeof(hdr));
|
||||
cb = fdt32_to_cpu(hdr.totalsize);
|
||||
|
||||
if (!smc->update_dt_enabled) {
|
||||
return H_SUCCESS;
|
||||
}
|
||||
|
||||
/* Check that the fdt did not grow out of proportion */
|
||||
if (cb > spapr->fdt_initial_size * 2) {
|
||||
trace_spapr_update_dt_failed_size(spapr->fdt_initial_size, cb,
|
||||
|
|
|
|||
|
|
@ -143,9 +143,6 @@ struct SpaprMachineClass {
|
|||
MachineClass parent_class;
|
||||
|
||||
/*< public >*/
|
||||
bool dr_phb_enabled; /* enable dynamic-reconfig/hotplug of PHBs */
|
||||
bool update_dt_enabled; /* enable KVMPPC_H_UPDATE_DT */
|
||||
bool broken_host_serial_model; /* present real host info to the guest */
|
||||
bool pre_4_1_migration; /* don't migrate hpt-max-page-size */
|
||||
bool linux_pci_probe;
|
||||
bool smp_threads_vsmt; /* set VSMT to smp_threads by default */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue