SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
+#include <Library/BaseLib.h> // AsmReadMsr64()\r
#include <PiSmm.h>\r
+#include <Register/Intel/ArchitecturalMsr.h> // MSR_IA32_APIC_BASE_REGISTER\r
+\r
#include <Library/SmmCpuPlatformHookLib.h>\r
\r
/**\r
OUT BOOLEAN *IsBsp\r
)\r
{\r
- return EFI_NOT_READY;\r
+ MSR_IA32_APIC_BASE_REGISTER ApicBaseMsr;\r
+\r
+ ApicBaseMsr.Uint64 = AsmReadMsr64 (MSR_IA32_APIC_BASE);\r
+ *IsBsp = (BOOLEAN)(ApicBaseMsr.Bits.BSP == 1);\r
+ return EFI_SUCCESS;\r
}\r
\r
/**\r