/** * Performs CPU related initialization at the late entry point * * This function should be the last function run by the AGESA * CPU module and prepares the processor for the operating system * bootstrap load process. * * @param[in] StdHeader Config handle for library and services * @param[in] PlatformConfig Contains the runtime modifiable feature input data. * * @retval AGESA_SUCCESS * */ AGESA_STATUS AmdCpuLate ( IN AMD_CONFIG_PARAMS *StdHeader, IN PLATFORM_CONFIGURATION *PlatformConfig ) { DisableCf8ExtCfg (StdHeader); return (AGESA_SUCCESS); }
/** * Performs CPU related initialization at the late entry point * * This function should be the last function run by the AGESA * CPU module and prepares the processor for the operating system * bootstrap load process. * * @param[in] StdHeader Config handle for library and services * @param[in] PlatformConfig Contains the runtime modifiable feature input data. * * @retval AGESA_SUCCESS * */ AGESA_STATUS AmdCpuLate ( IN AMD_CONFIG_PARAMS *StdHeader, IN PLATFORM_CONFIGURATION *PlatformConfig ) { AP_EXE_PARAMS ApParams; if ((PlatformConfig->PlatformProfile.AdvancedPerformanceProfile.HardwarePrefetchMode != HARDWARE_PREFETCHER_AUTO) || (PlatformConfig->PlatformProfile.AdvancedPerformanceProfile.SoftwarePrefetchMode != SOFTWARE_PREFETCHES_AUTO)) { ApParams.StdHeader = *StdHeader; ApParams.FunctionNumber = AP_LATE_TASK_CPU_LATE_INIT; ApParams.RelatedDataBlock = (VOID *) PlatformConfig; ApParams.RelatedBlockLength = sizeof (PLATFORM_CONFIGURATION); RunLateApTaskOnAllAPs (&ApParams, StdHeader); CpuLateInitApTask (&ApParams); } DisableCf8ExtCfg (StdHeader); return (AGESA_SUCCESS); }