On 04/04/2019 14:45, Pu Wen wrote: > index 774ceac..75fefcf 100644 > --- a/xen/include/asm-x86/x86-vendors.h > +++ b/xen/include/asm-x86/x86-vendors.h > @@ -30,6 +30,11 @@ > #define X86_VENDOR_SHANGHAI_ECX 0x20206961U > #define X86_VENDOR_SHANGHAI_EDX 0x68676e61U > > -#define X86_VENDOR_NUM 5 > +#define X86_VENDOR_HYGON 5 > +#define X86_VENDOR_HYGON_EBX 0x6f677948 /* "HygonGenuine" */ > +#define X86_VENDOR_HYGON_ECX 0x656e6975 > +#define X86_VENDOR_HYGON_EDX 0x6e65476e > + > +#define X86_VENDOR_NUM 6 > > #endif /* __XEN_X86_VENDORS_H__ */ > diff --git a/xen/lib/x86/cpuid.c b/xen/lib/x86/cpuid.c > index 311d19e..d0b3ff7 100644 > --- a/xen/lib/x86/cpuid.c > +++ b/xen/lib/x86/cpuid.c > @@ -29,6 +29,12 @@ unsigned int x86_cpuid_lookup_vendor(uint32_t ebx, > uint32_t ecx, uint32_t edx) > edx == X86_VENDOR_SHANGHAI_EDX ) > return X86_VENDOR_SHANGHAI; > break; > + > + case X86_VENDOR_HYGON_EBX: > + if ( ecx == X86_VENDOR_HYGON_ECX && > + edx == X86_VENDOR_HYGON_EDX ) > + return X86_VENDOR_HYGON; > + break; > } > > return X86_VENDOR_UNKNOWN;
This needs the following hunk folding in diff --git a/tools/tests/cpu-policy/test-cpu-policy.c b/tools/tests/cpu-policy/test-cpu-policy.c index beced5e..88f5121 100644 --- a/tools/tests/cpu-policy/test-cpu-policy.c +++ b/tools/tests/cpu-policy/test-cpu-policy.c @@ -35,6 +35,7 @@ static void test_vendor_identification(void) { { "AuthenticAMD" }, X86_VENDOR_AMD }, { { "CentaurHauls" }, X86_VENDOR_CENTAUR }, { { " Shanghai " }, X86_VENDOR_SHANGHAI }, + { { "HygonGenuine" }, X86_VENDOR_HYGON }, { { "" }, X86_VENDOR_UNKNOWN }, { { " " }, X86_VENDOR_UNKNOWN }, which can be done on commit to avoid sending yet another version. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel