This option will enable Dynamic DMA windows (DDW) support for pseries machine.
Signed-off-by: Alexey Kardashevskiy <a...@ozlabs.ru> --- hw/ppc/spapr.c | 15 +++++++++++++++ vl.c | 4 ++++ 2 files changed, 19 insertions(+) diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index d01978f..fec295b 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -100,6 +100,7 @@ struct sPAPRMachineState { /*< public >*/ char *kvm_type; + bool ddw_supported; }; sPAPREnvironment *spapr; @@ -1570,10 +1571,24 @@ static void spapr_set_kvm_type(Object *obj, const char *value, Error **errp) sm->kvm_type = g_strdup(value); } +static bool spapr_machine_get_ddw(Object *obj, Error **errp) +{ + sPAPRMachineState *sms = SPAPR_MACHINE(obj); + return sms->ddw_supported; +} + +static void spapr_machine_set_ddw(Object *obj, bool value, Error **errp) +{ + sPAPRMachineState *sms = SPAPR_MACHINE(obj); + sms->ddw_supported = value; +} + static void spapr_machine_initfn(Object *obj) { object_property_add_str(obj, "kvm-type", spapr_get_kvm_type, spapr_set_kvm_type, NULL); + object_property_add_bool(obj, "ddw", spapr_machine_get_ddw, + spapr_machine_set_ddw, NULL); } static void spapr_machine_class_init(ObjectClass *oc, void *data) diff --git a/vl.c b/vl.c index 6e084c2..a615fb1 100644 --- a/vl.c +++ b/vl.c @@ -383,6 +383,10 @@ static QemuOptsList qemu_machine_opts = { .name = "kvm-type", .type = QEMU_OPT_STRING, .help = "Specifies the KVM virtualization mode (HV, PR)", + }, { + .name = "ddw", + .type = QEMU_OPT_BOOL, + .help = "Enable Dynamic DMA windows support (pseries only)", },{ .name = PC_MACHINE_MAX_RAM_BELOW_4G, .type = QEMU_OPT_SIZE, -- 2.0.0 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev