public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Kinney, Michael D" <michael.d.kinney@intel.com>
To: edk2-devel@lists.01.org
Cc: Sean Brogan <sean.brogan@microsoft.com>,
	Jiewen Yao <jiewen.yao@intel.com>,
	Star Zeng <star.zeng@intel.com>,
	Michael D Kinney <michael.d.kinney@intel.com>
Subject: [Patch v6 00/23] Add FmpDevicePkg
Date: Wed,  1 Aug 2018 16:29:00 -0700	[thread overview]
Message-ID: <20180801232923.18720-1-michael.d.kinney@intel.com> (raw)

Changes in V6
=============
* Remove Bool PCD comparison against TRUE in BDS
* Remove useless lib mapping in FmpDevicePkg DSC file
* Fix XCODE build failure due to extra parenthesis

Changes in V4/V5
=================
* Return 0 when LSV check is not required
* Remove IPF
* Add DISABLE_NEW_DEPRECATED_INTERFACES build options
* Check Progress!= NULL before calling Progress(100)
* Add EFI_ABORTED in retval of CheckTheImage()
* Fix typo "EFI_SECURITY_VIOLATIO"
* Add NULL check to return Value from GetVariable2
* Check ImageIndex first before Image/ImageSize
* Use Attributes to know whether reset is required
* Add comment in mFmpDeviceLocked's declaration
* Return UNSUPPORTED if device has been locked
* Initialize DeviceLibLowestSupportedVersion
* Fix code style issue
* Use local variable to store test key digest size

Changes in V3
=============
* Change CheckLowestSupportedVersion() to LowestSupportedVersionCheckRequired()
* Change LockFmpDeviceAtLockEventGuid() to LockFmpDeviceAtLockEventGuidRequired()
* Set EDKII_FIRMWARE_MANAGEMENT_PROGRESS_PROTOCOL Version field to 1
* Fix description of return values in LowestSupportedVersionCheckRequired()
* Fix description of return values in LockFmpDeviceAtLockEventGuidRequired()

Changes in V2
=============
* FmpDevicePkg DEC file
  + Change PcdFmpDeviceSystemResetRequired from FeatureFlag
    to FixedAtBuild
  + Add PcdFmpDeviceTestKeySha256Digest for test key detection.
    Set to {0} to disable test key detection.
* FmpDevicePkg DSC file
  + Fix ARM and AARCH64 build issues
  + Update DisplayUpdateProgressLib mappings to match patches in
    Bug_801_DisplayUpdateProgressLib_V2
* FmpDeviceLib Class and Instance
  + Update FmpDeviceGetSize() to return EFI_STATUS
  + Update FmpDeviceGetAttributes() to return EFI_STATUS
  + Update FmpDeviceGetVersionString() to return EFI_STATUS
* FmpDxe
  + Set depex to Variable Arch Write Protocol and Variable Lock Protocol
  + Break out test key detection in FmpDxe into DetectTestKey.c
  + Change LockAllVars() to LockAllFmpVariables()
  + Update LockAllFmpVariables() to lock each of the UEFI variables used.
  + Always lock UEFI variables when PcdFmpDeviceLockEventGuid is signaled
  + Remove ComputeVersionName().  FmpDeviceLib must provide version string

Based on content from the following branch:

https://github.com/Microsoft/MS_UEFI/tree/share/MsCapsuleSupport/MsCapsuleUpdatePkg

Further development and testing of FmpDevicePkg was performed at:
  https://github.com/tianocore/edk2-staging/tree/FmpDevicePkg-master
  https://github.com/tianocore/edk2-staging/tree/FmpDevicePkg-UDK2018

This package provides an implementation of a Firmware Management Protocol
instance that supports the update of firmware storage devices using UEFI
Capsules.  The behavior of the Firmware Management Protocol instance is
customized using libraries and PCDs.

Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>

Kinney, Michael D (5):
  FmpDevicePkg: Add package, library classes, and PCDs
  FmpDevicePkg: Add library instances
  FmpDevicePkg: Add FmpDxe module
  FmpDevicePkg: Add DSC file to build all package components
  MdeModulePkg/BdsDxe: Move display of test key usage into BDS module

Star Zeng (16):
  FmpDevicePkg FmpDxe: Update function comment for FmpDxeEntryPoint
  FmpDevicePkg FmpDxe: Return 0 when LSV check is not required
  FmpDevicePkg: Remove IPF
  FmpDevicePkg: Add DISABLE_NEW_DEPRECATED_INTERFACES build options
  FmpDevicePkg FmpDxe: Check Progress!= NULL before calling
    Progress(100)
  FmpDevicePkg FmpDxe: Add EFI_ABORTED in retval of CheckTheImage()
  FmpDevicePkg FmpDxe: Fix typo "EFI_SECURITY_VIOLATIO"
  FmpDevicePkg: Remove DisplayUpdateProgressLib mapping for FmpDxe
  FmpDevicePkg FmpDxe: Add NULL check to return Value from GetVariable2
  FmpDevicePkg FmpDxe: Check ImageIndex first before Image/ImageSize
  FmpDevicePkg FmpDxe: Use Attributes to know whether reset is required
  FmpDevicePkg FmpDxe: Add comment in mFmpDeviceLocked's declaration
  FmpDevicePkg FmpDxe: Return UNSUPPORTED if device has been locked
  FmpDevicePkg FmpDxe: Initialize DeviceLibLowestSupportedVersion
  FmpDevicePkg: Fix code style issue
  FmpDevicePkg FmpDxe: Use local variable to store test key digest size

Zeng, Star (2):
  FmpDevicePkg/FmpDxe: Fix XCODE build failure
  FmpDevicePkg: Remove useless lib mapping in dsc

 FmpDevicePkg/FmpDevicePkg.dec                      |  125 ++
 FmpDevicePkg/FmpDevicePkg.dsc                      |  114 ++
 FmpDevicePkg/FmpDevicePkg.uni                      |   75 +
 FmpDevicePkg/FmpDevicePkgExtra.uni                 |   18 +
 FmpDevicePkg/FmpDxe/DetectTestKey.c                |  168 +++
 FmpDevicePkg/FmpDxe/FmpDxe.c                       | 1474 ++++++++++++++++++++
 FmpDevicePkg/FmpDxe/FmpDxe.inf                     |   92 ++
 FmpDevicePkg/FmpDxe/FmpDxe.uni                     |   20 +
 FmpDevicePkg/FmpDxe/FmpDxeExtra.uni                |   18 +
 FmpDevicePkg/FmpDxe/FmpDxeLib.inf                  |   89 ++
 FmpDevicePkg/FmpDxe/VariableSupport.c              |  461 ++++++
 FmpDevicePkg/FmpDxe/VariableSupport.h              |  180 +++
 .../Include/Library/CapsuleUpdatePolicyLib.h       |  120 ++
 FmpDevicePkg/Include/Library/FmpDeviceLib.h        |  405 ++++++
 FmpDevicePkg/Include/Library/FmpPayloadHeaderLib.h |  100 ++
 .../CapsuleUpdatePolicyLibNull.c                   |  136 ++
 .../CapsuleUpdatePolicyLibNull.inf                 |   45 +
 .../CapsuleUpdatePolicyLibNull.uni                 |   17 +
 .../Library/FmpDeviceLibNull/FmpDeviceLib.c        |  427 ++++++
 .../Library/FmpDeviceLibNull/FmpDeviceLibNull.inf  |   48 +
 .../Library/FmpDeviceLibNull/FmpDeviceLibNull.uni  |   18 +
 .../FmpPayloadHeaderLibV1/FmpPayloadHeaderLib.c    |  188 +++
 .../FmpPayloadHeaderLibV1.inf                      |   48 +
 .../FmpPayloadHeaderLibV1.uni                      |   21 +
 MdeModulePkg/Universal/BdsDxe/BdsDxe.inf           |    1 +
 MdeModulePkg/Universal/BdsDxe/BdsEntry.c           |   12 +
 26 files changed, 4420 insertions(+)
 create mode 100644 FmpDevicePkg/FmpDevicePkg.dec
 create mode 100644 FmpDevicePkg/FmpDevicePkg.dsc
 create mode 100644 FmpDevicePkg/FmpDevicePkg.uni
 create mode 100644 FmpDevicePkg/FmpDevicePkgExtra.uni
 create mode 100644 FmpDevicePkg/FmpDxe/DetectTestKey.c
 create mode 100644 FmpDevicePkg/FmpDxe/FmpDxe.c
 create mode 100644 FmpDevicePkg/FmpDxe/FmpDxe.inf
 create mode 100644 FmpDevicePkg/FmpDxe/FmpDxe.uni
 create mode 100644 FmpDevicePkg/FmpDxe/FmpDxeExtra.uni
 create mode 100644 FmpDevicePkg/FmpDxe/FmpDxeLib.inf
 create mode 100644 FmpDevicePkg/FmpDxe/VariableSupport.c
 create mode 100644 FmpDevicePkg/FmpDxe/VariableSupport.h
 create mode 100644 FmpDevicePkg/Include/Library/CapsuleUpdatePolicyLib.h
 create mode 100644 FmpDevicePkg/Include/Library/FmpDeviceLib.h
 create mode 100644 FmpDevicePkg/Include/Library/FmpPayloadHeaderLib.h
 create mode 100644 FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleUpdatePolicyLibNull.c
 create mode 100644 FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleUpdatePolicyLibNull.inf
 create mode 100644 FmpDevicePkg/Library/CapsuleUpdatePolicyLibNull/CapsuleUpdatePolicyLibNull.uni
 create mode 100644 FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLib.c
 create mode 100644 FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLibNull.inf
 create mode 100644 FmpDevicePkg/Library/FmpDeviceLibNull/FmpDeviceLibNull.uni
 create mode 100644 FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHeaderLib.c
 create mode 100644 FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHeaderLibV1.inf
 create mode 100644 FmpDevicePkg/Library/FmpPayloadHeaderLibV1/FmpPayloadHeaderLibV1.uni

-- 
2.14.2.windows.3



             reply	other threads:[~2018-08-01 23:29 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-01 23:29 Kinney, Michael D [this message]
2018-08-01 23:29 ` [Patch v6 01/23] FmpDevicePkg: Add package, library classes, and PCDs Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 02/23] FmpDevicePkg: Add library instances Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 03/23] FmpDevicePkg: Add FmpDxe module Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 04/23] FmpDevicePkg: Add DSC file to build all package components Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 05/23] FmpDevicePkg FmpDxe: Update function comment for FmpDxeEntryPoint Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 06/23] FmpDevicePkg FmpDxe: Return 0 when LSV check is not required Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 07/23] FmpDevicePkg: Remove IPF Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 08/23] FmpDevicePkg: Add DISABLE_NEW_DEPRECATED_INTERFACES build options Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 09/23] FmpDevicePkg FmpDxe: Check Progress!= NULL before calling Progress(100) Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 10/23] FmpDevicePkg FmpDxe: Add EFI_ABORTED in retval of CheckTheImage() Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 11/23] FmpDevicePkg FmpDxe: Fix typo "EFI_SECURITY_VIOLATIO" Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 12/23] FmpDevicePkg: Remove DisplayUpdateProgressLib mapping for FmpDxe Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 13/23] FmpDevicePkg FmpDxe: Add NULL check to return Value from GetVariable2 Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 14/23] FmpDevicePkg FmpDxe: Check ImageIndex first before Image/ImageSize Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 15/23] FmpDevicePkg FmpDxe: Use Attributes to know whether reset is required Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 16/23] FmpDevicePkg FmpDxe: Add comment in mFmpDeviceLocked's declaration Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 17/23] FmpDevicePkg FmpDxe: Return UNSUPPORTED if device has been locked Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 18/23] FmpDevicePkg FmpDxe: Initialize DeviceLibLowestSupportedVersion Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 19/23] FmpDevicePkg: Fix code style issue Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 20/23] FmpDevicePkg FmpDxe: Use local variable to store test key digest size Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 21/23] FmpDevicePkg/FmpDxe: Fix XCODE build failure Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 22/23] FmpDevicePkg: Remove useless lib mapping in dsc Kinney, Michael D
2018-08-01 23:29 ` [Patch v6 23/23] MdeModulePkg/BdsDxe: Move display of test key usage into BDS module Kinney, Michael D

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180801232923.18720-1-michael.d.kinney@intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox