mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-26 23:24:03 +02:00
1) Cleanup for GCC and ICC tool-chain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5718 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
8e35b68162
commit
4b79797eea
@ -299,7 +299,11 @@ typedef int32_t intn_t;
|
|||||||
// For symbol name in GNU assembly code, an extra "_" is necessary
|
// For symbol name in GNU assembly code, an extra "_" is necessary
|
||||||
//
|
//
|
||||||
#if __GNUC__
|
#if __GNUC__
|
||||||
|
#if defined(linux)
|
||||||
|
#define ASM_PFX(name) name
|
||||||
|
#else
|
||||||
#define ASM_PFX(name) _##name
|
#define ASM_PFX(name) _##name
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2005 - 2007, Intel Corporation
|
Copyright (c) 2005 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -252,7 +252,11 @@ typedef int64_t intn_t;
|
|||||||
// For symbol name in GNU assembly code, an extra "_" is necessary
|
// For symbol name in GNU assembly code, an extra "_" is necessary
|
||||||
//
|
//
|
||||||
#if __GNUC__
|
#if __GNUC__
|
||||||
|
#if defined(linux)
|
||||||
|
#define ASM_PFX(name) name
|
||||||
|
#else
|
||||||
#define ASM_PFX(name) _##name
|
#define ASM_PFX(name) _##name
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#/*++
|
#/*++
|
||||||
#
|
#
|
||||||
# Copyright (c) 2004 - 2007, Intel Corporation
|
# Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
# All rights reserved. This program and the accompanying materials
|
# All rights reserved. This program and the accompanying materials
|
||||||
# are licensed and made available under the terms and conditions of the BSD License
|
# 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
|
# which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -85,12 +85,20 @@ COMPONENT_TYPE = LIBRARY
|
|||||||
Math.c
|
Math.c
|
||||||
|
|
||||||
[sources.x64]
|
[sources.x64]
|
||||||
x64/EfiCopyMemRep1.asm
|
x64/EfiCopyMemRep1.asm | MSFT
|
||||||
x64/EfiSetMemRep4.asm
|
x64/EfiSetMemRep4.asm | MSFT
|
||||||
x64/EfiZeroMemRep4.asm
|
x64/EfiZeroMemRep4.asm | MSFT
|
||||||
# x64/EfiCopyMem.asm
|
# x64/EfiCopyMem.asm | MSFT
|
||||||
# x64/EfiSetMem.asm
|
# x64/EfiSetMem.asm | MSFT
|
||||||
# x64/EfiZeroMem.asm
|
# x64/EfiZeroMem.asm | MSFT
|
||||||
|
|
||||||
|
x64/EfiCopyMemRep1.asm | INTEL
|
||||||
|
x64/EfiSetMemRep4.asm | INTEL
|
||||||
|
x64/EfiZeroMemRep4.asm | INTEL
|
||||||
|
# x64/EfiCopyMem.asm | INTEL
|
||||||
|
# x64/EfiSetMem.asm | INTEL
|
||||||
|
# x64/EfiZeroMem.asm | INTEL
|
||||||
|
|
||||||
Math.c
|
Math.c
|
||||||
|
|
||||||
[includes.common]
|
[includes.common]
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2006 - 2007, Intel Corporation
|
Copyright (c) 2006 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -134,7 +134,7 @@ Returns:
|
|||||||
//
|
//
|
||||||
Status = (*PeiServices)->GetHobList (
|
Status = (*PeiServices)->GetHobList (
|
||||||
PeiServices,
|
PeiServices,
|
||||||
&HobStart.Raw
|
(VOID **) &HobStart.Raw
|
||||||
);
|
);
|
||||||
|
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2004 - 2007, Intel Corporation
|
Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -62,7 +62,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
||||||
sizeof (EFI_HOB_MEMORY_ALLOCATION_MODULE),
|
sizeof (EFI_HOB_MEMORY_ALLOCATION_MODULE),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
@ -125,7 +125,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
EFI_HOB_TYPE_RESOURCE_DESCRIPTOR,
|
EFI_HOB_TYPE_RESOURCE_DESCRIPTOR,
|
||||||
sizeof (EFI_HOB_RESOURCE_DESCRIPTOR),
|
sizeof (EFI_HOB_RESOURCE_DESCRIPTOR),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
@ -223,7 +223,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
Guid,
|
Guid,
|
||||||
DataLength,
|
DataLength,
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
|
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
@ -276,7 +276,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
EFI_HOB_TYPE_FV,
|
EFI_HOB_TYPE_FV,
|
||||||
sizeof (EFI_HOB_FIRMWARE_VOLUME),
|
sizeof (EFI_HOB_FIRMWARE_VOLUME),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
@ -325,7 +325,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
EFI_HOB_TYPE_CPU,
|
EFI_HOB_TYPE_CPU,
|
||||||
sizeof (EFI_HOB_CPU),
|
sizeof (EFI_HOB_CPU),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
@ -378,7 +378,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
||||||
sizeof (EFI_HOB_MEMORY_ALLOCATION_STACK),
|
sizeof (EFI_HOB_MEMORY_ALLOCATION_STACK),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
@ -436,7 +436,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
||||||
sizeof (EFI_HOB_MEMORY_ALLOCATION_BSP_STORE),
|
sizeof (EFI_HOB_MEMORY_ALLOCATION_BSP_STORE),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
@ -496,7 +496,7 @@ Returns:
|
|||||||
PeiServices,
|
PeiServices,
|
||||||
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
EFI_HOB_TYPE_MEMORY_ALLOCATION,
|
||||||
sizeof (EFI_HOB_MEMORY_ALLOCATION),
|
sizeof (EFI_HOB_MEMORY_ALLOCATION),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2004 - 2007, Intel Corporation
|
Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -234,9 +234,9 @@ Returns:
|
|||||||
ASSERT_PEI_ERROR (PeiServices, Status);
|
ASSERT_PEI_ERROR (PeiServices, Status);
|
||||||
|
|
||||||
Status = PciCfg2->Modify (
|
Status = PciCfg2->Modify (
|
||||||
PeiServices,
|
(CONST EFI_PEI_SERVICES **) PeiServices,
|
||||||
PciCfg2,
|
PciCfg2,
|
||||||
Width,
|
(EFI_PEI_PCI_CFG_PPI_WIDTH) Width,
|
||||||
Address,
|
Address,
|
||||||
&SetBits,
|
&SetBits,
|
||||||
&ClearBits
|
&ClearBits
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2004 - 2005, Intel Corporation
|
Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -114,7 +114,7 @@ Returns:
|
|||||||
sizeof(PEI_PERFORMANCE_MEASURE_LOG_ENTRY)) +
|
sizeof(PEI_PERFORMANCE_MEASURE_LOG_ENTRY)) +
|
||||||
sizeof(EFI_PEI_PPI_DESCRIPTOR)
|
sizeof(EFI_PEI_PPI_DESCRIPTOR)
|
||||||
),
|
),
|
||||||
&Hob
|
(VOID **) &Hob
|
||||||
);
|
);
|
||||||
ASSERT_PEI_ERROR(PeiServices, Status);
|
ASSERT_PEI_ERROR(PeiServices, Status);
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2004 - 2005, Intel Corporation
|
Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -29,14 +29,14 @@ EFI_STATUS
|
|||||||
EFIAPI
|
EFIAPI
|
||||||
TransferControlSetJump (
|
TransferControlSetJump (
|
||||||
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
||||||
IN EFI_JUMP_BUFFER *Jump
|
IN VOID *Jump
|
||||||
);
|
);
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
TransferControlLongJump (
|
TransferControlLongJump (
|
||||||
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
||||||
IN EFI_JUMP_BUFFER *Jump
|
IN VOID *Jump
|
||||||
);
|
);
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright 2005, Intel Corporation
|
Copyright 2005 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -30,14 +30,14 @@ EFI_STATUS
|
|||||||
EFIAPI
|
EFIAPI
|
||||||
TransferControlSetJump (
|
TransferControlSetJump (
|
||||||
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
||||||
IN EFI_JUMP_BUFFER *Jump
|
IN VOID *Jump
|
||||||
);
|
);
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
TransferControlLongJump (
|
TransferControlLongJump (
|
||||||
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This,
|
||||||
IN EFI_JUMP_BUFFER *Jump
|
IN VOID *Jump
|
||||||
);
|
);
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#/*++
|
#/*++
|
||||||
#
|
#
|
||||||
# Copyright (c) 2004 - 2007, Intel Corporation
|
# Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
# All rights reserved. This program and the accompanying materials
|
# All rights reserved. This program and the accompanying materials
|
||||||
# are licensed and made available under the terms and conditions of the BSD License
|
# 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
|
# which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -37,6 +37,7 @@ COMPONENT_TYPE = LIBRARY
|
|||||||
ia32/Lock.c
|
ia32/Lock.c
|
||||||
ia32/PlatformIoLib.c
|
ia32/PlatformIoLib.c
|
||||||
ia32/Fvb.c
|
ia32/Fvb.c
|
||||||
|
ia32/CpuFlushCache.c
|
||||||
|
|
||||||
[sources.x64]
|
[sources.x64]
|
||||||
x64/RuntimeLib.c
|
x64/RuntimeLib.c
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#/*++
|
#/*++
|
||||||
#
|
#
|
||||||
# Copyright (c) 2004 - 2007, Intel Corporation
|
# Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
# All rights reserved. This program and the accompanying materials
|
# All rights reserved. This program and the accompanying materials
|
||||||
# are licensed and made available under the terms and conditions of the BSD License
|
# 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
|
# which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -37,6 +37,8 @@ COMPONENT_TYPE = LIBRARY
|
|||||||
ia32/Lock.c
|
ia32/Lock.c
|
||||||
ia32/PlatformIoLib.c
|
ia32/PlatformIoLib.c
|
||||||
ia32/Fvb.c
|
ia32/Fvb.c
|
||||||
|
ia32/CpuFlushCache.c | MSFT
|
||||||
|
ia32/CpuFlushCache.asm | INTEL
|
||||||
|
|
||||||
[sources.x64]
|
[sources.x64]
|
||||||
x64/RuntimeLib.c
|
x64/RuntimeLib.c
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2006 - 2007, Intel Corporation
|
Copyright (c) 2006 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -140,7 +140,7 @@ GetImageEx (
|
|||||||
Status = gBS->HandleProtocol (
|
Status = gBS->HandleProtocol (
|
||||||
ImageHandle,
|
ImageHandle,
|
||||||
&gEfiLoadedImageProtocolGuid,
|
&gEfiLoadedImageProtocolGuid,
|
||||||
&LoadedImage
|
(VOID **) &LoadedImage
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
@ -152,7 +152,7 @@ GetImageEx (
|
|||||||
#else
|
#else
|
||||||
&gEfiFirmwareVolume2ProtocolGuid,
|
&gEfiFirmwareVolume2ProtocolGuid,
|
||||||
#endif
|
#endif
|
||||||
&ImageFv
|
(VOID **) &ImageFv
|
||||||
);
|
);
|
||||||
if (!EFI_ERROR (Status)) {
|
if (!EFI_ERROR (Status)) {
|
||||||
Status = GetImageFromFv (ImageFv, NameGuid, SectionType, Buffer, Size);
|
Status = GetImageFromFv (ImageFv, NameGuid, SectionType, Buffer, Size);
|
||||||
|
@ -0,0 +1,62 @@
|
|||||||
|
;/*++
|
||||||
|
;
|
||||||
|
;Copyright (c) 2008, Intel Corporation
|
||||||
|
;All rights reserved. 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:
|
||||||
|
;
|
||||||
|
;CpuFlushCache.c
|
||||||
|
;
|
||||||
|
;Abstract:
|
||||||
|
;
|
||||||
|
;Cpu Flush Cache Function.
|
||||||
|
;
|
||||||
|
;--*/
|
||||||
|
;---------------------------------------------------------------------------
|
||||||
|
.586p
|
||||||
|
.model flat,C
|
||||||
|
.code
|
||||||
|
|
||||||
|
;---------------------------------------------------------------------------
|
||||||
|
;
|
||||||
|
;//
|
||||||
|
;// Cache Flush Routine.
|
||||||
|
;//
|
||||||
|
;EFI_STATUS
|
||||||
|
;EfiCpuFlushCache (
|
||||||
|
;IN EFI_PHYSICAL_ADDRESS Start,
|
||||||
|
; IN UINT64 Length
|
||||||
|
;)
|
||||||
|
;/*++
|
||||||
|
;
|
||||||
|
;Routine Description:
|
||||||
|
;
|
||||||
|
;Flush cache with specified range.
|
||||||
|
;
|
||||||
|
;Arguments:
|
||||||
|
;
|
||||||
|
;Start - Start address
|
||||||
|
; Length - Length in bytes
|
||||||
|
;
|
||||||
|
;Returns:
|
||||||
|
;
|
||||||
|
;Status code
|
||||||
|
;
|
||||||
|
;EFI_SUCCESS - success
|
||||||
|
;
|
||||||
|
;--*/
|
||||||
|
EfiCpuFlushCache PROC
|
||||||
|
wbinvd
|
||||||
|
xor eax, eax
|
||||||
|
ret
|
||||||
|
EfiCpuFlushCache ENDP
|
||||||
|
|
||||||
|
END
|
||||||
|
|
||||||
|
|
@ -0,0 +1,55 @@
|
|||||||
|
/*++
|
||||||
|
|
||||||
|
Copyright (c) 2008, Intel Corporation
|
||||||
|
All rights reserved. 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:
|
||||||
|
|
||||||
|
CpuFlushCache.c
|
||||||
|
|
||||||
|
Abstract:
|
||||||
|
|
||||||
|
Cpu Flush Cache Function.
|
||||||
|
|
||||||
|
--*/
|
||||||
|
#include "Tiano.h"
|
||||||
|
#include "EfiRuntimeLib.h"
|
||||||
|
|
||||||
|
//
|
||||||
|
// Cache Flush Routine.
|
||||||
|
//
|
||||||
|
EFI_STATUS
|
||||||
|
EfiCpuFlushCache (
|
||||||
|
IN EFI_PHYSICAL_ADDRESS Start,
|
||||||
|
IN UINT64 Length
|
||||||
|
)
|
||||||
|
/*++
|
||||||
|
|
||||||
|
Routine Description:
|
||||||
|
|
||||||
|
Flush cache with specified range.
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
|
||||||
|
Start - Start address
|
||||||
|
Length - Length in bytes
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
|
||||||
|
Status code
|
||||||
|
|
||||||
|
EFI_SUCCESS - success
|
||||||
|
|
||||||
|
--*/
|
||||||
|
{
|
||||||
|
__asm {
|
||||||
|
wbinvd
|
||||||
|
}
|
||||||
|
return EFI_SUCCESS;
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2004 - 2007, Intel Corporation
|
Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -215,7 +215,7 @@ Returns:
|
|||||||
// We check Runtime here, because it has no reason to register
|
// We check Runtime here, because it has no reason to register
|
||||||
// a boot time FVB protocol.
|
// a boot time FVB protocol.
|
||||||
//
|
//
|
||||||
Status = gBS->HandleProtocol (Handle, &gEfiFirmwareVolumeBlockProtocolGuid, &Fvb);
|
Status = gBS->HandleProtocol (Handle, &gEfiFirmwareVolumeBlockProtocolGuid, (VOID **) &Fvb);
|
||||||
ASSERT_EFI_ERROR (Status);
|
ASSERT_EFI_ERROR (Status);
|
||||||
if (IsMemoryRuntime (Fvb)) {
|
if (IsMemoryRuntime (Fvb)) {
|
||||||
//
|
//
|
||||||
@ -228,7 +228,7 @@ Returns:
|
|||||||
mFvbEntry[UpdateIndex].Fvb = Fvb;
|
mFvbEntry[UpdateIndex].Fvb = Fvb;
|
||||||
mFvbEntry[UpdateIndex].FvbExtension = NULL;
|
mFvbEntry[UpdateIndex].FvbExtension = NULL;
|
||||||
|
|
||||||
Status = gBS->HandleProtocol (Handle, &gEfiFvbExtensionProtocolGuid, &FvbExtension);
|
Status = gBS->HandleProtocol (Handle, &gEfiFvbExtensionProtocolGuid, (VOID **) &FvbExtension);
|
||||||
if ((Status == EFI_SUCCESS) && IsMemoryRuntime (FvbExtension)) {
|
if ((Status == EFI_SUCCESS) && IsMemoryRuntime (FvbExtension)) {
|
||||||
mFvbEntry[UpdateIndex].FvbExtension = FvbExtension;
|
mFvbEntry[UpdateIndex].FvbExtension = FvbExtension;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2004 - 2006, Intel Corporation
|
Copyright (c) 2004 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -281,7 +281,7 @@ Returns:
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, &gCpuIo);
|
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, (VOID **) &gCpuIo);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
gCpuIo = NULL;
|
gCpuIo = NULL;
|
||||||
}
|
}
|
||||||
@ -412,7 +412,7 @@ Returns:
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, &gCpuIo);
|
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, (VOID **) &gCpuIo);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
gCpuIo = NULL;
|
gCpuIo = NULL;
|
||||||
}
|
}
|
||||||
@ -817,35 +817,3 @@ Returns:
|
|||||||
#endif
|
#endif
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
//
|
|
||||||
// Cache Flush Routine.
|
|
||||||
//
|
|
||||||
EFI_STATUS
|
|
||||||
EfiCpuFlushCache (
|
|
||||||
IN EFI_PHYSICAL_ADDRESS Start,
|
|
||||||
IN UINT64 Length
|
|
||||||
)
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
Flush cache with specified range.
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
Start - Start address
|
|
||||||
Length - Length in bytes
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
|
|
||||||
Status code
|
|
||||||
|
|
||||||
EFI_SUCCESS - success
|
|
||||||
|
|
||||||
--*/
|
|
||||||
{
|
|
||||||
__asm {
|
|
||||||
wbinvd
|
|
||||||
}
|
|
||||||
return EFI_SUCCESS;
|
|
||||||
}
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2005 - 2007, Intel Corporation
|
Copyright (c) 2005 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -215,7 +215,7 @@ Returns:
|
|||||||
// We check Runtime here, because it has no reason to register
|
// We check Runtime here, because it has no reason to register
|
||||||
// a boot time FVB protocol.
|
// a boot time FVB protocol.
|
||||||
//
|
//
|
||||||
Status = gBS->HandleProtocol (Handle, &gEfiFirmwareVolumeBlockProtocolGuid, &Fvb);
|
Status = gBS->HandleProtocol (Handle, &gEfiFirmwareVolumeBlockProtocolGuid, (VOID **) &Fvb);
|
||||||
ASSERT_EFI_ERROR (Status);
|
ASSERT_EFI_ERROR (Status);
|
||||||
if (IsMemoryRuntime (Fvb)) {
|
if (IsMemoryRuntime (Fvb)) {
|
||||||
//
|
//
|
||||||
@ -228,7 +228,7 @@ Returns:
|
|||||||
mFvbEntry[UpdateIndex].Fvb = Fvb;
|
mFvbEntry[UpdateIndex].Fvb = Fvb;
|
||||||
mFvbEntry[UpdateIndex].FvbExtension = NULL;
|
mFvbEntry[UpdateIndex].FvbExtension = NULL;
|
||||||
|
|
||||||
Status = gBS->HandleProtocol (Handle, &gEfiFvbExtensionProtocolGuid, &FvbExtension);
|
Status = gBS->HandleProtocol (Handle, &gEfiFvbExtensionProtocolGuid, (VOID **) &FvbExtension);
|
||||||
if ((Status == EFI_SUCCESS) && IsMemoryRuntime (FvbExtension)) {
|
if ((Status == EFI_SUCCESS) && IsMemoryRuntime (FvbExtension)) {
|
||||||
mFvbEntry[UpdateIndex].FvbExtension = FvbExtension;
|
mFvbEntry[UpdateIndex].FvbExtension = FvbExtension;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2005 - 2006, Intel Corporation
|
Copyright (c) 2005 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -281,7 +281,7 @@ Returns:
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, &gCpuIo);
|
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, (VOID **) &gCpuIo);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
gCpuIo = NULL;
|
gCpuIo = NULL;
|
||||||
}
|
}
|
||||||
@ -412,7 +412,7 @@ Returns:
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, &gCpuIo);
|
Status = gBS->LocateProtocol (&gEfiCpuIoProtocolGuid, NULL, (VOID **) &gCpuIo);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
gCpuIo = NULL;
|
gCpuIo = NULL;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
Copyright (c) 2007 - 2008, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
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
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
@ -96,7 +96,7 @@ EFI_STATUS
|
|||||||
//
|
//
|
||||||
// DPC Protocol structure
|
// DPC Protocol structure
|
||||||
//
|
//
|
||||||
typedef struct _EFI_DPC_PROTOCOL {
|
struct _EFI_DPC_PROTOCOL {
|
||||||
EFI_DPC_QUEUE_DPC QueueDpc;
|
EFI_DPC_QUEUE_DPC QueueDpc;
|
||||||
EFI_DPC_DISPATCH_DPC DispatchDpc;
|
EFI_DPC_DISPATCH_DPC DispatchDpc;
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user