[edk2-devel] [PATCH V4 0/5] FmpDevicePkg: Move capsule dependency implement to library

Liming Gao liming.gao at intel.com
Fri May 15 03:01:21 UTC 2020


Reviewed-by: Liming Gao <liming.gao at intel.com>

> -----Original Message-----
> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of Xu, Wei6
> Sent: Friday, May 15, 2020 9:51 AM
> To: devel at edk2.groups.io
> Cc: Kinney, Michael D <michael.d.kinney at intel.com>; Gao, Liming <liming.gao at intel.com>; Sean Brogan
> <sean.brogan at microsoft.com>
> Subject: [edk2-devel] [PATCH V4 0/5] FmpDevicePkg: Move capsule dependency implement to library
> 
> v4:
> - Remove the CONST in ValidateDependency API to keep APIs common.
> 
> v3:
> - Refine description and comments of API: EvaluateDependency(),
> GetFmpDependency(), CheckFmpDependency().
> - Remove the check on the dependencies coming from other FMP instances.
> 
> v2:
> - Remove API GetDependencySize in FmpDependencyLib.
> - Correct comments in FmpDependencyLib unit test; Correct the error status
> when CreateUnitTestSuite fails.
> - Update comments for null instance of FmpDependencyCheckLib; Remove
> SaveFmpDependency and GetFmpDependency from FmpDependencyCheckLib
> - Add new FmpDependencyDevice library class to provide firmware device
> specific SaveFmpDependency and GetFmpDependency services.
> - Update FmpDxe to use new FmpDependencyDeviceLib
> 
> v1:
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2696
> 
> This patch series move the implementation of Fmp Capsule Dependency from
> FmpDxe driver into two library classes. FmpDependencyLib is a base lib
> to provide generic dependency evaluation services. FmpDependencyCheckLib
> is a platform lib to provide dependency check services during firmware
> update. Platform can perform the dependency check in platform specific
> manner by implementing its own FmpDependencyCheckLib.
> This patch series also add unit test for EvaluateDependency API in
> FmpDependencyLib.
> 
> Cc: Michael D Kinney <michael.d.kinney at intel.com>
> Cc: Liming Gao <liming.gao at intel.com>
> Cc: Sean Brogan <sean.brogan at microsoft.com>
> Signed-off-by: Wei6 Xu <wei6.xu at intel.com>
> 
> 
> Wei6 Xu (5):
>   FmpDevicePkg: Add FmpDependency library class and BASE instance
>   FmpDevicePkg/Test: Add FmpDependencyLib unit test
>   FmpDevicePkg: Add FmpDependencyCheck library class and instances
>   FmpDevicePkg: Add FmpDependencyDevice library class and NULL instance
>   FmpDevicePkg/FmpDxe: Use new Fmp dependency libraries
> 
>  FmpDevicePkg/FmpDevicePkg.ci.yaml                  |  10 +
>  FmpDevicePkg/FmpDevicePkg.dec                      |  15 +-
>  FmpDevicePkg/FmpDevicePkg.dsc                      |  16 +-
>  FmpDevicePkg/FmpDxe/Dependency.h                   |  63 ----
>  FmpDevicePkg/FmpDxe/FmpDxe.c                       | 256 ++++------------
>  FmpDevicePkg/FmpDxe/FmpDxe.h                       |   4 +
>  FmpDevicePkg/FmpDxe/FmpDxe.inf                     |   5 +-
>  FmpDevicePkg/FmpDxe/FmpDxeLib.inf                  |   5 +-
>  .../Include/Library/FmpDependencyCheckLib.h        |  38 +++
>  .../Include/Library/FmpDependencyDeviceLib.h       |  51 ++++
>  FmpDevicePkg/Include/Library/FmpDependencyLib.h    |  89 ++++++
>  .../FmpDependencyCheckLib/FmpDependencyCheckLib.c  | 196 ++++++++++++
>  .../FmpDependencyCheckLib.inf                      |  43 +++
>  .../FmpDependencyCheckLib.uni                      |  13 +
>  .../FmpDependencyCheckLibNull.c                    |  34 +++
>  .../FmpDependencyCheckLibNull.inf                  |  30 ++
>  .../FmpDependencyCheckLibNull.uni                  |  13 +
>  .../FmpDependencyDeviceLib.c                       |  50 +++
>  .../FmpDependencyDeviceLibNull.inf                 |  29 ++
>  .../FmpDependencyDeviceLibNull.uni                 |  12 +
>  .../FmpDependencyLib/FmpDependencyLib.c}           | 337 +++++++--------------
>  .../Library/FmpDependencyLib/FmpDependencyLib.inf  |  34 +++
>  .../Library/FmpDependencyLib/FmpDependencyLib.uni  |  12 +
>  FmpDevicePkg/Test/FmpDeviceHostPkgTest.dsc         |  28 ++
>  .../FmpDependencyLib/EvaluateDependencyUnitTest.c  | 270 +++++++++++++++++
>  .../FmpDependencyLibUnitTestsHost.inf              |  34 +++
>  .../FmpDependencyLibUnitTestsUefi.inf              |  35 +++
>  27 files changed, 1216 insertions(+), 506 deletions(-)
>  delete mode 100644 FmpDevicePkg/FmpDxe/Dependency.h
>  create mode 100644 FmpDevicePkg/Include/Library/FmpDependencyCheckLib.h
>  create mode 100644 FmpDevicePkg/Include/Library/FmpDependencyDeviceLib.h
>  create mode 100644 FmpDevicePkg/Include/Library/FmpDependencyLib.h
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyCheckLib/FmpDependencyCheckLib.c
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyCheckLib/FmpDependencyCheckLib.inf
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyCheckLib/FmpDependencyCheckLib.uni
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyCheckLibNull/FmpDependencyCheckLibNull.c
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyCheckLibNull/FmpDependencyCheckLibNull.inf
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyCheckLibNull/FmpDependencyCheckLibNull.uni
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyDeviceLibNull/FmpDependencyDeviceLib.c
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyDeviceLibNull/FmpDependencyDeviceLibNull.inf
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyDeviceLibNull/FmpDependencyDeviceLibNull.uni
>  rename FmpDevicePkg/{FmpDxe/Dependency.c => Library/FmpDependencyLib/FmpDependencyLib.c} (53%)
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyLib/FmpDependencyLib.inf
>  create mode 100644 FmpDevicePkg/Library/FmpDependencyLib/FmpDependencyLib.uni
>  create mode 100644 FmpDevicePkg/Test/FmpDeviceHostPkgTest.dsc
>  create mode 100644 FmpDevicePkg/Test/UnitTest/Library/FmpDependencyLib/EvaluateDependencyUnitTest.c
>  create mode 100644 FmpDevicePkg/Test/UnitTest/Library/FmpDependencyLib/FmpDependencyLibUnitTestsHost.inf
>  create mode 100644 FmpDevicePkg/Test/UnitTest/Library/FmpDependencyLib/FmpDependencyLibUnitTestsUefi.inf
> 
> --
> 2.16.2.windows.1
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#59628): https://edk2.groups.io/g/devel/message/59628
Mute This Topic: https://groups.io/mt/74219538/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list