8ad05bd26b4850b5ed89867039fa989d4f256348 |
|
29-Dec-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Set initialize value of TimerPeriod This fix is to pass VS2010/VS2012 build. Cc: Feng Tian <feng.tian@intel.com> Cc: Dandan Bi <dandan.bi@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Dandan Bi <dandan.bi@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
b6e45716c3ebccba9c576b1c39502dfa8e62c9df |
|
26-Dec-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Disable and restore system timer interrupt We need to disable system timer interrup to avoid generating the pending interrupt on the old BSP. Cc: Feng Tian <feng.tian@intel.com> Cc: Kinney Michael D <michael.d.kinney@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
a8d75a1802df015a79d929f45972de98b9a0a2d9 |
|
26-Dec-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Move save/restore interrupt to SwitchBSPWorker() During switching BSP phase, we need to disable CPU interruput to prevent stack crashed by Timer interrupt handle. But when we enabled source debugging feature, debug timer interrupt handler (existing on both PEI and DXE) also could crash the stack used during switching BSP. So,we need to move save/restore interrupt to SwitchBSPWorker(). Cc: Feng Tian <feng.tian@intel.com> Cc: Kinney Michael D <michael.d.kinney@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
43c9fdcccd3254e929eb7b800b46418d78a4c2e8 |
|
26-Dec-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/DxeMpInitLib: Support source debugging on AP function The current DxeDebugAgentLib supports source debugging on AP function. This update is to update DxeMpInitLib to consume Debug Agent Library by DEBUG_AGENT_INIT_DXE_AP flag. Thus, we could source debugging AP function invoked by CPU MP Protocol. However, current SecPeiDebugAgentLib does not support source debugging on AP function invoked by CPU MP PPI. I have submitted one bugzilla to add this support at https://bugzilla.tianocore.org/show_bug.cgi?id=308. Cc: Feng Tian <feng.tian@intel.com> Cc: Kinney Michael D <michael.d.kinney@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
367284e7735478b0c4ad37d8f6bf17d3c4a473d0 |
|
13-Dec-2016 |
Dandan Bi <dandan.bi@intel.com> |
UefiCpuPkg: Make the comments align with the functions Cc: Jeff Fan <jeff.fan@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
9f91cb01c43e394f5368c6e9d16b58cbebf9ad9b |
|
25-Nov-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/DxeMpLib: Make sure APs in safe loop code Add one semaphore to make sure BSP to wait till all APs run in AP safe loop code. Cc: Laszlo Ersek <lersek@redhat.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
bf2786dc7900cb5ef04c9c5c720c0a26f11898b8 |
|
23-Nov-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/DxeMpLib: Allocate new safe stack < 4GB For long mode DXE, we will disable paging on AP to protected mode to execute AP safe loop code in reserved memory range under 4GB. But we forget to allocate stack for AP under 4GB and AP still are using original AP stack. If original AP stack is larger than 4GB, it cannot be used after AP is transferred to protected mode. Besides MwaitSupport == TRUE, AP stack is still required during phase of disabling paging in long mode DXE. Moreover, even though AP stack is always under 4GB (a) in Ia32 DXE and (b) with this patch, after transferring to protected mode from X64 DXE, AP stack (in BootServiceData) maybe crashed by OS after Exit Boot Service event. This fix is to allocate reserved memory range under 4GB together with AP safe loop code. APs will switch to new stack in safe loop code. Cc: Laszlo Ersek <lersek@redhat.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
081f6416ff7c2b6a2fe91bb96cdb645c3890a6f3 |
|
23-Nov-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/DxeMpLib: Get safe AP loop handler from global variable AP loop function is already saved into global variable, needn't to get it from AP function parameter. Cc: Laszlo Ersek <lersek@redhat.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
8677a56af68ea7fc93938c710be2ec53752ae961 |
|
11-Nov-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/DxeMpLib: Place APs to suitable state on Legacy OS boot Currently, DxeMpLib only places APs into specified c-state in Exit Boot Service callback function for UEFI OS boot. We need to put APs into specified c-state for legacy OS boot also. https://bugzilla.tianocore.org/show_bug.cgi?id=210 Cc: Laszlo Ersek <lersek@redhat.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
86af2eb8b4ec03e59c8c26cf7d51d294a7f905e7 |
|
11-Nov-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/DxeMpLib: Rename MpInitExitBootServicesCallback() Rename MpInitExitBootServicesCallback() to MpInitChangeApLoopCallback() because it will not only be invoked on Exit Boot Service Event, but also will be invoked on Legacy Ready To Boot Event. https://bugzilla.tianocore.org/show_bug.cgi?id=210 Cc: Laszlo Ersek <lersek@redhat.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
ffd6b0b1b65e620816fb16fe551f92309f4b7269 |
|
11-Nov-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/DxeMpLib: Allocate below 4GB mem for AsmRelocateApLoopFunc Current implementation just allocates reserve memory for AsmRelocateApLoopFunc. It not be safe because APs will be placed into 32bit protected mode on long mode DXE. This reserve memory must be located below 4GB memory. This fix is to allocate < 4GB memory for AsmRelocateApLoopFunc. Cc: Laszlo Ersek <lersek@redhat.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com> [lersek@redhat.com: strip whitespace at EOL] Signed-off-by: Laszlo Ersek <lersek@redhat.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
14e8137c8223f6d78135af6180b5e3145351da17 |
|
04-Nov-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Do not wakeup AP if only one processor supported If MaxLogicalProcessorNumber is only 1, we needn't to wake up APs at all and needn't to register callback functions. It could improve boot performance on single supported system. https://bugzilla.tianocore.org/show_bug.cgi?id=204 Cc: Feng Tian <feng.tian@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Acked-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
438f17665c949ccd8b2fec7646fa894f31b54df8 |
|
20-Oct-2016 |
Gary Lin <glin@suse.com> |
UefiCpuPkg: Fix typos in comments - excute -> execute - Retrive -> Retrieve - possilbe -> possible - CONTINOUS -> CONTINUOUS - storgage -> storage - allcated -> allocated - triggerred -> triggered - paramter -> parameter - perodically -> periodically - retore -> restore v2: - ruturn -> return Cc: Jeff Fan <jeff.fan@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gary Lin <glin@suse.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
3ed4e502b5f23fbcef235b3a9d025c60c217272b |
|
24-Aug-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Don't allocate reset vector in Exit Boot Service In Exit Boot Services callback function, we cannot use allocate memory services because it may change the memory map that has been gotten by OS. This fix is not to allocate reset vector buffer after SaveRestoreFlag is set to TRUE in MpInitExitBootServicesCallback(). Instead AllocateResetVector() will use the previous allocated buffer address and save the contents before copying reset vector code. At the same time, FreeResetVector() will restore original contents after if SaveRestoreFlag is TRUE. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
b31c1ad11e640eaa18cc32ceb095bc1ae5328ffa |
|
24-Aug-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Fix function header comments typo Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
5183fb3736bf2eb102474c6db19bf9a00be3d5f5 |
|
24-Aug-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Move allocating reserved memory for AP loop code In Exit Boot Services callback function, we cannot use allocate memory services because it may change the memory map that has been gotten by OS. This fix is to move allocating reserved memory for AP loop code to InitMpGlobalData() and save the memory address in one global variable. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Feng Tian <feng.tian@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
4d3314f694881f4a4a53636515da144230f1d913 |
|
24-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Place APs in safe loop before hand-off to OS Register Exit Boot Service callback function MpInitExitBootServicesCallback() to place AP one safe loop before hand-off to OS. Allocated one reserved memory and copy the AsmRellocateApLoop() code into it. It could avoid the CPU Dxe driver (located in Boot Service data range) crashed after Exit Boot Service event. Place AP into the target Cx-State (specified by PcdCpuApTargetCstate) could save power if Monitor-mwait feature supported. In long mode, switch AP into protected mode could let AP not require page table when executing this safe loop. Page Table (located in Boot Service data range) may crashed after Exit Boot Service event. v3: 1. Rename *RellocateAp* to *RelocateAp* Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
86efe97693a218349778727c7976cb5f584fb5f1 |
|
21-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Implementation of MpInitLibStartupAllAPs() v4: 1. Simply the internal function StartupAllAPsWorker()'s function header due to it is duplicated with MpInitLibStartupAllAPs(). v3: 1. Use CamelCase for mStopCheckAllApsStatus and CheckAndUpdateApsStatus() Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
20ae57745b19538229ba0670c10e08c13f9e2574 |
|
21-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Implementation of MpInitLibStartupThisAP() v4: 1. Simply the internal function StartupThisAPWorker()'s comment header due to it is duplicated with MpInitLibStartupThisAP(). v3: 1. Use CamelCase for mStopCheckAllApsStatus and CheckAndUpdateApsStatus(). Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
08085f08ecfb6a98ec8b70a75a48cfbe4220531e |
|
21-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Check APs Status and update APs status v3: 1. Use CamelCase for CheckAndUpdateApsStatus(). Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
e37109bcc75b3242fccb223979f954c162ee103f |
|
21-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Implementation of MpInitLibEnableDisableAP() v4: 1. Simply the internal function MpInitLibEnableDisableAP()'s function header due to it is duplicated with MpInitLibEnableDisableAP(). v3: 1. Use CamelCase for mCheckAllAPsEvent, mStopCheckAllApsStatus. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
41be0da59a6e0366e5e52f9c72ec9228a92a8c01 |
|
21-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Implementation of MpInitLibSwitchBSP() v4: 1. Simply the internal function SwitchBSPWorker()'s comment header due to it is duplicated with MpInitLibSwitchBSP(). v3: 1. Rename MpInitLibSwitchBsp to MpInitLibSwitchBSP. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
ed66e0e3f48db7a97ca82b8b630b0cf83b1283fb |
|
24-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Allocate AP reset vector buffer under 1MB In PeiMpInitLib, searching unallocated memory under in EFI_HOB_TYPE_RESOURCE_DESCRIPTOR hobs to find the memory under 1MB for AP reset vector. After End of PEI event triggered, we need to restore original the buffer contents to avoid crash the OS on S3 boot. In DxeMpInitLib, allocate the memory under 1MB for AP reset vector. Add helper functions AllocateResetVector()/FreeResetVector() used by WakeupAp(). v3: 1. Move SetTimer() from Patch #17 to Patch 16. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
963788618b043907ead2ed34ba3a4f3a65142116 |
|
21-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Register one period event to check APs status In DxeMpInitLib, register one period event callback function CheckAPsStatus() used to check AP Status. v5: 1. Introduce AP_CHECK_INTERVAL for adjust AP check timer interval potential. v3: 1. Use CamelCase for mCheckAllAPsEvent, mStopCheckAllApsStatus and CheckAndUpdateApsStatus(). 2. Move SetTimer() from Patch #17 to Patch 16. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
93ca4c0fd7d96f182790e56f147463ab1799da2a |
|
21-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Save CPU MP Data pointer In PeiMpInitLib, save CPU MP Data pointer into one local Guided HOB. In DxeMpInitLib, save CPU MP Data pointer into one global variable. Add helper functions GetCpuMpData()/SaveCpuMpData(). v5: 1. Move CPU_INIT_MP_LIB_HOB_GUID from MpLib.c to MpLib.h to make all C files visible. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|
3e8ad6bd7684502c6a57796a57fb7c6dbe3ec1c5 |
|
20-Jul-2016 |
Jeff Fan <jeff.fan@intel.com> |
UefiCpuPkg/MpInitLib: Add two instances PeiMpInitLib and DxeMpInitLib Add two MP Initialize Library instances PeiMpInitLib.inf and DxeMpInitLib.inf with NULL implementation. One PeiMpInitLib.inf is consumed by PEI MP driver. Another DxeMpInitLib.inf is consumed by DXE MP driver. Place MpInitLibStartupAllAPs()/MpInitLibStartupThisAp()/MpInitLibSwitchBSP()/ MpInitLibEnableDisableAP() into PeiMpLib.c and DxeMpLib.c, because they have the different implementations and will be updated in latter patches. v5: 1. Add back PeiExceptionHandlerLib.inf in UefiCpuPkg.dsc. It is removed incorrectly. v4: 1. Return EFI_UNSUPPORTED instead of EFI_SUCCESS for NULL implementation of all Functions. 2. Sync MpInitLibxxx functions header updating described in v4 part of Patch #4. v3: 1. Rename MpInitLibSwitchBsp to MpInitLibSwitchBSP to match PI spec Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
/device/linaro/bootloader/edk2/UefiCpuPkg/Library/MpInitLib/DxeMpLib.c
|