diff options
author | Guo Mang <mang.guo@intel.com> | 2017-04-27 11:30:22 +0800 |
---|---|---|
committer | Guo Mang <mang.guo@intel.com> | 2017-04-27 13:02:43 +0800 |
commit | 52e99d85a129b6124dad484f9f349fab8e02e488 (patch) | |
tree | 0839a52567104c32841237c149a6c2b1cb5c95b7 /EdkCompatibilityPkg/Foundation/Cpu | |
parent | 7283449b45d2842b9123ada5129cb073e40b940a (diff) | |
download | edk2-platforms-52e99d85a129b6124dad484f9f349fab8e02e488.tar.xz |
EdkCompatibilityPkg: Remove unused Package
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Guo Mang <mang.guo@intel.com>
Diffstat (limited to 'EdkCompatibilityPkg/Foundation/Cpu')
12 files changed, 0 insertions, 1660 deletions
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Itanium/CpuIa64Lib/CpuIA64Lib.inf b/EdkCompatibilityPkg/Foundation/Cpu/Itanium/CpuIa64Lib/CpuIA64Lib.inf deleted file mode 100644 index f4e604d30b..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Itanium/CpuIa64Lib/CpuIA64Lib.inf +++ /dev/null @@ -1,37 +0,0 @@ -#/*++
-#
-# Copyright (c) 2004 - 2005, Intel Corporation. All rights reserved.<BR>
-# This program and the accompanying materials
-# are licensed and made available under the terms and conditions of the BSD License
-# which accompanies this distribution. The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-# Module Name:
-#
-# CpuIA64Lib.inf
-#
-# Abstract:
-#
-# Component description file for the Cpu IA64 library.
-#
-#--*/
-
-[defines]
-BASE_NAME = CpuIA64Lib
-COMPONENT_TYPE = LIBRARY
-
-[sources.common]
-
-[sources.ipf]
- Ipf/CpuIa64.s
-
-[includes.common]
- $(EDK_SOURCE)/Foundation/Efi
- .
- $(EDK_SOURCE)/Foundation/Cpu/Itanium/Include
- $(EDK_SOURCE)/Foundation/Include
-
-[nmake.common]
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Itanium/CpuIa64Lib/Ipf/CpuIa64.s b/EdkCompatibilityPkg/Foundation/Cpu/Itanium/CpuIa64Lib/Ipf/CpuIa64.s deleted file mode 100644 index 75d9f8c706..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Itanium/CpuIa64Lib/Ipf/CpuIa64.s +++ /dev/null @@ -1,33 +0,0 @@ -//****************************************************************************
-//
-// Copyright (c) 2004, Intel Corporation. All rights reserved.<BR>
-// This program and the accompanying materials
-// are licensed and made available under the terms and conditions of the BSD License
-// which accompanies this distribution. The full text of the license may be found at
-// http://opensource.org/licenses/bsd-license.php
-//
-// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-//
-// Module Name:
-//
-// CpuIA64.s
-//
-// Abstract:
-//
-// Contains basic assembly procedures to support IPF CPU.
-//
-//****************************************************************************
-
-.file "CpuIA64.s"
-
-#include "IpfMacro.i"
-#include "IpfDefines.h"
-
-
-PROCEDURE_ENTRY (EfiReadTsc)
-
- mov r8 = ar.itc
- br.ret.dpnt b0;;
-
-PROCEDURE_EXIT (EfiReadTsc)
\ No newline at end of file diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Itanium/Include/CpuIa64.h b/EdkCompatibilityPkg/Foundation/Cpu/Itanium/Include/CpuIa64.h deleted file mode 100644 index fb6a741d2e..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Itanium/Include/CpuIa64.h +++ /dev/null @@ -1,39 +0,0 @@ -/*++
-
-Copyright (c) 2004, Intel Corporation. All rights reserved.<BR>
-This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name:
-
- CpuIA64.h
-
-Abstract:
-
---*/
-
-#ifndef _CPU_IA64_H
-#define _CPU_IA64_H
-
-#include "Tiano.h"
-
-UINT64
-EfiReadTsc (
- VOID
- )
-/*++
-Routine Description:
- Read Time stamp
-Arguments:
- None
-Returns:
- Return the read data
---*/
-;
-
-#endif
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib.inf b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib.inf deleted file mode 100644 index cdbd4a7474..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib.inf +++ /dev/null @@ -1,42 +0,0 @@ -#/*++
-#
-# Copyright (c) 2004 - 2005, Intel Corporation. All rights reserved.<BR>
-# This program and the accompanying materials
-# are licensed and made available under the terms and conditions of the BSD License
-# which accompanies this distribution. The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-# Module Name:
-#
-# CpuIA32Lib.inf
-#
-# Abstract:
-#
-# Component description file for the Cpu IA32 library.
-#
-#--*/
-
-[defines]
-BASE_NAME = CpuIA32Lib
-COMPONENT_TYPE = LIBRARY
-
-[sources.common]
- EfiCpuVersion.c
-
-[sources.ia32]
- IA32/CpuIA32.c
-
-[sources.x64]
- X64/Cpu.asm
-[includes.common]
- $(EDK_SOURCE)/Foundation/Efi
- $(EDK_SOURCE)/Foundation/Efi/Include
- $(EDK_SOURCE)/Foundation/Framework/Include
- .
- $(EDK_SOURCE)/Foundation/Cpu/Pentium/Include
- $(EDK_SOURCE)/Foundation/Include
-
-[nmake.common]
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib_Edk2.inf b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib_Edk2.inf deleted file mode 100644 index 3c4cb4813a..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/CpuIA32Lib_Edk2.inf +++ /dev/null @@ -1,47 +0,0 @@ -#/*++
-#
-# Copyright (c) 2004 - 2005, Intel Corporation. All rights reserved.<BR>
-# This program and the accompanying materials
-# are licensed and made available under the terms and conditions of the BSD License
-# which accompanies this distribution. The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-# Module Name:
-#
-# CpuIA32Lib.inf
-#
-# Abstract:
-#
-# Component description file for the Cpu IA32 library.
-#
-#--*/
-
-[defines]
-BASE_NAME = CpuIA32Lib
-COMPONENT_TYPE = LIBRARY
-
-[sources.common]
- EfiCpuVersion.c
-
-[sources.ia32]
- IA32/CpuIA32.c | MSFT
- IA32/CpuIA32.asm | INTEL
- IA32/CpuIA32.S | GCC
-
-[sources.x64]
- X64/Cpu.asm | MSFT
- X64/Cpu.asm | INTEL
- X64/Cpu.S | GCC
-
-[includes.common]
- $(EDK_SOURCE)/Foundation/Efi
- $(EDK_SOURCE)/Foundation/Efi/Include
- $(EDK_SOURCE)/Foundation/Framework/Include
- .
- $(EDK_SOURCE)/Foundation/Cpu/Pentium/Include
- $(EDK_SOURCE)/Foundation/Include
-
-[nmake.common]
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/EfiCpuVersion.c b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/EfiCpuVersion.c deleted file mode 100644 index f1c3c38bd4..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/EfiCpuVersion.c +++ /dev/null @@ -1,74 +0,0 @@ -/*++
-
-Copyright (c) 2004 - 2006, Intel Corporation. All rights reserved.<BR>
-This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name:
-
- EfiCpuVersion.c
-
-Abstract:
-
- Provide cpu version extract considering extended family & model ID.
---*/
-
-#include "CpuIA32.h"
-
-VOID
-EFIAPI
-EfiCpuVersion (
- IN OUT UINT16 *FamilyId, OPTIONAL
- IN OUT UINT8 *Model, OPTIONAL
- IN OUT UINT8 *SteppingId, OPTIONAL
- IN OUT UINT8 *Processor OPTIONAL
- )
-/*++
-
-Routine Description:
- Extract CPU detail version infomation
-
-Arguments:
- FamilyId - FamilyId, including ExtendedFamilyId
- Model - Model, including ExtendedModel
- SteppingId - SteppingId
- Processor - Processor
-
---*/
-{
- EFI_CPUID_REGISTER Register;
- UINT8 TempFamilyId;
-
- EfiCpuid (EFI_CPUID_VERSION_INFO, &Register);
-
- if (SteppingId != NULL) {
- *SteppingId = (UINT8) (Register.RegEax & 0xF);
- }
-
- if (Processor != NULL) {
- *Processor = (UINT8) ((Register.RegEax >> 12) & 0x3);
- }
-
- if (Model != NULL || FamilyId != NULL) {
- TempFamilyId = (UINT8) ((Register.RegEax >> 8) & 0xF);
-
- if (Model != NULL) {
- *Model = (UINT8) ((Register.RegEax >> 4) & 0xF);
- if (TempFamilyId == 0x6 || TempFamilyId == 0xF) {
- *Model = (UINT8) (*Model | ((Register.RegEax >> 12) & 0xF0));
- }
- }
-
- if (FamilyId != NULL) {
- *FamilyId = TempFamilyId;
- if (TempFamilyId == 0xF) {
- *FamilyId = (UINT8 ) (*FamilyId + (UINT16) ((Register.RegEax >> 20) & 0xFF));
- }
- }
- }
-}
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.S b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.S deleted file mode 100644 index acc2b2e9c9..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.S +++ /dev/null @@ -1,225 +0,0 @@ -#/*++
-#
-#Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
-#This program and the accompanying materials
-#are licensed and made available under the terms and conditions of the BSD License
-#which accompanies this distribution. The full text of the license may be found at
-#http://opensource.org/licenses/bsd-license.php
-#
-#THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-#WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-#Module Name:
-#
-# CpuIA32.c
-#
-#Abstract:
-#
-#--*/
-
-##include "CpuIA32.h"
-#include "EfiBind.h"
-
-#---------------------------------------------------------------------------
- .586p:
- #.MODEL flat,C
- .code:
-
-#---------------------------------------------------------------------------
-
-.globl ASM_PFX(EfiHalt)
-.globl ASM_PFX(EfiWbinvd)
-.globl ASM_PFX(EfiInvd)
-.globl ASM_PFX(EfiCpuid)
-.globl ASM_PFX(EfiReadMsr)
-.globl ASM_PFX(EfiWriteMsr)
-.globl ASM_PFX(EfiReadTsc)
-.globl ASM_PFX(EfiDisableCache)
-.globl ASM_PFX(EfiEnableCache)
-.globl ASM_PFX(EfiGetEflags)
-.globl ASM_PFX(EfiDisableInterrupts)
-.globl ASM_PFX(EfiEnableInterrupts)
-.globl ASM_PFX(EfiCpuidExt)
-
-
-#VOID
-#EfiHalt (
-# VOID
-#)
-ASM_PFX(EfiHalt):
- hlt
- ret
-#EfiHalt ENDP
-
-#VOID
-#EfiWbinvd (
-# VOID
-#)
-ASM_PFX(EfiWbinvd):
- wbinvd
- ret
-#EfiWbinvd ENDP
-
-#VOID
-#EfiInvd (
-# VOID
-#)
-ASM_PFX(EfiInvd):
- invd
- ret
-#EfiInvd ENDP
-
-#VOID
-#EfiCpuid (IN UINT32 RegisterInEax,
-# OUT EFI_CPUID_REGISTER *Reg OPTIONAL)
-ASM_PFX(EfiCpuid):
- pushl %ebp
- movl %esp, %ebp
- pushl %ebx
- pushl %esi
- pushl %edi
- pushal
-
- movl 8(%ebp), %eax #RegisterInEax
- cpuid
- cmpl $0, 0xC(%ebp) # Reg
- je L1
- movl 0xC(%ebp), %edi # Reg
-
- movl %eax, (%edi) # Reg->RegEax
- movl %ebx, 4(%edi) # Reg->RegEbx
- movl %ecx, 8(%edi) # Reg->RegEcx
- movl %edx, 0xC(%edi) # Reg->RegEdx
-
-L1:
- popal
- popl %edi
- popl %esi
- popl %ebx
- popl %ebp
-
- ret
-#EfiCpuid ENDP
-
-
-#UINT64
-#EfiReadMsr (
-# IN UINT32 Index
-# );
-ASM_PFX(EfiReadMsr):
- movl 4(%esp), %ecx # Index
- rdmsr
- ret
-#EfiReadMsr ENDP
-
-#VOID
-#EfiWriteMsr (
-# IN UINT32 Index,
-# IN UINT64 Value
-# );
-ASM_PFX(EfiWriteMsr):
- movl 4(%esp), %ecx # Index
- movl 8(%esp), %eax # DWORD PTR Value[0]
- movl 0xC(%esp), %edx # DWORD PTR Value[4]
- wrmsr
- ret
-#EfiWriteMsr ENDP
-
-#UINT64
-#EfiReadTsc (
-# VOID
-# )
-ASM_PFX(EfiReadTsc):
- rdtsc
- ret
-#EfiReadTsc ENDP
-
-#VOID
-#EfiDisableCache (
-# VOID
-#)
-ASM_PFX(EfiDisableCache):
- movl %cr0, %eax
- bswapl %eax
- andb $0x60, %al
- cmpb $0x60, %al
- je L2
- movl %cr0, %eax
- orl $0x60000000, %eax
- movl %eax, %cr0
- wbinvd
-L2:
- ret
-#EfiDisableCache ENDP
-
-#VOID
-#EfiEnableCache (
-# VOID
-# )
-ASM_PFX(EfiEnableCache):
- wbinvd
- movl %cr0, %eax
- andl $0x9fffffff, %eax
- movl %eax, %cr0
- ret
-#EfiEnableCache ENDP
-
-#UINT32
-#EfiGetEflags (
-# VOID
-# )
-ASM_PFX(EfiGetEflags):
- pushfl
- popl %eax
- ret
-#EfiGetEflags ENDP
-
-#VOID
-#EfiDisableInterrupts (
-# VOID
-# )
-ASM_PFX(EfiDisableInterrupts):
- cli
- ret
-#EfiDisableInterrupts ENDP
-
-#VOID
-#EfiEnableInterrupts (
-# VOID
-# )
-ASM_PFX(EfiEnableInterrupts):
- sti
- ret
-#EfiEnableInterrupts ENDP
-
-#VOID
-#EfiCpuidExt (
-# IN UINT32 RegisterInEax,
-# IN UINT32 CacheLevel,
-# OUT EFI_CPUID_REGISTER *Regs
-# )
-ASM_PFX(EfiCpuidExt):
- push %ebx
- push %edi
- push %esi
- pushal
-
- movl 0x30(%esp), %eax # RegisterInEax
- movl 0x34(%esp), %ecx # CacheLevel
- cpuid
- movl 0x38(%esp), %edi # DWORD PTR Regs
-
- movl %eax, (%edi) # Reg->RegEax
- movl %ebx, 4(%edi) # Reg->RegEbx
- movl %ecx, 8(%edi) # Reg->RegEcx
- movl %edx, 0xC(%edi) # Reg->RegEdx
-
- popal
- pop %esi
- pop %edi
- pop %ebx
- ret
-#EfiCpuidExt ENDP
-
-
-
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.asm b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.asm deleted file mode 100644 index 878be4d80a..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.asm +++ /dev/null @@ -1,202 +0,0 @@ -;/*++
-;
-;Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
-;This program and the accompanying materials
-;are licensed and made available under the terms and conditions of the BSD License
-;which accompanies this distribution. The full text of the license may be found at
-;http://opensource.org/licenses/bsd-license.php
-;
-;THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-;WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-;
-;Module Name:
-;
-; CpuIA32.c
-;
-;Abstract:
-;
-;--*/
-
-;#include "CpuIA32.h"
-
-;---------------------------------------------------------------------------
- .586p
- .model flat,C
- .code
-
-;---------------------------------------------------------------------------
-;VOID
-;EfiHalt (
-; VOID
-;)
-EfiHalt PROC C PUBLIC
- hlt
- ret
-EfiHalt ENDP
-
-;VOID
-;EfiWbinvd (
-; VOID
-;)
-EfiWbinvd PROC C PUBLIC
- wbinvd
- ret
-EfiWbinvd ENDP
-
-;VOID
-;EfiInvd (
-; VOID
-;)
-EfiInvd PROC C PUBLIC
- invd
- ret
-EfiInvd ENDP
-
-;VOID
-;EfiCpuid (IN UINT32 RegisterInEax,
-; OUT EFI_CPUID_REGISTER *Reg OPTIONAL)
-EfiCpuid PROC C PUBLIC
- push ebp
- mov ebp, esp
- push ebx
- push esi
- push edi
- pushad
-
- mov eax, dword ptr[ebp + 8] ;egisterInEax
- cpuid
- cmp dword ptr[ebp + 0Ch], 0 ; Reg
- je @F
- mov edi,dword ptr [ebp+0Ch] ; Reg
-
- mov dword ptr [edi],eax ; Reg->RegEax
- mov dword ptr [edi+4],ebx ; Reg->RegEbx
- mov dword ptr [edi+8],ecx ; Reg->RegEcx
- mov dword ptr [edi+0Ch],edx ; Reg->RegEdx
-
-@@:
- popad
- pop edi
- pop esi
- pop ebx
- pop ebp
-
- ret
-EfiCpuid ENDP
-
-
-;UINT64
-;EfiReadMsr (
-; IN UINT32 Index
-; );
-EfiReadMsr PROC C PUBLIC
- mov ecx, dword ptr [esp + 4]; Index
- rdmsr
- ret
-EfiReadMsr ENDP
-
-;VOID
-;EfiWriteMsr (
-; IN UINT32 Index,
-; IN UINT64 Value
-; );
-EfiWriteMsr PROC C PUBLIC
- mov ecx, dword ptr [esp+4]; Index
- mov eax, dword ptr [esp+8]; DWORD PTR Value[0]
- mov edx, dword ptr [esp+0Ch]; DWORD PTR Value[4]
- wrmsr
- ret
-EfiWriteMsr ENDP
-
-;UINT64
-;EfiReadTsc (
-; VOID
-; )
-EfiReadTsc PROC C PUBLIC
- rdtsc
- ret
-EfiReadTsc ENDP
-
-;VOID
-;EfiDisableCache (
-; VOID
-;)
-EfiDisableCache PROC C PUBLIC
- mov eax, cr0
- bswap eax
- and al, 60h
- cmp al, 60h
- je @F
- mov eax, cr0
- or eax, 060000000h
- mov cr0, eax
- wbinvd
-@@:
- ret
-EfiDisableCache ENDP
-
-;VOID
-;EfiEnableCache (
-; VOID
-; )
-EfiEnableCache PROC C PUBLIC
- wbinvd
- mov eax, cr0
- and eax, 09fffffffh
- mov cr0, eax
- ret
-EfiEnableCache ENDP
-
-;UINT32
-;EfiGetEflags (
-; VOID
-; )
-EfiGetEflags PROC C PUBLIC
- pushfd
- pop eax
- ret
-EfiGetEflags ENDP
-
-;VOID
-;EfiDisableInterrupts (
-; VOID
-; )
-EfiDisableInterrupts PROC C PUBLIC
- cli
- ret
-EfiDisableInterrupts ENDP
-
-;VOID
-;EfiEnableInterrupts (
-; VOID
-; )
-EfiEnableInterrupts PROC C PUBLIC
- sti
- ret
-EfiEnableInterrupts ENDP
-
-;VOID
-;EfiCpuidExt (
-; IN UINT32 RegisterInEax,
-; IN UINT32 CacheLevel,
-; OUT EFI_CPUID_REGISTER *Regs
-; )
-EfiCpuidExt PROC C PUBLIC USES ebx edi esi
- pushad
-
- mov eax, dword ptr [esp + 30h] ; RegisterInEax
- mov ecx, dword ptr [esp + 34h] ; CacheLevel
- cpuid
- mov edi, dword ptr [esp + 38h] ; DWORD PTR Regs
-
- mov dword ptr [edi], eax ; Reg->RegEax
- mov dword ptr [edi + 4], ebx ; Reg->RegEbx
- mov dword ptr [edi + 8], ecx ; Reg->RegEcx
- mov dword ptr [edi + 0Ch], edx ; Reg->RegEdx
-
- popad
- ret
-EfiCpuidExt ENDP
-
- END
-
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.c b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.c deleted file mode 100644 index b4dc7e0b22..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/IA32/CpuIA32.c +++ /dev/null @@ -1,179 +0,0 @@ -/*++
-
-Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
-This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name:
-
- CpuIA32.c
-
-Abstract:
-
---*/
-
-#include "CpuIA32.h"
-
-VOID
-EfiHalt (VOID)
-{
- __asm {
- hlt
- }
-}
-
-VOID
-EfiWbinvd (VOID)
-{
- __asm {
- wbinvd
- }
-}
-
-VOID
-EfiInvd (VOID)
-{
- __asm {
- invd
- }
-}
-
-VOID
-EfiCpuid (IN UINT32 RegisterInEax,
- OUT EFI_CPUID_REGISTER *Reg OPTIONAL)
-{
- __asm {
- pushad
-
- mov eax, RegisterInEax
- cpuid
- cmp Reg, 0
- je _Exit
- mov edi, DWORD PTR Reg
-
- mov DWORD PTR [edi].RegEax, eax ; Reg->RegEax
- mov DWORD PTR [edi].RegEbx, ebx ; Reg->RegEbx
- mov DWORD PTR [edi].RegEcx, ecx ; Reg->RegEcx
- mov DWORD PTR [edi].RegEdx, edx ; Reg->RegEdx
-
-_Exit:
- popad
- }
-}
-
-UINT64
-EfiReadMsr (IN UINT32 Index)
-{
- __asm {
- mov ecx, Index
- rdmsr
- }
-}
-
-VOID
-EfiWriteMsr (
- IN UINT32 Index,
- IN UINT64 Value
- )
-{
- __asm {
- mov ecx, Index
- mov eax, DWORD PTR Value[0]
- mov edx, DWORD PTR Value[4]
- wrmsr
- }
-}
-
-UINT64
-EfiReadTsc (VOID)
-{
- __asm {
- rdtsc
- }
-}
-
-VOID
-EfiDisableCache (VOID)
-{
- __asm {
- mov eax, cr0
- bswap eax
- and al, 60h
- cmp al, 60h
- je Exit
- mov eax, cr0
- or eax, 060000000h
- mov cr0, eax
- wbinvd
-Exit:
- }
-}
-
-VOID
-EfiEnableCache (VOID)
-{
- __asm {
- wbinvd
- mov eax, cr0
- and eax, 09fffffffh
- mov cr0, eax
- }
-}
-
-UINT32
-EfiGetEflags (
- VOID
- )
-{
- __asm {
- pushfd
- pop eax
- }
-}
-
-VOID
-EfiDisableInterrupts (VOID)
-{
- __asm {
- cli
- }
-}
-
-VOID
-EfiEnableInterrupts (
- VOID
- )
-{
- __asm {
- sti
- }
-}
-
-VOID
-EfiCpuidExt (
- IN UINT32 RegisterInEax,
- IN UINT32 CacheLevel,
- OUT EFI_CPUID_REGISTER *Regs
- )
-{
- __asm {
- pushad
-
- mov eax, RegisterInEax
- mov ecx, CacheLevel
- cpuid
- mov edi, DWORD PTR Regs
-
- mov DWORD PTR [edi].RegEax, eax ; Reg->RegEax
- mov DWORD PTR [edi].RegEbx, ebx ; Reg->RegEbx
- mov DWORD PTR [edi].RegEcx, ecx ; Reg->RegEcx
- mov DWORD PTR [edi].RegEdx, edx ; Reg->RegEdx
-
- popad
- }
-}
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/X64/Cpu.S b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/X64/Cpu.S deleted file mode 100644 index 065f614689..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/X64/Cpu.S +++ /dev/null @@ -1,209 +0,0 @@ -#------------------------------------------------------------------------------
-#*
-#* Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved.<BR>
-#* This program and the accompanying materials
-#* are licensed and made available under the terms and conditions of the BSD License
-#* which accompanies this distribution. The full text of the license may be found at
-#* http://opensource.org/licenses/bsd-license.php
-#*
-#* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-#* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#*
-#* Module Name:
-#*
-#* Cpu.asm
-#*
-#* Abstract:
-#*
-#------------------------------------------------------------------------------
-#include <EfiBind.h>
-
-.globl ASM_PFX(EfiHalt)
-.globl ASM_PFX(EfiWbinvd)
-.globl ASM_PFX(EfiInvd)
-.globl ASM_PFX(EfiCpuid)
-.globl ASM_PFX(EfiReadTsc)
-.globl ASM_PFX(EfiDisableCache)
-.globl ASM_PFX(EfiEnableCache)
-.globl ASM_PFX(EfiReadMsr)
-.globl ASM_PFX(EfiWriteMsr)
-.globl ASM_PFX(EfiGetEflags)
-.globl ASM_PFX(EfiDisableInterrupts)
-.globl ASM_PFX(EfiEnableInterrupts)
-.globl ASM_PFX(EfiCpuidExt)
-
-.text
-
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiHalt (
-# VOID
-# )
-#------------------------------------------------------------------------------
-ASM_PFX(EfiHalt):
- hlt
- retq
-
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiWbinvd (
-# VOID
-# )
-#------------------------------------------------------------------------------
-ASM_PFX(EfiWbinvd):
- wbinvd
- retq
-
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiInvd (
-# VOID
-# )
-#------------------------------------------------------------------------------
-ASM_PFX(EfiInvd):
- invd
- retq
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiCpuid (
-# IN UINT32 RegisterInEax, // rcx
-# OUT EFI_CPUID_REGISTER *Reg OPTIONAL // rdx
-# )
-#------------------------------------------------------------------------------
-ASM_PFX(EfiCpuid):
- push %rbx
- mov %rdx,%r8
- mov %rcx,%rax
- cpuid
- cmp $0x0,%r8
- je _Exit
- mov %eax,(%r8)
- mov %ebx,0x4(%r8)
- mov %ecx,0x8(%r8)
- mov %edx,0xc(%r8)
-_Exit:
- pop %rbx
- retq
-
-#------------------------------------------------------------------------------
-# UINT64
-# EfiReadMsr (
-# IN UINT32 Index, // rcx
-# )
-#------------------------------------------------------------------------------
-ASM_PFX(EfiReadMsr):
- rdmsr
- shl $0x20,%rdx
- or %rdx,%rax
- retq
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiWriteMsr (
-# IN UINT32 Index, // rcx
-# IN UINT64 Value // rdx
-# )
-#------------------------------------------------------------------------------
-ASM_PFX(EfiWriteMsr):
- mov %rdx,%rax
- sar $0x20,%rdx
- wrmsr
- retq
-
-#------------------------------------------------------------------------------
-# UINT64
-# EfiReadTsc (
-# VOID
-# );
-#------------------------------------------------------------------------------
-ASM_PFX(EfiReadTsc):
- rdtsc
- shl $0x20,%rax
- shrd $0x20,%rdx,%rax
- retq
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiDisableCache (
-# VOID
-# );
-#------------------------------------------------------------------------------
-ASM_PFX(EfiDisableCache):
-# added a check to see if cache is already disabled. If it is, then skip.
- mov %cr0,%rax
- and $0x60000000,%rax
- cmp $0x0,%rax
- jne 1f
- mov %cr0,%rax
- or $0x60000000,%rax
- mov %rax,%cr0
- wbinvd
-1:
- retq
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiEnableCache (
-# VOID
-# );
-#------------------------------------------------------------------------------
-ASM_PFX(EfiEnableCache):
- wbinvd
- mov %cr0,%rax
- and $0xffffffff9fffffff,%rax
- mov %rax,%cr0
- retq
-
-#------------------------------------------------------------------------------
-# UINTN
-# EfiGetEflags (
-# VOID
-# );
-#------------------------------------------------------------------------------
-ASM_PFX(EfiGetEflags):
- pushfq
- pop %rax
- retq
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiDisableInterrupts (
-# VOID
-# );
-#------------------------------------------------------------------------------
-ASM_PFX(EfiDisableInterrupts):
- cli
- ret
-
-#------------------------------------------------------------------------------
-# VOID
-# EfiEnableInterrupts (
-# VOID
-# );
-#------------------------------------------------------------------------------
-ASM_PFX(EfiEnableInterrupts):
- sti
- ret
-#------------------------------------------------------------------------------
-# VOID
-# EfiCpuidExt (
-# IN UINT32 RegisterInEax,
-# IN UINT32 CacheLevel,
-# OUT EFI_CPUID_REGISTER *Regs
-# )
-#------------------------------------------------------------------------------
-ASM_PFX(EfiCpuidExt):
- push %rbx
- mov %rcx,%rax
- mov %rdx,%rcx
- cpuid
- mov %eax,(%r8)
- mov %ebx,0x4(%r8)
- mov %ecx,0x8(%r8)
- mov %edx,0xc(%r8)
- pop %rbx
- retq
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/X64/Cpu.asm b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/X64/Cpu.asm deleted file mode 100644 index adb0fa73f3..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/CpuIA32Lib/X64/Cpu.asm +++ /dev/null @@ -1,215 +0,0 @@ -TITLE Cpu.asm: Assembly code for the x64 resources
-
-;------------------------------------------------------------------------------
-;*
-;* Copyright (c) 2005 - 2010, Intel Corporation. All rights reserved.<BR>
-;* This program and the accompanying materials
-;* are licensed and made available under the terms and conditions of the BSD License
-;* which accompanies this distribution. The full text of the license may be found at
-;* http://opensource.org/licenses/bsd-license.php
-;*
-;* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-;* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-;*
-;* Module Name:
-;*
-;* Cpu.asm
-;*
-;* Abstract:
-;*
-;------------------------------------------------------------------------------
-
-text SEGMENT
-
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiHalt (
-; VOID
-; )
-;------------------------------------------------------------------------------
-EfiHalt PROC PUBLIC
- hlt
- ret
-EfiHalt ENDP
-
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiWbinvd (
-; VOID
-; )
-;------------------------------------------------------------------------------
-EfiWbinvd PROC PUBLIC
- wbinvd
- ret
-EfiWbinvd ENDP
-
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiInvd (
-; VOID
-; )
-;------------------------------------------------------------------------------
-EfiInvd PROC PUBLIC
- invd
- ret
-EfiInvd ENDP
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiCpuid (
-; IN UINT32 RegisterInEax, // rcx
-; OUT EFI_CPUID_REGISTER *Reg OPTIONAL // rdx
-; )
-;------------------------------------------------------------------------------
-EfiCpuid PROC PUBLIC
- push rbx
-
- mov r8, rdx ; r8 = *Reg
- mov rax, rcx ; RegisterInEax
- cpuid
- cmp r8, 0
- je _Exit
- mov [r8 + 0], eax ; Reg->RegEax
- mov [r8 + 4], ebx ; Reg->RegEbx
- mov [r8 + 8], ecx ; Reg->RegEcx
- mov [r8 + 12], edx ; Reg->RegEdx
-
-_Exit:
- pop rbx
- ret
-EfiCpuid ENDP
-
-;------------------------------------------------------------------------------
-; UINT64
-; EfiReadMsr (
-; IN UINT32 Index, // rcx
-; )
-;------------------------------------------------------------------------------
-EfiReadMsr PROC PUBLIC
- rdmsr
- sal rdx, 32 ; edx:eax -> rax
- or rax, rdx ; rax = edx:eax
- ret
-EfiReadMsr ENDP
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiWriteMsr (
-; IN UINT32 Index, // rcx
-; IN UINT64 Value // rdx
-; )
-;------------------------------------------------------------------------------
-EfiWriteMsr PROC PUBLIC
- mov rax, rdx ; rdx = Value
- sar rdx, 32 ; convert rdx to edx upper 32-bits
- wrmsr ; wrmsr[ecx] result = edx:eax
- ret
-EfiWriteMsr ENDP
-
-
-;------------------------------------------------------------------------------
-; UINT64
-; EfiReadTsc (
-; VOID
-; );
-;------------------------------------------------------------------------------
-EfiReadTsc PROC PUBLIC
- rdtsc
- shl rax, 32
- shrd rax, rdx, 32
- ret
-EfiReadTsc ENDP
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiDisableCache (
-; VOID
-; );
-;------------------------------------------------------------------------------
-EfiDisableCache PROC PUBLIC
-; added a check to see if cache is already disabled. If it is, then skip.
- mov rax, cr0
- and rax, 060000000h
- cmp rax, 0
- jne @f
- mov rax, cr0
- or rax, 060000000h
- mov cr0, rax
- wbinvd
-@@:
- ret
-EfiDisableCache ENDP
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiEnableCache (
-; VOID
-; );
-;------------------------------------------------------------------------------
-EfiEnableCache PROC PUBLIC
- wbinvd
- mov rax, cr0
- and rax, 09fffffffh
- mov cr0, rax
- ret
-EfiEnableCache ENDP
-
-;------------------------------------------------------------------------------
-; UINTN
-; EfiGetEflags (
-; VOID
-; );
-;------------------------------------------------------------------------------
-EfiGetEflags PROC PUBLIC
- pushfq
- pop rax
- ret
-EfiGetEflags ENDP
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiDisableInterrupts (
-; VOID
-; );
-;------------------------------------------------------------------------------
-EfiDisableInterrupts PROC PUBLIC
- cli
- ret
-EfiDisableInterrupts ENDP
-
-;------------------------------------------------------------------------------
-; VOID
-; EfiEnableInterrupts (
-; VOID
-; );
-;------------------------------------------------------------------------------
-EfiEnableInterrupts PROC PUBLIC
- sti
- ret
-EfiEnableInterrupts ENDP
-;------------------------------------------------------------------------------
-; VOID
-; EfiCpuidExt (
-; IN UINT32 RegisterInEax,
-; IN UINT32 CacheLevel,
-; OUT EFI_CPUID_REGISTER *Regs
-; )
-;------------------------------------------------------------------------------
-EfiCpuidExt PROC PUBLIC
- push rbx
- mov rax, rcx ; rax = RegisterInEax
- mov rcx, rdx ; rcx = CacheLevel
-
- cpuid
- mov [r8 + 0 ], eax ; Reg->RegEax
- mov [r8 + 4 ], ebx ; Reg->RegEbx
- mov [r8 + 8 ], ecx ; Reg->RegEcx
- mov [r8 + 12], edx ; Reg->RegEdx
-
- pop rbx
- ret
-EfiCpuidExt ENDP
-END
diff --git a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/Include/CpuIA32.h b/EdkCompatibilityPkg/Foundation/Cpu/Pentium/Include/CpuIA32.h deleted file mode 100644 index b0ec374e26..0000000000 --- a/EdkCompatibilityPkg/Foundation/Cpu/Pentium/Include/CpuIA32.h +++ /dev/null @@ -1,358 +0,0 @@ -/*++
-
-Copyright (c) 2004 - 2006, Intel Corporation. All rights reserved.<BR>
-This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name:
-
- CpuIA32.h
-
-Abstract:
-
---*/
-
-#ifndef _CPU_IA32_H
-#define _CPU_IA32_H
-
-#include "Tiano.h"
-
-typedef struct {
- UINT32 RegEax;
- UINT32 RegEbx;
- UINT32 RegEcx;
- UINT32 RegEdx;
-} EFI_CPUID_REGISTER;
-
-typedef struct {
- UINT32 HeaderVersion;
- UINT32 UpdateRevision;
- UINT32 Date;
- UINT32 ProcessorId;
- UINT32 Checksum;
- UINT32 LoaderRevision;
- UINT32 ProcessorFlags;
- UINT32 DataSize;
- UINT32 TotalSize;
- UINT8 Reserved[12];
-} EFI_CPU_MICROCODE_HEADER;
-
-typedef struct {
- UINT32 ExtendedSignatureCount;
- UINT32 ExtendedTableChecksum;
- UINT8 Reserved[12];
-} EFI_CPU_MICROCODE_EXTENDED_TABLE_HEADER;
-
-typedef struct {
- UINT32 ProcessorSignature;
- UINT32 ProcessorFlag;
- UINT32 ProcessorChecksum;
-} EFI_CPU_MICROCODE_EXTENDED_TABLE;
-
-typedef struct {
- UINT32 Stepping : 4;
- UINT32 Model : 4;
- UINT32 Family : 4;
- UINT32 Type : 2;
- UINT32 Reserved1 : 2;
- UINT32 ExtendedModel : 4;
- UINT32 ExtendedFamily : 8;
- UINT32 Reserved2 : 4;
-} EFI_CPU_VERSION;
-
-#define EFI_CPUID_SIGNATURE 0x0
-#define EFI_CPUID_VERSION_INFO 0x1
-#define EFI_CPUID_CACHE_INFO 0x2
-#define EFI_CPUID_SERIAL_NUMBER 0x3
-#define EFI_CPUID_EXTENDED_FUNCTION 0x80000000
-#define EFI_CPUID_EXTENDED_CPU_SIG 0x80000001
-#define EFI_CPUID_BRAND_STRING1 0x80000002
-#define EFI_CPUID_BRAND_STRING2 0x80000003
-#define EFI_CPUID_BRAND_STRING3 0x80000004
-
-#define EFI_MSR_IA32_PLATFORM_ID 0x17
-#define EFI_MSR_IA32_APIC_BASE 0x1B
-#define EFI_MSR_EBC_HARD_POWERON 0x2A
-#define EFI_MSR_EBC_SOFT_POWERON 0x2B
-#define BINIT_DRIVER_DISABLE 0x40
-#define INTERNAL_MCERR_DISABLE 0x20
-#define INITIATOR_MCERR_DISABLE 0x10
-#define EFI_MSR_EBC_FREQUENCY_ID 0x2C
-#define EFI_MSR_IA32_BIOS_UPDT_TRIG 0x79
-#define EFI_MSR_IA32_BIOS_SIGN_ID 0x8B
-#define EFI_MSR_PSB_CLOCK_STATUS 0xCD
-#define EFI_APIC_GLOBAL_ENABLE 0x800
-#define EFI_MSR_IA32_MISC_ENABLE 0x1A0
-#define LIMIT_CPUID_MAXVAL_ENABLE_BIT 0x00400000
-#define AUTOMATIC_THERMAL_CONTROL_ENABLE_BIT 0x00000008
-#define COMPATIBLE_FPU_OPCODE_ENABLE_BIT 0x00000004
-#define LOGICAL_PROCESSOR_PRIORITY_ENABLE_BIT 0x00000002
-#define FAST_STRING_ENABLE_BIT 0x00000001
-
-#define EFI_CACHE_VARIABLE_MTRR_BASE 0x200
-#define EFI_CACHE_VARIABLE_MTRR_END 0x20F
-#define EFI_CACHE_IA32_MTRR_DEF_TYPE 0x2FF
-#define EFI_CACHE_MTRR_VALID 0x800
-#define EFI_CACHE_FIXED_MTRR_VALID 0x400
-#define EFI_CACHE_VALID_ADDRESS 0xFFFFFF000
-#define EFI_MSR_VALID_MASK 0xFFFFFFFFF
-#define EFI_CACHE_VALID_EXTENDED_ADDRESS 0xFFFFFFFFFF000
-#define EFI_MSR_VALID_EXTENDED_MASK 0xFFFFFFFFFFFFF
-
-#define EFI_IA32_MTRR_FIX64K_00000 0x250
-#define EFI_IA32_MTRR_FIX16K_80000 0x258
-#define EFI_IA32_MTRR_FIX16K_A0000 0x259
-#define EFI_IA32_MTRR_FIX4K_C0000 0x268
-#define EFI_IA32_MTRR_FIX4K_C8000 0x269
-#define EFI_IA32_MTRR_FIX4K_D0000 0x26A
-#define EFI_IA32_MTRR_FIX4K_D8000 0x26B
-#define EFI_IA32_MTRR_FIX4K_E0000 0x26C
-#define EFI_IA32_MTRR_FIX4K_E8000 0x26D
-#define EFI_IA32_MTRR_FIX4K_F0000 0x26E
-#define EFI_IA32_MTRR_FIX4K_F8000 0x26F
-
-#define EFI_IA32_MCG_CAP 0x179
-#define EFI_IA32_MCG_CTL 0x17B
-#define EFI_IA32_MC0_CTL 0x400
-#define EFI_IA32_MC0_STATUS 0x401
-
-#define EFI_IA32_PERF_STATUS 0x198
-#define EFI_IA32_PERF_CTL 0x199
-
-#define EFI_CACHE_UNCACHEABLE 0
-#define EFI_CACHE_WRITECOMBINING 1
-#define EFI_CACHE_WRITETHROUGH 4
-#define EFI_CACHE_WRITEPROTECTED 5
-#define EFI_CACHE_WRITEBACK 6
-
-//
-// Combine f(FamilyId), m(Model), s(SteppingId) to a single 32 bit number
-//
-#define EfiMakeCpuVersion(f, m, s) \
- (((UINT32) (f) << 16) | ((UINT32) (m) << 8) | ((UINT32) (s)))
-
-VOID
-EFIAPI
-EfiHalt (
- VOID
- );
-
-/*++
-Routine Description:
- Halt the Cpu
-Arguments:
- None
-Returns:
- None
---*/
-VOID
-EFIAPI
-EfiWbinvd (
- VOID
- );
-
-/*++
-Routine Description:
- Write back and invalidate the Cpu cache
-Arguments:
- None
-Returns:
- None
---*/
-VOID
-EFIAPI
-EfiInvd (
- VOID
- );
-
-/*++
-Routine Description:
- Invalidate the Cpu cache
-Arguments:
- None
-Returns:
- None
---*/
-VOID
-EFIAPI
-EfiCpuid (
- IN UINT32 RegisterInEax,
- OUT EFI_CPUID_REGISTER *Regs
- );
-
-/*++
-Routine Description:
- Get the Cpu info by execute the CPUID instruction
-Arguments:
- RegisterInEax: -The input value to put into register EAX
- Regs: -The Output value
-Returns:
- None
---*/
-
-VOID
-EFIAPI
-EfiCpuidExt (
- IN UINT32 RegisterInEax,
- IN UINT32 CacheLevel,
- OUT EFI_CPUID_REGISTER *Regs
- )
-/*++
-Routine Description:
- When RegisterInEax != 4, the functionality is the same as EfiCpuid.
- When RegisterInEax == 4, the function return the deterministic cache
- parameters by excuting the CPUID instruction
-Arguments:
- RegisterInEax: - The input value to put into register EAX
- CacheLevel: - The deterministic cache level
- Regs: - The Output value
-Returns:
- None
---*/
-;
-
-UINT64
-EFIAPI
-EfiReadMsr (
- IN UINT32 Index
- );
-
-/*++
-Routine Description:
- Read Cpu MSR
-Arguments:
- Index: -The index value to select the register
-
-Returns:
- Return the read data
---*/
-VOID
-EFIAPI
-EfiWriteMsr (
- IN UINT32 Index,
- IN UINT64 Value
- );
-
-/*++
-Routine Description:
- Write Cpu MSR
-Arguments:
- Index: -The index value to select the register
- Value: -The value to write to the selected register
-Returns:
- None
---*/
-UINT64
-EFIAPI
-EfiReadTsc (
- VOID
- );
-
-/*++
-Routine Description:
- Read Time stamp
-Arguments:
- None
-Returns:
- Return the read data
---*/
-VOID
-EFIAPI
-EfiDisableCache (
- VOID
- );
-
-/*++
-Routine Description:
- Writing back and invalidate the cache,then diable it
-Arguments:
- None
-Returns:
- None
---*/
-VOID
-EFIAPI
-EfiEnableCache (
- VOID
- );
-
-/*++
-Routine Description:
- Invalidate the cache,then Enable it
-Arguments:
- None
-Returns:
- None
---*/
-UINT32
-EFIAPI
-EfiGetEflags (
- VOID
- );
-
-/*++
-Routine Description:
- Get Eflags
-Arguments:
- None
-Returns:
- Return the Eflags value
---*/
-VOID
-EFIAPI
-EfiDisableInterrupts (
- VOID
- );
-
-/*++
-Routine Description:
- Disable Interrupts
-Arguments:
- None
-Returns:
- None
---*/
-VOID
-EFIAPI
-EfiEnableInterrupts (
- VOID
- );
-
-/*++
-Routine Description:
- Enable Interrupts
-Arguments:
- None
-Returns:
- None
---*/
-
-
-VOID
-EFIAPI
-EfiCpuVersion (
- IN UINT16 *FamilyId, OPTIONAL
- IN UINT8 *Model, OPTIONAL
- IN UINT8 *SteppingId, OPTIONAL
- IN UINT8 *Processor OPTIONAL
- )
-/*++
-
-Routine Description:
- Extract CPU detail version infomation
-
-Arguments:
- FamilyId - FamilyId, including ExtendedFamilyId
- Model - Model, including ExtendedModel
- SteppingId - SteppingId
- Processor - Processor
-
---*/
-;
-
-#endif
|