18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef BOOT_CPUFLAGS_H 38c2ecf20Sopenharmony_ci#define BOOT_CPUFLAGS_H 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci#include <asm/cpufeatures.h> 68c2ecf20Sopenharmony_ci#include <asm/processor-flags.h> 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_cistruct cpu_features { 98c2ecf20Sopenharmony_ci int level; /* Family, or 64 for x86-64 */ 108c2ecf20Sopenharmony_ci int family; /* Family, always */ 118c2ecf20Sopenharmony_ci int model; 128c2ecf20Sopenharmony_ci u32 flags[NCAPINTS]; 138c2ecf20Sopenharmony_ci}; 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciextern struct cpu_features cpu; 168c2ecf20Sopenharmony_ciextern u32 cpu_vendor[3]; 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ciint has_eflag(unsigned long mask); 198c2ecf20Sopenharmony_civoid get_cpuflags(void); 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci#endif 22