diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index 3fb5c88af9..1a3414b642 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -657,7 +657,10 @@ DEFINE_CCW_MACHINE(4_0, "4.0", true); static void ccw_machine_3_1_instance_options(MachineState *machine) { + static const S390FeatInit qemu_cpu_feat = { S390_FEAT_LIST_QEMU_V3_1 }; ccw_machine_4_0_instance_options(machine); + + s390_set_qemu_cpu_model(0x2827, 12, 2, qemu_cpu_feat); } static void ccw_machine_3_1_class_options(MachineClass *mc) diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c index b0e9b271e2..19bb8ac7f8 100644 --- a/target/s390x/gen-features.c +++ b/target/s390x/gen-features.c @@ -560,7 +560,7 @@ static uint16_t qemu_V2_11[] = { S390_FEAT_ZARCH, }; -static uint16_t qemu_LATEST[] = { +static uint16_t qemu_V3_1[] = { S390_FEAT_DAT_ENH, S390_FEAT_IDTE_SEGMENT, S390_FEAT_STFLE, @@ -592,13 +592,16 @@ static uint16_t qemu_LATEST[] = { S390_FEAT_MSA_EXT_4, }; +static uint16_t qemu_LATEST[] = { + S390_FEAT_ZPCI, +}; + /* add all new definitions before this point */ static uint16_t qemu_MAX[] = { /* z13+ features */ S390_FEAT_STFLE_53, /* generates a dependency warning, leave it out for now */ S390_FEAT_MSA_EXT_5, - S390_FEAT_ZPCI, }; /****** END FEATURE DEFS ******/ @@ -708,6 +711,7 @@ static FeatGroupDefSpec FeatGroupDef[] = { *******************************/ static FeatGroupDefSpec QemuFeatDef[] = { QEMU_FEAT_INITIALIZER(V2_11), + QEMU_FEAT_INITIALIZER(V3_1), QEMU_FEAT_INITIALIZER(LATEST), QEMU_FEAT_INITIALIZER(MAX), };