/** @file CPU Config Block. Copyright (c) 2019 Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #ifndef _CPU_CONFIG_H_ #define _CPU_CONFIG_H_ #define CPU_CONFIG_REVISION 3 extern EFI_GUID gCpuConfigGuid; #pragma pack (push,1) /** CPU Configuration Structure. Revision 1: - Initial version. Revision 2: - Deprecate and move SkipMpInit to CpuConfigLibPreMemConfig. Revision 3: - Move DebugInterfaceEnable from CPU_TEST_CONFIG. **/ typedef struct { CONFIG_BLOCK_HEADER Header; ///< Config Block Header /** Enable or Disable Advanced Encryption Standard (AES) feature. For some countries, this should be disabled for legal reasons. - 0: Disable - 1: Enable **/ UINT32 AesEnable : 1; UINT32 SkipMpInit : 1; ///< @deprecated since revision 2. For Fsp only, Silicon Initialization will skip MP Initialization (including BSP) if enabled. For non-FSP, this should always be 0. UINT32 DebugInterfaceEnable : 1; ///< Enable or Disable processor debug features; 0: Disable; 1: Enable. UINT32 RsvdBits : 28; ///< Reserved for future use EFI_PHYSICAL_ADDRESS MicrocodePatchAddress; ///< Pointer to microcode patch that is suitable for this processor. } CPU_CONFIG; #pragma pack (pop) #endif // _CPU_CONFIG_H_