diff mbox series

s390x/cpumodel: Add more feature to gen16 default model

Message ID 20210907091128.25051-1-borntraeger@de.ibm.com (mailing list archive)
State New, archived
Headers show
Series s390x/cpumodel: Add more feature to gen16 default model | expand

Commit Message

Christian Borntraeger Sept. 7, 2021, 9:11 a.m. UTC
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(-)

Comments

Christian Borntraeger Sept. 7, 2021, 9:22 a.m. UTC | #1
On 07.09.21 11:11, 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..72573ec66e84 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(12, 1, S390_FEAT_NNPA);
> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2);
> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_BEAR_ENH);
> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_RDP);
> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_PAI);

It does not hurt, but the 12 should be 16 of course.
Will fix.
David Hildenbrand Sept. 7, 2021, 9:54 a.m. UTC | #2
On 07.09.21 11:22, Christian Borntraeger wrote:
> 
> 
> On 07.09.21 11:11, 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..72573ec66e84 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(12, 1, S390_FEAT_NNPA);
>> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2);
>> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_BEAR_ENH);
>> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_RDP);
>> +    s390_cpudef_featoff_greater(12, 1, S390_FEAT_PAI);
> 
> It does not hurt, but the 12 should be 16 of course.
> Will fix.
> 

... I was just about to reply this very second :D

LGTM otherwise
diff mbox series

Patch

diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 4d25278cf20e..72573ec66e84 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(12, 1, S390_FEAT_NNPA);
+    s390_cpudef_featoff_greater(12, 1, S390_FEAT_VECTOR_PACKED_DECIMAL_ENH2);
+    s390_cpudef_featoff_greater(12, 1, S390_FEAT_BEAR_ENH);
+    s390_cpudef_featoff_greater(12, 1, S390_FEAT_RDP);
+    s390_cpudef_featoff_greater(12, 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 */