\r
#define CPU_FEATURE_ENTRY_SIGNATURE SIGNATURE_32 ('C', 'F', 'E', 'S')\r
\r
-#define CPU_FEATURE_NAME_SIZE 128\r
+#define CPU_FEATURE_NAME_SIZE 128\r
\r
typedef struct {\r
- REGISTER_CPU_FEATURE_INFORMATION CpuInfo;\r
- UINT8 *FeaturesSupportedMask;\r
- LIST_ENTRY OrderList;\r
+ REGISTER_CPU_FEATURE_INFORMATION CpuInfo;\r
+ UINT8 *FeaturesSupportedMask;\r
+ LIST_ENTRY OrderList;\r
} CPU_FEATURES_INIT_ORDER;\r
\r
typedef struct {\r
- UINT32 Signature;\r
- LIST_ENTRY Link;\r
- UINT8 *FeatureMask;\r
- CHAR8 *FeatureName;\r
- CPU_FEATURE_GET_CONFIG_DATA GetConfigDataFunc;\r
- CPU_FEATURE_SUPPORT SupportFunc;\r
- CPU_FEATURE_INITIALIZE InitializeFunc;\r
- UINT8 *ThreadBeforeFeatureBitMask;\r
- UINT8 *ThreadAfterFeatureBitMask;\r
- UINT8 *CoreBeforeFeatureBitMask;\r
- UINT8 *CoreAfterFeatureBitMask;\r
- UINT8 *PackageBeforeFeatureBitMask;\r
- UINT8 *PackageAfterFeatureBitMask;\r
- VOID *ConfigData;\r
- BOOLEAN BeforeAll;\r
- BOOLEAN AfterAll;\r
+ UINT32 Signature;\r
+ LIST_ENTRY Link;\r
+ UINT8 *FeatureMask;\r
+ CHAR8 *FeatureName;\r
+ CPU_FEATURE_GET_CONFIG_DATA GetConfigDataFunc;\r
+ CPU_FEATURE_SUPPORT SupportFunc;\r
+ CPU_FEATURE_INITIALIZE InitializeFunc;\r
+ UINT8 *ThreadBeforeFeatureBitMask;\r
+ UINT8 *ThreadAfterFeatureBitMask;\r
+ UINT8 *CoreBeforeFeatureBitMask;\r
+ UINT8 *CoreAfterFeatureBitMask;\r
+ UINT8 *PackageBeforeFeatureBitMask;\r
+ UINT8 *PackageAfterFeatureBitMask;\r
+ VOID *ConfigData;\r
+ BOOLEAN BeforeAll;\r
+ BOOLEAN AfterAll;\r
} CPU_FEATURES_ENTRY;\r
\r
//\r
// Flags used when program the register.\r
//\r
typedef struct {\r
- volatile UINTN MemoryMappedLock; // Spinlock used to program mmio\r
- volatile UINT32 *CoreSemaphoreCount; // Semaphore containers used to program Core semaphore.\r
- volatile UINT32 *PackageSemaphoreCount; // Semaphore containers used to program Package semaphore.\r
+ volatile UINTN MemoryMappedLock; // Spinlock used to program mmio\r
+ volatile UINT32 *CoreSemaphoreCount; // Semaphore containers used to program Core semaphore.\r
+ volatile UINT32 *PackageSemaphoreCount; // Semaphore containers used to program Package semaphore.\r
} PROGRAM_CPU_REGISTER_FLAGS;\r
\r
typedef union {\r
- EFI_MP_SERVICES_PROTOCOL *Protocol;\r
- EDKII_PEI_MP_SERVICES2_PPI *Ppi;\r
+ EFI_MP_SERVICES_PROTOCOL *Protocol;\r
+ EDKII_PEI_MP_SERVICES2_PPI *Ppi;\r
} MP_SERVICES;\r
\r
typedef struct {\r
- UINTN FeaturesCount;\r
- UINT32 BitMaskSize;\r
- LIST_ENTRY FeatureList;\r
+ UINTN FeaturesCount;\r
+ UINT32 BitMaskSize;\r
+ LIST_ENTRY FeatureList;\r
\r
- CPU_FEATURES_INIT_ORDER *InitOrder;\r
- UINT8 *CapabilityPcd;\r
- UINT8 *SettingPcd;\r
+ CPU_FEATURES_INIT_ORDER *InitOrder;\r
+ UINT8 *CapabilityPcd;\r
+ UINT8 *SettingPcd;\r
\r
- UINT32 NumberOfCpus;\r
- ACPI_CPU_DATA *AcpiCpuData;\r
+ UINT32 NumberOfCpus;\r
+ ACPI_CPU_DATA *AcpiCpuData;\r
\r
- CPU_REGISTER_TABLE *RegisterTable;\r
- CPU_REGISTER_TABLE *PreSmmRegisterTable;\r
- UINTN BspNumber;\r
+ CPU_REGISTER_TABLE *RegisterTable;\r
+ CPU_REGISTER_TABLE *PreSmmRegisterTable;\r
+ UINTN BspNumber;\r
\r
- PROGRAM_CPU_REGISTER_FLAGS CpuFlags;\r
+ PROGRAM_CPU_REGISTER_FLAGS CpuFlags;\r
\r
- MP_SERVICES MpService;\r
+ MP_SERVICES MpService;\r
} CPU_FEATURES_DATA;\r
\r
#define CPU_FEATURE_ENTRY_FROM_LINK(a) \\r
**/\r
UINTN\r
GetProcessorIndex (\r
- IN CPU_FEATURES_DATA *CpuFeaturesData\r
+ IN CPU_FEATURES_DATA *CpuFeaturesData\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
GetProcessorInformation (\r
- IN UINTN ProcessorNumber,\r
- OUT EFI_PROCESSOR_INFORMATION *ProcessorInfoBuffer\r
+ IN UINTN ProcessorNumber,\r
+ OUT EFI_PROCESSOR_INFORMATION *ProcessorInfoBuffer\r
);\r
\r
/**\r
**/\r
VOID\r
StartupAllAPsWorker (\r
- IN EFI_AP_PROCEDURE Procedure,\r
- IN EFI_EVENT MpEvent\r
+ IN EFI_AP_PROCEDURE Procedure,\r
+ IN EFI_EVENT MpEvent\r
);\r
\r
/**\r
**/\r
VOID\r
GetNumberOfProcessor (\r
- OUT UINTN *NumberOfCpus,\r
- OUT UINTN *NumberOfEnabledProcessors\r
+ OUT UINTN *NumberOfCpus,\r
+ OUT UINTN *NumberOfEnabledProcessors\r
);\r
\r
/**\r
**/\r
VOID\r
SwitchNewBsp (\r
- IN UINTN ProcessorNumber\r
+ IN UINTN ProcessorNumber\r
);\r
\r
/**\r
**/\r
VOID\r
DumpCpuFeatureMask (\r
- IN UINT8 *FeatureMask,\r
- IN UINT32 BitMaskSize\r
+ IN UINT8 *FeatureMask,\r
+ IN UINT32 BitMaskSize\r
);\r
\r
/**\r
**/\r
CPU_FEATURE_DEPENDENCE_TYPE\r
DetectFeatureScope (\r
- IN CPU_FEATURES_ENTRY *CpuFeature,\r
- IN BOOLEAN Before,\r
- IN UINT8 *NextCpuFeatureMask\r
+ IN CPU_FEATURES_ENTRY *CpuFeature,\r
+ IN BOOLEAN Before,\r
+ IN UINT8 *NextCpuFeatureMask\r
);\r
\r
/**\r
**/\r
CPU_FEATURE_DEPENDENCE_TYPE\r
DetectNoneNeighborhoodFeatureScope (\r
- IN CPU_FEATURES_ENTRY *CpuFeature,\r
- IN BOOLEAN Before,\r
- IN LIST_ENTRY *FeatureList\r
+ IN CPU_FEATURES_ENTRY *CpuFeature,\r
+ IN BOOLEAN Before,\r
+ IN LIST_ENTRY *FeatureList\r
);\r
\r
/**\r
VOID\r
EFIAPI\r
SetProcessorRegister (\r
- IN OUT VOID *Buffer\r
+ IN OUT VOID *Buffer\r
);\r
\r
/**\r