blob: 4e0f0a1103ffd50f99294d7038ca6dd6a70a9b10 [file] [log] [blame]
Vishal Bhoj82c80712015-12-15 21:13:33 +05301## @file
2# Instance of CPU Library for various architecture.
3#
4# CPU Library implemented using ASM functions for IA-32 and X64,
5# PAL CALLs for IPF, and empty functions for EBC.
6#
7# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
8# Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
9# Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>
10#
11# This program and the accompanying materials
12# are licensed and made available under the terms and conditions of the BSD License
13# which accompanies this distribution. The full text of the license may be found at
14# http://opensource.org/licenses/bsd-license.php.
15# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
16# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17#
18#
19##
20
21[Defines]
22 INF_VERSION = 0x00010005
23 BASE_NAME = BaseCpuLib
24 MODULE_UNI_FILE = BaseCpuLib.uni
25 FILE_GUID = 4FBD2538-249C-4b50-8F4A-A9E66609CBF6
26 MODULE_TYPE = BASE
27 VERSION_STRING = 1.0
28 LIBRARY_CLASS = CpuLib
29
30
31#
32# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64
33#
34
35[Sources.IA32]
36 Ia32/CpuSleep.c | MSFT
37 Ia32/CpuFlushTlb.c | MSFT
38
39 Ia32/CpuSleep.asm | INTEL
40 Ia32/CpuFlushTlb.asm | INTEL
41
42 Ia32/CpuSleepGcc.c | GCC
43 Ia32/CpuFlushTlbGcc.c | GCC
44
45[Sources.X64]
46 X64/CpuFlushTlb.asm
47 X64/CpuSleep.asm
48
49 X64/CpuSleep.S | GCC
50 X64/CpuFlushTlb.S | GCC
51
52[Sources.IPF]
53 Ipf/CpuFlushTlb.s
54 Ipf/CpuSleep.c
55
56[Sources.EBC]
57 Ebc/CpuSleepFlushTlb.c
58
59[Sources.ARM]
60 Arm/CpuFlushTlb.asm | RVCT
61 Arm/CpuSleep.asm | RVCT
62 Arm/CpuFlushTlb.S | GCC
63 Arm/CpuSleep.S | GCC
64
65[Sources.AARCH64]
66 AArch64/CpuFlushTlb.S | GCC
67 AArch64/CpuSleep.S | GCC
68
69[Packages]
70 MdePkg/MdePkg.dec
71
72
73[LibraryClasses.IPF]
74 PalLib
75 BaseLib
76