Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
cpuid.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2022 Intel Corp.
3 * SPDX-License-Identifier: Apache-2.0
4 */
5
6#ifndef ZEPHYR_INCLUDE_ARCH_X86_CPUID_H_
7#define ZEPHYR_INCLUDE_ARCH_X86_CPUID_H_
8
9#include <stdint.h>
10
11#ifndef _ASMLANGUAGE
12#ifdef __cplusplus
13extern "C" {
14#endif
15
16#define CPUID_BASIC_INFO_1 0x01
17#define CPUID_EXTENDED_FEATURES_LVL 0x07
18#define CPUID_EXTENDED_TOPOLOGY_ENUMERATION 0x0B
19#define CPUID_EXTENDED_TOPOLOGY_ENUMERATION_V2 0x1F
20
21/* Bits to check in CPUID extended features */
22#define CPUID_SPEC_CTRL_SSBD BIT(31)
23#define CPUID_SPEC_CTRL_IBRS BIT(26)
24
25uint32_t z_x86_cpuid_extended_features(void);
26
27uint8_t z_x86_cpuid_get_current_physical_apic_id(void);
28
29#ifdef __cplusplus
30}
31#endif
32#endif /* _ASMLANGUAGE */
33
34#endif /* ZEPHYR_INCLUDE_ARCH_X86_CPUID_H_ */
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88