REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 Apply uncrustify changes to .c/.h files in the SignedCapsulePkg 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: Jian J Wang <jian.j.wang@intel.com>
		
			
				
	
	
		
			96 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   Platform flash device access library.
 | |
| 
 | |
|   Copyright (c) 2016 - 2018, Intel Corporation. All rights reserved.<BR>
 | |
|   SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #ifndef __PLATFORM_FLASH_ACCESS_LIB_H__
 | |
| #define __PLATFORM_FLASH_ACCESS_LIB_H__
 | |
| 
 | |
| #include <Protocol/FirmwareManagement.h>
 | |
| 
 | |
| typedef enum {
 | |
|   FlashAddressTypeRelativeAddress,
 | |
|   FlashAddressTypeAbsoluteAddress,
 | |
| } FLASH_ADDRESS_TYPE;
 | |
| 
 | |
| //
 | |
| // Type 0 ~ 0x7FFFFFFF is defined in this library.
 | |
| // Type 0x80000000 ~ 0xFFFFFFFF is reserved for OEM.
 | |
| //
 | |
| typedef enum {
 | |
|   PlatformFirmwareTypeSystemFirmware,
 | |
|   PlatformFirmwareTypeNvRam,
 | |
| } PLATFORM_FIRMWARE_TYPE;
 | |
| 
 | |
| /**
 | |
|   Perform flash write operation.
 | |
| 
 | |
|   @param[in] FirmwareType      The type of firmware.
 | |
|   @param[in] FlashAddress      The address of flash device to be accessed.
 | |
|   @param[in] FlashAddressType  The type of flash device address.
 | |
|   @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
 | |
| PerformFlashWrite (
 | |
|   IN PLATFORM_FIRMWARE_TYPE  FirmwareType,
 | |
|   IN EFI_PHYSICAL_ADDRESS    FlashAddress,
 | |
|   IN FLASH_ADDRESS_TYPE      FlashAddressType,
 | |
|   IN VOID                    *Buffer,
 | |
|   IN UINTN                   Length
 | |
|   );
 | |
| 
 | |
| /**
 | |
|   Perform flash write operation with progress indicator.  The start and end
 | |
|   completion percentage values are passed into this function.  If the requested
 | |
|   flash write operation is broken up, then completion percentage between the
 | |
|   start and end values may be passed to the provided Progress function.  The
 | |
|   caller of this function is required to call the Progress function for the
 | |
|   start and end completion percentage values.  This allows the Progress,
 | |
|   StartPercentage, and EndPercentage parameters to be ignored if the requested
 | |
|   flash write operation can not be broken up
 | |
| 
 | |
|   @param[in] FirmwareType      The type of firmware.
 | |
|   @param[in] FlashAddress      The address of flash device to be accessed.
 | |
|   @param[in] FlashAddressType  The type of flash device address.
 | |
|   @param[in] Buffer            The pointer to the data buffer.
 | |
|   @param[in] Length            The length of data buffer in bytes.
 | |
|   @param[in] Progress          A function used report the progress of the
 | |
|                                firmware update.  This is an optional parameter
 | |
|                                that may be NULL.
 | |
|   @param[in] StartPercentage   The start completion percentage value that may
 | |
|                                be used to report progress during the flash
 | |
|                                write operation.
 | |
|   @param[in] EndPercentage     The end completion percentage value that may
 | |
|                                be used to report progress during the flash
 | |
|                                write operation.
 | |
| 
 | |
|   @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
 | |
| PerformFlashWriteWithProgress (
 | |
|   IN PLATFORM_FIRMWARE_TYPE                         FirmwareType,
 | |
|   IN EFI_PHYSICAL_ADDRESS                           FlashAddress,
 | |
|   IN FLASH_ADDRESS_TYPE                             FlashAddressType,
 | |
|   IN VOID                                           *Buffer,
 | |
|   IN UINTN                                          Length,
 | |
|   IN EFI_FIRMWARE_MANAGEMENT_UPDATE_IMAGE_PROGRESS  Progress         OPTIONAL,
 | |
|   IN UINTN                                          StartPercentage,
 | |
|   IN UINTN                                          EndPercentage
 | |
|   );
 | |
| 
 | |
| #endif
 |