mirror of https://github.com/acidanthera/audk.git
MdePkg/Library/BaseCpuLib: Enable VS2017/ARM64 builds
Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Pete Batard <pete@akeo.ie> Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
parent
37db86ae23
commit
55f67014d7
|
@ -0,0 +1,39 @@
|
|||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; CpuFlushTlb() for ARM
|
||||
;
|
||||
; Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
|
||||
; Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
|
||||
; Portions copyright (c) 2011 - 2013, ARM Ltd. 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.
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
EXPORT CpuFlushTlb
|
||||
AREA BaseCpuLib_LowLevel, CODE, READONLY
|
||||
|
||||
;/**
|
||||
; Flushes all the Translation Lookaside Buffers(TLB) entries in a CPU.
|
||||
;
|
||||
; Flushes all the Translation Lookaside Buffers(TLB) entries in a CPU.
|
||||
;
|
||||
;**/
|
||||
;VOID
|
||||
;EFIAPI
|
||||
;CpuFlushTlb (
|
||||
; VOID
|
||||
; );
|
||||
;
|
||||
CpuFlushTlb
|
||||
tlbi vmalle1 // Invalidate Inst TLB and Data TLB
|
||||
dsb sy
|
||||
isb
|
||||
ret
|
||||
|
||||
END
|
|
@ -0,0 +1,40 @@
|
|||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; CpuSleep() for AArch64
|
||||
;
|
||||
; Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
|
||||
; Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
|
||||
; Portions copyright (c) 2011 - 2013, ARM LTD. 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.
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
EXPORT CpuSleep
|
||||
AREA BaseCpuLib_LowLevel, CODE, READONLY
|
||||
|
||||
;/**
|
||||
; Places the CPU in a sleep state until an interrupt is received.
|
||||
;
|
||||
; Places the CPU in a sleep state until an interrupt is received. If interrupts
|
||||
; are disabled prior to calling this function, then the CPU will be placed in a
|
||||
; sleep state indefinitely.
|
||||
;
|
||||
;**/
|
||||
;VOID
|
||||
;EFIAPI
|
||||
;CpuSleep (
|
||||
; VOID
|
||||
; );
|
||||
;
|
||||
|
||||
CpuSleep
|
||||
wfi
|
||||
ret
|
||||
|
||||
END
|
|
@ -1,7 +1,7 @@
|
|||
## @file
|
||||
# Instance of CPU Library for various architecture.
|
||||
#
|
||||
# CPU Library implemented using ASM functions for IA-32 and X64,
|
||||
# CPU Library implemented using ASM functions for IA32, X64, ARM, AARCH64,
|
||||
# PAL CALLs for IPF, and empty functions for EBC.
|
||||
#
|
||||
# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
|
@ -73,6 +73,8 @@
|
|||
[Sources.AARCH64]
|
||||
AArch64/CpuFlushTlb.S | GCC
|
||||
AArch64/CpuSleep.S | GCC
|
||||
AArch64/CpuFlushTlb.asm | MSFT
|
||||
AArch64/CpuSleep.asm | MSFT
|
||||
|
||||
[Packages]
|
||||
MdePkg/MdePkg.dec
|
||||
|
|
Loading…
Reference in New Issue