]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiCpuPkg/Library/MpInitLib/MpLib.h
UefiCpuPkg/MpInitLib: Add AP assembly code and MP_CPU_EXCHANGE_INFO
[mirror_edk2.git] / UefiCpuPkg / Library / MpInitLib / MpLib.h
index 66425d30fbfce4739c89c9d6feb2ce79d831e58b..0453c22d5cf5eb02663fe71b0dab74c35012cf40 100644 (file)
 #include <Library/HobLib.h>\r
 \r
 \r
+#pragma pack(1)\r
+\r
+//\r
+// MP CPU exchange information for AP reset code\r
+// This structure is required to be packed because fixed field offsets\r
+// into this structure are used in assembly code in this module\r
+//\r
+typedef struct {\r
+  UINTN                 Lock;\r
+  UINTN                 StackStart;\r
+  UINTN                 StackSize;\r
+  UINTN                 CFunction;\r
+  IA32_DESCRIPTOR       GdtrProfile;\r
+  IA32_DESCRIPTOR       IdtrProfile;\r
+  UINTN                 BufferStart;\r
+  UINTN                 ModeOffset;\r
+  UINTN                 NumApsExecuting;\r
+  UINTN                 CodeSegment;\r
+  UINTN                 DataSegment;\r
+  UINTN                 Cr3;\r
+  PEI_CPU_MP_DATA       *PeiCpuMpData;\r
+} MP_CPU_EXCHANGE_INFO;\r
+\r
+#pragma pack()\r
 #endif\r
 \r