Message ID | 20210907101017.27126-1-borntraeger@de.ibm.com |
---|---|
State | New |
Headers | show |
Series | [v2] s390x/cpumodel: Add more feature to gen16 default model | expand |
On 07.09.21 12:10, Christian Borntraeger wrote: > Add the new gen16 features to the default model and fence them for > machine version 6.1 and earlier. > > Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> > --- > hw/s390x/s390-virtio-ccw.c | 5 +++++ > target/s390x/gen-features.c | 8 +++++++- > 2 files changed, 12 insertions(+), 1 deletion(-) > > diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c > index 4d25278cf20e..61aeccb163f7 100644 > --- a/hw/s390x/s390-virtio-ccw.c > +++ b/hw/s390x/s390-virtio-ccw.c > @@ -803,6 +803,11 @@ DEFINE_CCW_MACHINE(6_2, "6.2", true); > static void ccw_machine_6_1_instance_options(MachineState *machine) > { > ccw_machine_6_2_instance_options(machine); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_NNPA); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_BEAR_ENH); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_RDP); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_PAI); > } > > static void ccw_machine_6_1_class_options(MachineClass *mc) > diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c > index 7d85322d6814..7cb1a6ec10be 100644 > --- a/target/s390x/gen-features.c > +++ b/target/s390x/gen-features.c > @@ -663,7 +663,13 @@ static uint16_t default_GEN15_GA1[] = { > S390_FEAT_ETOKEN, > }; > > -#define default_GEN16_GA1 EmptyFeat > +static uint16_t default_GEN16_GA1[] = { > + S390_FEAT_NNPA, > + S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2, > + S390_FEAT_BEAR_ENH, > + S390_FEAT_RDP, > + S390_FEAT_PAI, > +}; > > /* QEMU (CPU model) features */ > > Reviewed-by: David Hildenbrand <david@redhat.com>
On 07/09/2021 12.10, Christian Borntraeger wrote: > Add the new gen16 features to the default model and fence them for > machine version 6.1 and earlier. > > Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> > --- > hw/s390x/s390-virtio-ccw.c | 5 +++++ > target/s390x/gen-features.c | 8 +++++++- > 2 files changed, 12 insertions(+), 1 deletion(-) > > diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c > index 4d25278cf20e..61aeccb163f7 100644 > --- a/hw/s390x/s390-virtio-ccw.c > +++ b/hw/s390x/s390-virtio-ccw.c > @@ -803,6 +803,11 @@ DEFINE_CCW_MACHINE(6_2, "6.2", true); > static void ccw_machine_6_1_instance_options(MachineState *machine) > { > ccw_machine_6_2_instance_options(machine); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_NNPA); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_BEAR_ENH); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_RDP); > + s390_cpudef_featoff_greater(16, 1, S390_FEAT_PAI); > } > > static void ccw_machine_6_1_class_options(MachineClass *mc) > diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c > index 7d85322d6814..7cb1a6ec10be 100644 > --- a/target/s390x/gen-features.c > +++ b/target/s390x/gen-features.c > @@ -663,7 +663,13 @@ static uint16_t default_GEN15_GA1[] = { > S390_FEAT_ETOKEN, > }; > > -#define default_GEN16_GA1 EmptyFeat > +static uint16_t default_GEN16_GA1[] = { > + S390_FEAT_NNPA, > + S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2, > + S390_FEAT_BEAR_ENH, > + S390_FEAT_RDP, > + S390_FEAT_PAI, > +}; > > /* QEMU (CPU model) features */ > > Thanks, queued to my s390x-next branch: https://gitlab.com/thuth/qemu/-/commits/s390x-next/ Thomas
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index 4d25278cf20e..61aeccb163f7 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -803,6 +803,11 @@ DEFINE_CCW_MACHINE(6_2, "6.2", true); static void ccw_machine_6_1_instance_options(MachineState *machine) { ccw_machine_6_2_instance_options(machine); + s390_cpudef_featoff_greater(16, 1, S390_FEAT_NNPA); + s390_cpudef_featoff_greater(16, 1, S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2); + s390_cpudef_featoff_greater(16, 1, S390_FEAT_BEAR_ENH); + s390_cpudef_featoff_greater(16, 1, S390_FEAT_RDP); + s390_cpudef_featoff_greater(16, 1, S390_FEAT_PAI); } static void ccw_machine_6_1_class_options(MachineClass *mc) diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c index 7d85322d6814..7cb1a6ec10be 100644 --- a/target/s390x/gen-features.c +++ b/target/s390x/gen-features.c @@ -663,7 +663,13 @@ static uint16_t default_GEN15_GA1[] = { S390_FEAT_ETOKEN, }; -#define default_GEN16_GA1 EmptyFeat +static uint16_t default_GEN16_GA1[] = { + S390_FEAT_NNPA, + S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2, + S390_FEAT_BEAR_ENH, + S390_FEAT_RDP, + S390_FEAT_PAI, +}; /* QEMU (CPU model) features */
Add the new gen16 features to the default model and fence them for machine version 6.1 and earlier. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> --- hw/s390x/s390-virtio-ccw.c | 5 +++++ target/s390x/gen-features.c | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-)