REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 Apply uncrustify changes to .c/.h files in the UefiCpuPkg package Cc: Andrew Fish <afish@apple.com> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
		
			
				
	
	
		
			66 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   This file declares EDKII Shadow Microcode PPI.
 | |
| 
 | |
|   Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>
 | |
|   SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #ifndef __PPI_SHADOW_MICROCODE_H__
 | |
| #define __PPI_SHADOW_MICROCODE_H__
 | |
| 
 | |
| #define EDKII_PEI_SHADOW_MICROCODE_PPI_GUID \
 | |
|   { \
 | |
|     0x430f6965, 0x9a69, 0x41c5, { 0x93, 0xed, 0x8b, 0xf0, 0x64, 0x35, 0xc1, 0xc6 } \
 | |
|   }
 | |
| 
 | |
| typedef struct _EDKII_PEI_SHADOW_MICROCODE_PPI EDKII_PEI_SHADOW_MICROCODE_PPI;
 | |
| 
 | |
| typedef struct {
 | |
|   UINT32    ProcessorSignature;
 | |
|   UINT8     PlatformId;
 | |
| } EDKII_PEI_MICROCODE_CPU_ID;
 | |
| 
 | |
| /**
 | |
|   Shadow microcode update patches to memory.
 | |
| 
 | |
|   The function is used for shadowing microcode update patches to a continuous memory.
 | |
|   It shall allocate memory buffer and only shadow the microcode patches for those
 | |
|   processors specified by MicrocodeCpuId array. The checksum verification may be
 | |
|   skiped in this function so the caller must perform checksum verification before
 | |
|   using the microcode patches in returned memory buffer.
 | |
| 
 | |
|   @param[in]  This                 The PPI instance pointer.
 | |
|   @param[in]  CpuIdCount           Number of elements in MicrocodeCpuId array.
 | |
|   @param[in]  MicrocodeCpuId       A pointer to an array of EDKII_PEI_MICROCODE_CPU_ID
 | |
|                                    structures.
 | |
|   @param[out] BufferSize           Pointer to receive the total size of Buffer.
 | |
|   @param[out] Buffer               Pointer to receive address of allocated memory
 | |
|                                    with microcode patches data in it.
 | |
| 
 | |
|   @retval EFI_SUCCESS              The microcode has been shadowed to memory.
 | |
|   @retval EFI_OUT_OF_RESOURCES     The operation fails due to lack of resources.
 | |
| 
 | |
| **/
 | |
| typedef
 | |
| EFI_STATUS
 | |
| (EFIAPI *EDKII_PEI_SHADOW_MICROCODE)(
 | |
|   IN  EDKII_PEI_SHADOW_MICROCODE_PPI        *This,
 | |
|   IN  UINTN                                 CpuIdCount,
 | |
|   IN  EDKII_PEI_MICROCODE_CPU_ID            *MicrocodeCpuId,
 | |
|   OUT UINTN                                 *BufferSize,
 | |
|   OUT VOID                                  **Buffer
 | |
|   );
 | |
| 
 | |
| ///
 | |
| /// This PPI is installed by some platform or chipset-specific PEIM that
 | |
| /// abstracts handling microcode shadow support.
 | |
| ///
 | |
| struct _EDKII_PEI_SHADOW_MICROCODE_PPI {
 | |
|   EDKII_PEI_SHADOW_MICROCODE    ShadowMicrocode;
 | |
| };
 | |
| 
 | |
| extern EFI_GUID  gEdkiiPeiShadowMicrocodePpiGuid;
 | |
| 
 | |
| #endif
 |