TianoCore EDK2 master
CpuId.c File Reference

Go to the source code of this file.

Functions

UINT32 EFIAPI AsmCpuid (IN UINT32 Index, OUT UINT32 *RegisterEax OPTIONAL, OUT UINT32 *RegisterEbx OPTIONAL, OUT UINT32 *RegisterEcx OPTIONAL, OUT UINT32 *RegisterEdx OPTIONAL)
 

Detailed Description

AsmCpuid function.

Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file CpuId.c.

Function Documentation

◆ AsmCpuid()

UINT32 EFIAPI AsmCpuid ( IN UINT32  Index,
OUT UINT32 *RegisterEax  OPTIONAL,
OUT UINT32 *RegisterEbx  OPTIONAL,
OUT UINT32 *RegisterEcx  OPTIONAL,
OUT UINT32 *RegisterEdx  OPTIONAL 
)

Retrieves CPUID information.

Executes the CPUID instruction with EAX set to the value specified by Index. This function always returns Index. If Eax is not NULL, then the value of EAX after CPUID is returned in Eax. If Ebx is not NULL, then the value of EBX after CPUID is returned in Ebx. If Ecx is not NULL, then the value of ECX after CPUID is returned in Ecx. If Edx is not NULL, then the value of EDX after CPUID is returned in Edx. This function is only available on IA-32 and x64.

Parameters
IndexThe 32-bit value to load into EAX prior to invoking the CPUID instruction.
RegisterEaxA pointer to the 32-bit EAX value returned by the CPUID instruction. This is an optional parameter that may be NULL.
RegisterEbxA pointer to the 32-bit EBX value returned by the CPUID instruction. This is an optional parameter that may be NULL.
RegisterEcxA pointer to the 32-bit ECX value returned by the CPUID instruction. This is an optional parameter that may be NULL.
RegisterEdxA pointer to the 32-bit EDX value returned by the CPUID instruction. This is an optional parameter that may be NULL.
Returns
Index.

Definition at line 36 of file CpuId.c.