summaryrefslogtreecommitdiff
path: root/UefiCpuPkg/Include
diff options
context:
space:
mode:
authorMichael Kinney <michael.d.kinney@intel.com>2015-11-17 05:12:32 +0000
committervanjeff <vanjeff@Edk2>2015-11-17 05:12:32 +0000
commitb6f16ba332354607f73f5cb871ec0907d5923070 (patch)
tree8ca5c9aeebbc8adde45d0539f20e0273a62c40e6 /UefiCpuPkg/Include
parent0d0f9ed1cd6416299b9717d2820914fec7e5e0f1 (diff)
downloadedk2-platforms-b6f16ba332354607f73f5cb871ec0907d5923070.tar.xz
UefiCpuPkg: LocalApicLib: Add API to set SoftwareEnable bit
The LocalApicLib does not provide a function to manage the state of the Local APIC SoftwareEnable bit in the Spurious Vector register. There are cases where this bit needs to be managed without side effects to. other Local APIC registers. One use case is in the DebugAgent in the SourceLevelDebugPkg. (Sync patch r18711 from main trunk.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@18848 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'UefiCpuPkg/Include')
-rw-r--r--UefiCpuPkg/Include/Library/LocalApicLib.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/UefiCpuPkg/Include/Library/LocalApicLib.h b/UefiCpuPkg/Include/Library/LocalApicLib.h
index b92b99e115..cd4e613ef5 100644
--- a/UefiCpuPkg/Include/Library/LocalApicLib.h
+++ b/UefiCpuPkg/Include/Library/LocalApicLib.h
@@ -4,7 +4,7 @@
Local APIC library assumes local APIC is enabled. It does not
handles cases where local APIC is disabled.
- Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2010 - 2015, 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
@@ -228,6 +228,20 @@ SendInitSipiSipiAllExcludingSelf (
);
/**
+ Initialize the state of the SoftwareEnable bit in the Local APIC
+ Spurious Interrupt Vector register.
+
+ @param Enable If TRUE, then set SoftwareEnable to 1
+ If FALSE, then set SoftwareEnable to 0.
+
+**/
+VOID
+EFIAPI
+InitializeLocalApicSoftwareEnable (
+ IN BOOLEAN Enable
+ );
+
+/**
Programming Virtual Wire Mode.
This function programs the local APIC for virtual wire mode following