blob: 2e20814d3ce3e8d15e887bad15224e39646c100d [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Kees Cookdd78b972013-10-10 17:18:13 -07002#ifndef BOOT_CPUFLAGS_H
3#define BOOT_CPUFLAGS_H
4
Borislav Petkovcd4d09e2016-01-26 22:12:04 +01005#include <asm/cpufeatures.h>
Kees Cookdd78b972013-10-10 17:18:13 -07006#include <asm/processor-flags.h>
7
8struct cpu_features {
9 int level; /* Family, or 64 for x86-64 */
Dave Hansene4a84be2016-07-07 17:19:14 -070010 int family; /* Family, always */
Kees Cookdd78b972013-10-10 17:18:13 -070011 int model;
12 u32 flags[NCAPINTS];
13};
14
15extern struct cpu_features cpu;
16extern u32 cpu_vendor[3];
17
18int has_eflag(unsigned long mask);
H. Peter Anvin6e6a4932013-10-13 04:08:56 -070019void get_cpuflags(void);
Kees Cookdd78b972013-10-10 17:18:13 -070020
21#endif