The diag 318 struct introduced in include/asm/diag.h can be
reused in KVM, so let's condense the version code fields in the
diag318_info struct for easier usage and simplify it until we
can determine how the data should be formatted.
Signed-off-by: Collin Walling <walling@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Link: https://lore.kernel.org/r/20200622154636.5499-2-walling@linux.ibm.com
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
 
 union diag318_info {
        unsigned long val;
        struct {
-               unsigned int cpnc : 8;
-               unsigned int cpvc_linux : 24;
-               unsigned char cpvc_distro[3];
-               unsigned char zero;
+               unsigned long cpnc : 8;
+               unsigned long cpvc : 56;
        };
 };
 
 
 {
        union diag318_info diag318_info = {
                .cpnc = CPNC_LINUX,
-               .cpvc_linux = 0,
-               .cpvc_distro = {0},
+               .cpvc = 0,
        };
 
        if (!sclp.has_diag318)