1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun #ifndef BOOT_CPUFLAGS_H 3*4882a593Smuzhiyun #define BOOT_CPUFLAGS_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #include <asm/cpufeatures.h> 6*4882a593Smuzhiyun #include <asm/processor-flags.h> 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun struct cpu_features { 9*4882a593Smuzhiyun int level; /* Family, or 64 for x86-64 */ 10*4882a593Smuzhiyun int family; /* Family, always */ 11*4882a593Smuzhiyun int model; 12*4882a593Smuzhiyun u32 flags[NCAPINTS]; 13*4882a593Smuzhiyun }; 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun extern struct cpu_features cpu; 16*4882a593Smuzhiyun extern u32 cpu_vendor[3]; 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun int has_eflag(unsigned long mask); 19*4882a593Smuzhiyun void get_cpuflags(void); 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #endif 22