This library is used to abstract microcode flash region access. This library is consumed by a microcode capsule update module. Cc: Jeff Fan <jeff.fan@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
		
			
				
	
	
		
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/** @file
 | 
						|
  Microcode flash device access library.
 | 
						|
 | 
						|
  Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
 | 
						|
  This program and the accompanying materials
 | 
						|
  are licensed and made available under the terms and conditions of the BSD License
 | 
						|
  which accompanies this distribution.  The full text of the license may be found at
 | 
						|
  http://opensource.org/licenses/bsd-license.php
 | 
						|
 | 
						|
  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | 
						|
  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | 
						|
 | 
						|
**/
 | 
						|
 | 
						|
 | 
						|
#ifndef __MICROCODE_FLASH_ACCESS_LIB_H__
 | 
						|
#define __MICROCODE_FLASH_ACCESS_LIB_H__
 | 
						|
 | 
						|
/**
 | 
						|
  Perform microcode write opreation.
 | 
						|
 | 
						|
  @param[in] FlashAddress      The address of flash device to be accessed.
 | 
						|
  @param[in] Buffer            The pointer to the data buffer.
 | 
						|
  @param[in] Length            The length of data buffer in bytes.
 | 
						|
 | 
						|
  @retval EFI_SUCCESS           The operation returns successfully.
 | 
						|
  @retval EFI_WRITE_PROTECTED   The flash device is read only.
 | 
						|
  @retval EFI_UNSUPPORTED       The flash device access is unsupported.
 | 
						|
  @retval EFI_INVALID_PARAMETER The input parameter is not valid.
 | 
						|
**/
 | 
						|
EFI_STATUS
 | 
						|
EFIAPI
 | 
						|
MicrocodeFlashWrite (
 | 
						|
  IN EFI_PHYSICAL_ADDRESS         FlashAddress,
 | 
						|
  IN VOID                         *Buffer,
 | 
						|
  IN UINTN                        Length
 | 
						|
  );
 | 
						|
 | 
						|
#endif
 |