]> git.proxmox.com Git - mirror_edk2.git/blame - FmpDevicePkg/Include/Library/FmpDependencyCheckLib.h
FmpDevicePkg: Add Last Attempt Status support to dependency libs
[mirror_edk2.git] / FmpDevicePkg / Include / Library / FmpDependencyCheckLib.h
CommitLineData
6c496642
WX
1/** @file\r
2 Fmp Capsule Dependency check functions for Firmware Management Protocol based\r
3 firmware updates.\r
4\r
207414cb 5 Copyright (c) Microsoft Corporation.<BR>\r
6c496642
WX
6 Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>\r
7\r
8 SPDX-License-Identifier: BSD-2-Clause-Patent\r
9\r
10**/\r
11\r
12#ifndef __FMP_DEPENDENCY_CHECK_LIB__\r
13#define __FMP_DEPENDENCY_CHECK_LIB__\r
14\r
15#include <PiDxe.h>\r
16#include <Protocol/FirmwareManagement.h>\r
17\r
18/**\r
19 Check dependency for firmware update.\r
20\r
21 @param[in] ImageTypeId Image Type Id.\r
22 @param[in] Version New version.\r
23 @param[in] Dependencies Fmp dependency.\r
24 @param[in] DependenciesSize Size, in bytes, of the Fmp dependency.\r
207414cb
MK
25 @param[out] LastAttemptStatus An optional pointer to a UINT32 that holds the\r
26 last attempt status to report back to the caller.\r
27 This function will set the value to LAST_ATTEMPT_STATUS_SUCCESS\r
28 if an error code is not set.\r
6c496642
WX
29\r
30 @retval TRUE Dependencies are satisfied.\r
31 @retval FALSE Dependencies are unsatisfied or dependency check fails.\r
32\r
33**/\r
34BOOLEAN\r
35EFIAPI\r
36CheckFmpDependency (\r
37 IN EFI_GUID ImageTypeId,\r
38 IN UINT32 Version,\r
39 IN EFI_FIRMWARE_IMAGE_DEP *Dependencies, OPTIONAL\r
207414cb
MK
40 IN UINT32 DependenciesSize,\r
41 OUT UINT32 *LastAttemptStatus OPTIONAL\r
6c496642
WX
42 );\r
43\r
44#endif\r