]> git.proxmox.com Git - mirror_edk2.git/blame - UefiCpuPkg/Include/Guid/MicrocodePatchHob.h
UefiCpuPkg: Add definitions for EDKII microcode patch HOB
[mirror_edk2.git] / UefiCpuPkg / Include / Guid / MicrocodePatchHob.h
CommitLineData
25390997
HW
1/** @file\r
2 The microcode patch HOB is used to store the information of:\r
3 A. Base address and size of the loaded microcode patches data;\r
4 B. Detected microcode patch for each processor within system.\r
5\r
6 Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>\r
7 SPDX-License-Identifier: BSD-2-Clause-Patent\r
8\r
9**/\r
10\r
11#ifndef _MICROCODE_PATCH_HOB_H_\r
12#define _MICROCODE_PATCH_HOB_H_\r
13\r
14extern EFI_GUID gEdkiiMicrocodePatchHobGuid;\r
15\r
16//\r
17// The EDKII microcode patch HOB will be produced by MpInitLib and it can be\r
18// consumed by modules that want to detect/apply microcode patches.\r
19//\r
20typedef struct {\r
21 //\r
22 // The base address of the microcode patches data after being loaded into\r
23 // memory.\r
24 //\r
25 UINT64 MicrocodePatchAddress;\r
26 //\r
27 // The total size of the loaded microcode patches.\r
28 //\r
29 UINT64 MicrocodePatchRegionSize;\r
30 //\r
31 // The number of processors within the system.\r
32 //\r
33 UINT32 ProcessorCount;\r
34 //\r
35 // An array with 'ProcessorCount' elements that stores the offset (with\r
36 // regard to 'MicrocodePatchAddress') of the detected microcode patch\r
37 // (including the CPU_MICROCODE_HEADER data structure) for each processor.\r
38 // If no microcode patch is detected for certain processor, the relating\r
39 // element will be set to MAX_UINT64.\r
40 //\r
41 UINT64 ProcessorSpecificPatchOffset[0];\r
42} EDKII_MICROCODE_PATCH_HOB;\r
43\r
44#endif\r