This series patchset try to implement Mp Service protocol in UefiCpuPkg,
Jordan had implemented the startup APs code, and I try to add more
initialization code to let all APs work up, this Mp Service protocol's
implementation use EmulatorPkg/MpService for reference.

TODO:
  1) StartupThisAP/StartAllAps: when Timeout expires before AP returns
  from Procedure, constrainedly terminate the executed Procedure.
  2) Support SwitchBSP(). (Or it is unnecessary)
   
Any Comment is welcome.

Chen Fan (11):
  UefiCpuPkg/CpuDxe: Allocate Stack for APs
  UefiCpuPkg/CpuDxe: extract the enable apic SVR code
  UefiCpuPkg/CpuDxe: update APs idtr and enable APs APIC
  UefiCpuPkg/CpuDxe: Detect APs and save processors info
  UefiCpuPkg/CpuDxe: introduce a new interrupt handler
  UefiCpuPkg/CpuDxe: install Mp Service protocol
  UefiCpuPkg/CpuDxe: implement Mp Services: GetProcessorInfo()
  UefiCpuPkg/CpuDxe: implement Mp Services: EnableDisableAP()
  UefiCpuPkg/CpuDxe: implement Mp Services: StartupThisAP()
  UefiCpuPkg/CpuDxe: implement Mp Services: StartupAllAPs()
  UefiCpuPkg/CpuDxe: MpService : checking ReadToBootEvent is signaled or
    not

Jordan Justen (6):
  UefiCpuPkg/CpuDxe: Add no-op InitializeMpSupport
  UefiCpuPkg/CpuDxe: Add ApEntryPointInC
  UefiCpuPkg/CpuDxe: Add stackless assembly AP entry points
  UefiCpuPkg/CpuDxe: Move GDT structures into CpuGdt.h
  UefiCpuPkg/CpuDxe: Add StartApsStackless routine
  UefiCpuPkg/CpuDxe: Startup APs

 UefiCpuPkg/CpuDxe/ApStartup.asm                |  111 +++
 UefiCpuPkg/CpuDxe/ApStartup.c                  |  194 ++++
 UefiCpuPkg/CpuDxe/CpuDxe.c                     |    3 +
 UefiCpuPkg/CpuDxe/CpuDxe.inf                   |    7 +
 UefiCpuPkg/CpuDxe/CpuGdt.c                     |   52 +-
 UefiCpuPkg/CpuDxe/CpuGdt.h                     |   72 ++
 UefiCpuPkg/CpuDxe/CpuMp.c                      | 1227 ++++++++++++++++++++++++
 UefiCpuPkg/CpuDxe/CpuMp.h                      |   93 ++
 UefiCpuPkg/CpuDxe/Ia32/MpAsm.S                 |   64 ++
 UefiCpuPkg/CpuDxe/X64/MpAsm.S                  |   67 ++
 UefiCpuPkg/Include/Library/LocalApicLib.h      |    8 +-
 UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c |   27 +-
 12 files changed, 1862 insertions(+), 63 deletions(-)
 create mode 100644 UefiCpuPkg/CpuDxe/ApStartup.asm
 create mode 100644 UefiCpuPkg/CpuDxe/ApStartup.c
 create mode 100644 UefiCpuPkg/CpuDxe/CpuGdt.h
 create mode 100644 UefiCpuPkg/CpuDxe/CpuMp.c
 create mode 100644 UefiCpuPkg/CpuDxe/CpuMp.h
 create mode 100644 UefiCpuPkg/CpuDxe/Ia32/MpAsm.S
 create mode 100644 UefiCpuPkg/CpuDxe/X64/MpAsm.S

-- 
1.9.3


------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to