Jiewen, Mike, and the EDK2 list,

This is not a feedback directly on this patch and the C code but more on the 
overall feature of capsule update/recovery.  

You are implementing one specific way to do capsule update.  There are infinite 
other implementations and my issue is how this implementation is scattering 
thru the Industry standard (Mde*) packages.  I think our shared goal for 
Tianocore and edk2 is to create a well-designed, modular, flexible codebase for 
the UEFI FW producing industry.   As part of those goals I really want to see 
the standards based packages shrink to the minimum necessary to create a secure 
and robust core, and optional/advanced features should reside in other packages 
that a consumer can pick and choose from.  This set of patches is counter to 
that goal.  It contains over 50 patches, most are in the MdeModulePkg, and 
introduces new dependencies across the entire tree for this implementation 
choice.   

Thoughts?  


Thanks
Sean


> -----Original Message-----
> From: edk2-devel [mailto:[email protected]] On Behalf Of
> Yao, Jiewen
> Sent: Friday, September 30, 2016 5:32 AM
> To: Yao, Jiewen <[email protected]>; [email protected]
> Cc: Tian, Feng <[email protected]>; Gao, Liming <[email protected]>;
> Zeng, Star <[email protected]>; Kinney, Michael D
> <[email protected]>; Fan, Jeff <[email protected]>; Zhang, Chao
> B <[email protected]>
> Subject: Re: [edk2] [PATCH V2 00/50] Add capsule update and recovery
> sample.
> 
> Hi
> Here is V2 serial.
> I forgot to mention:
> 1) This series is also pushed to [email protected]:jyao1/edk2.git.
> 2) Below is test I did for IniParsingLib.
> 2.1) Unit test:
>   { EFI_SUCCESS,           "[a]\nb=c\n" },
>   { EFI_SUCCESS,           "[_]\n_=0\n" },
>   { EFI_SUCCESS,           "[a]\nb=CCCCCCCC-CCCC-CCCC-CCCC-
> CCCCCCCCCCCC\n" },
>   { EFI_INVALID_PARAMETER, "[]\n" },
>   { EFI_INVALID_PARAMETER, "[[\n" },
>   { EFI_INVALID_PARAMETER, "[[a]]\n" },
>   { EFI_INVALID_PARAMETER, "[\n" },
>   { EFI_INVALID_PARAMETER, "]\n" },
>   { EFI_INVALID_PARAMETER, "a\n" },
>   { EFI_INVALID_PARAMETER, "=\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb\n" },
>   { EFI_INVALID_PARAMETER, "[a]\n[=c" },
>   { EFI_INVALID_PARAMETER, "[a]\n=\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=#\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=;\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=~\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=!\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=@\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=$\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=%\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=^\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=&\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=*\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=(\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=)\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=-\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=+\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb={\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=}\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=[\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=]\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=;\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=:\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb='\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=\"\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=<\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=>\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=,\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=.\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=?\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=/\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=|\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=\\\n" },
>   { EFI_INVALID_PARAMETER, "[a]\nb=CCCCCCCC-CCCC-CCCC-CCCC-
> CCCCCCCCCCCCC\n" },
> 2.2) Fuzzing test:
>       a) Randomize a block of valid data.
>       b) Randomize the length of valid data file.
>       c) Inject random char as data file.
> 
> Thank you
> Yao Jiewen
> 
> > -----Original Message-----
> > From: edk2-devel [mailto:[email protected]] On Behalf Of
> > Jiewen Yao
> > Sent: Friday, September 30, 2016 8:21 PM
> > To: [email protected]
> > Cc: Tian, Feng <[email protected]>; Gao, Liming
> > <[email protected]>; Zeng, Star <[email protected]>; Kinney,
> > Michael D <[email protected]>; Fan, Jeff
> > <[email protected]>; Zhang, Chao B <[email protected]>
> > Subject: [edk2] [PATCH V2 00/50] Add capsule update and recovery
> sample.
> >
> > ==Below is V2 description==
> > The V2 series patch incorporated the feedback for V1.
> >
> > There are 3 major updates.
> > 1) BDS is update to display a warning message if TEST key is used to
> > sign recovery image or capsule image.
> > So a production BIOS should always use its own production singing key
> > for the capsule image generation. A production BIOS should never use
> > test key.
> > 2) IniParsingLib is enhanced to do more sanity check for invalid
> > input. The detail data format is added in IniParsingLib.h header file.
> > If there is any vialation, the OpenInitFile() API will return failure.
> > 3) The *Bios* keyword is renamed to *SystemFirmware* in any header
> > file or c file data structure definition.
> >
> > The rest is minor update, such as add help info, clean up debug
> > message, coding style.
> >
> > ==Below is V1 description==
> > This series patch provides sample on how to do signed capsule update
> > and recovery in EDKII.
> >
> > This series patch is also checked into [email protected]:jyao1/edk2.git.
> >
> > The feature includes:
> > 1) Define EDKII signed system BIOS capsule format.
> > 2) Provide EDKII signed system BIOS update sample.
> > 3) Provide EDKII signed recovery sample.
> > 4) Provide Microcode update sample for X86 system.
> > 5) Update Quark to use new capsule/recovery solution.
> > 6) Update Vlv2(MinnowMax) to use new capsule/recovery solution.
> >
> > The signed capsule/recovery solution is in MdeModulePkg.
> > The capsule in IntelFrameworkModulePkg is deprecated.
> > The Microcode update solution is in UefiCpuPkg.
> >
> > Cc: Feng Tian <[email protected]>
> > Cc: Star Zeng <[email protected]>
> > Cc: Michael D Kinney <[email protected]>
> > Cc: Liming Gao <[email protected]>
> > Cc: Chao Zhang <[email protected]>
> > Cc: Jeff Fan <[email protected]>
> > Contributed-under: TianoCore Contribution Agreement 1.0
> > Signed-off-by: Jiewen Yao <[email protected]>
> >
> > Jiewen Yao (50):
> >   MdeModulePkg/Include: Add EDKII system FMP capsule header.
> >   MdeModulePkg/Include: Add EdkiiSystemCapsuleLib definition.
> >   MdeModulePkg/Include: Add FmpAuthenticationLib header.
> >   MdeModulePkg/Include: Add IniParsingLib header.
> >   MdeModulePkg/Include: Add PlatformFlashAccessLib header.
> >   MdeModulePkg/CapsuleLib: Add ProcessCapsules() API.
> >   MdeModulePkg/MdeModulePkg.dec: Add capsule related definition.
> >   MdeModulePkg/IniParsingLib: Add InitParsingLib instance.
> >   MdeModulePkg/FmpAuthenticationLib: Add FmpAuthenticationLib
> > instance.
> >   MdeModulePkg/DxeCapsuleLibFmp: Add DxeCapsuleLibFmp instance.
> >   MdeModulePkg/DxeCapsuleLibNull: Add ProcessCapsules() interface.
> >   MdeModulePkg/EdkiiSystemCapsuleLib: Add EdkiiSystemCapsuleLib
> >     instance.
> >   MdeModulePkg/PlatformFlashAccessLib: Add NULL
> > PlatformFlashAccessLib.
> >   MdeModulePkg/Esrt: Add ESRT_FW_TYPE_SYSTEMFIRMWARE check.
> >   MdeModulePkg/SystemFirmwareUpdate: Add SystemFirmwareUpdate.
> >   MdeModulePkg/RecoveryModuleLoadPei: Add RecoveryModuleLoadPei.
> >   MdeModulePkg/CapsuleApp: Add CapsuleApp application.
> >   MdeModulePkg/MdeModulePkg.dsc: Add capsule related component.
> >   IntelFrameworkModulePkg/DxeCapsuleLib: Add ProcessCapsules()
> >     interface.
> >   SecurityPkg/SecurityPkg.dec: Add PcdPkcs7CertBuffer PCD.
> >   SecurityPkg/FmpAuthenticationPkcs7Lib: Add PKCS7 NULL class for FMP.
> >   SecurityPkg/FmpAuthenticationRsa2048Sha256Lib: Add NULL class for
> > FMP.
> >   SecurityPkg/SecurityPkg.dsc: Add FmpAuthentication*Lib.
> >   BaseTool/Pkcs7: Add TestRoot.cer.
> >   UefiCpuPkg/Include: Add Microcode FMP definition.
> >   UefiCpuPkg/Include: Add MicrocodeFlashAccessLib header.
> >   UefiCpuPkg/UefiCpuPkg.dec: Add Microcode capsule related definition.
> >   UefiCpuPkg/MicrocodeUpdate: Add MicrocodeUpdate component.
> >   UefiCpuPkg/MicrocodeFlashAccessLib: Add NULL
> > MicrocodeFlashAccessLib.
> >   UefiCpuPkg/MicrocodeCapsuleApp: Add MicrocodeCapsuleApp
> application.
> >   UefiCpuPkg/UefiCpuPkg.dsc: Add MicrocodeCapsule related component.
> >   QuarkPlatformPkg/dec: Add test key file guid.
> >   QuarkPlatformPkg/PlatformFlashAccessLib: Add instance for capsule
> >     update.
> >   QuarkPlatformPkg/SystemFirmwareDescriptor: Add Descriptor for capsule
> >     update.
> >   QuarkPlatformPkg/SystemFirmwareUpdateConfig: Add capsule config file.
> >   QuarkPlatformPkg/PlatformInit: Remove recovery PPI installation.
> >   QuarkPlatformPkg/PlatformBootManager: Add capsule/recovery
> handling.
> >   QuarkPlatformPkg/dsc/fdf: Add capsule/recovery support.
> >   QuarkPlatformPkg/dsc/fdf: add capsule generation DSC/FDF.
> >   QuarkPlatformPkg/Readme: add capsule/recovery related content.
> >   Vlv2TbltDevicePkg/dec: Add test key file guid.
> >   Vlv2TbltDevicePkg/PlatformFlashAccessLib: Add instance for capsule
> >     update.
> >   Vlv2TbltDevicePkg/SystemFirmwareDescriptor: Add Descriptor for capsule
> >     update.
> >   Vlv2TbltDevicePkg/SystemFirmwareUpdateConfig: Add capsule config file.
> >   Vlv2TbltDevicePkg/FlashDeviceLib: Add DXE flash device lib.
> >   Vlv2TbltDevicePkg/PlatformBootManager: Add capsule/recovery
> > handling.
> >   Vlv2TbltDevicePkg/dsc/fdf: Add capsule/recovery support.
> >   Vlv2TbltDevicePkg/dsc/fdf: add capsule generation DSC/FDF.
> >   Vlv2TbltDevicePkg/bat: add capsule generation in bat.
> >   Vlv2TbltDevicePkg/Build: Add capsule/recovery in help info.
> >
> >  BaseTools/Source/Python/Pkcs7Sign/TestRoot.cer
> > |  Bin 0 -> 756 bytes
> >  IntelFrameworkModulePkg/Library/DxeCapsuleLib/DxeCapsuleLib.c
> > |   39 +-
> >  MdeModulePkg/Application/CapsuleApp/AppSupport.c
> > |  480 ++++++
> >  MdeModulePkg/Application/CapsuleApp/CapsuleApp.c
> > |  875 +++++++++++
> >  MdeModulePkg/Application/CapsuleApp/CapsuleApp.inf
> > |   71 +
> >  MdeModulePkg/Application/CapsuleApp/CapsuleApp.uni
> > |   22 +
> >  MdeModulePkg/Application/CapsuleApp/CapsuleAppExtra.uni
> > |   19 +
> >  MdeModulePkg/Application/CapsuleApp/CapsuleDump.c
> > |  840 +++++++++++
> >  MdeModulePkg/Include/Guid/EdkiiSystemFmpCapsule.h
> > |  110 ++
> >  MdeModulePkg/Include/Library/CapsuleLib.h
> > |   45 +-
> >  MdeModulePkg/Include/Library/EdkiiSystemCapsuleLib.h
> > |  154 ++
> >  MdeModulePkg/Include/Library/FmpAuthenticationLib.h
> > |   91 ++
> >  MdeModulePkg/Include/Library/IniParsingLib.h
> > |  166 +++
> >  MdeModulePkg/Include/Library/PlatformFlashAccessLib.h
> > |   59 +
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.c
> > | 1543 ++++++++++++++++++++
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf
> > |   82 ++
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.uni
> > |   22 +
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleProcessLib.c
> > |  517 +++++++
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleReportLib.c
> > |  447 ++++++
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleRuntime.c
> > |  112 ++
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
> > |   85 ++
> >  MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.uni
> > |   22 +
> >  MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.c
> > |   47 +-
> >  MdeModulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.c
> > |  616 ++++++++
> >  MdeModulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.inf
> > |   55 +
> >
> MdeModulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.uni
> > |   22 +
> >  MdeModulePkg/Library/FmpAuthenitcationLib/FmpAuthenitcationLib.c
> > |  277 ++++
> >  MdeModulePkg/Library/FmpAuthenitcationLib/FmpAuthenitcationLib.inf
> > |   47 +
> >  MdeModulePkg/Library/FmpAuthenitcationLib/FmpAuthenitcationLib.uni
> > |   22 +
> >  MdeModulePkg/Library/IniParsingLib/IniParsingLib.c
> > | 1424 ++++++++++++++++++
> >  MdeModulePkg/Library/IniParsingLib/IniParsingLib.inf
> > |   42 +
> >  MdeModulePkg/Library/IniParsingLib/IniParsingLib.uni
> > |   22 +
> >
> >
> MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLib
> > Null.c                   |   54 +
> >
> >
> MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLib
> > Null.inf                 |   40 +
> >
> >
> MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLib
> > Null.uni                 |   21 +
> >  MdeModulePkg/MdeModulePkg.dec
> > |  106 ++
> >  MdeModulePkg/MdeModulePkg.dsc
> > |   24 +
> >  MdeModulePkg/Universal/EsrtDxe/EsrtDxe.inf
> > |    3 +-
> >  MdeModulePkg/Universal/EsrtDxe/EsrtImpl.c
> > |   37 +-
> >  MdeModulePkg/Universal/RecoveryModuleLoadPei/ParseConfigProfile.c
> > |  176 +++
> >
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.c                           |  748 ++++++++++
> >
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.h                           |   44 +
> >
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.inf                         |   69 +
> >
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.uni                         |   21 +
> >
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > eiExtra.uni                    |   20 +
> >  MdeModulePkg/Universal/SystemFirmwareUpdate/ParseConfigProfile.c
> > |  244 ++++
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareDxe.h
> > |  393 +++++
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareMainD
> x
> > e.c                            |  484 ++++++
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareMainS
> et
> > Image.c                       |  465 ++++++
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareMainS
> et
> > ImageDummy.c                  |   90 ++
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReport
> > Dxe.inf                        |   66 +
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReport
> > Dxe.uni                        |   21 +
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReport
> > DxeExtra.uni                   |   20 +
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdat
> e
> > Dxe.inf                        |   70 +
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdat
> e
> > Dxe.uni                        |   21 +
> >
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdat
> e
> > DxeExtra.uni                   |   20 +
> >
> >
> QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platfor
> > mFlashAccessLibDxe.c    |  200 +++
> >
> >
> QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platfor
> > mFlashAccessLibDxe.inf  |   52 +
> >
> >
> QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/SpiFlas
> > hDevice.c               |  336 +++++
> >
> >
> QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/SpiFlas
> > hDevice.h               |  186 +++
> >
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.aslc        |   89 ++
> >
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.inf         |   45 +
> >
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptorPei.c        |   66 +
> >
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareUpdateConfig/System
> F
> > irmwareUpdateConfig.ini     |   62 +
> >
> >
> QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManager
> > .c                          |  129 +-
> >
> >
> QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManager
> > .h                          |    9 +-
> >
> >
> QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManager
> > Lib.inf                     |   15 +-
> >  QuarkPlatformPkg/Platform/Pei/PlatformInit/MemoryCallback.c
> > |    3 +-
> >  QuarkPlatformPkg/Quark.dsc
> > |   61 +-
> >  QuarkPlatformPkg/Quark.fdf
> > |   67 +
> >  QuarkPlatformPkg/QuarkCapsule.dsc
> > |   44 +
> >  QuarkPlatformPkg/QuarkCapsule.fdf
> > |   82 ++
> >  QuarkPlatformPkg/QuarkMin.dsc
> > |    7 +-
> >  QuarkPlatformPkg/QuarkPlatformPkg.dec
> > |    3 +
> >  QuarkPlatformPkg/Readme.md
> > |   17 +
> >
> >
> SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7Lib
> > .c                      |  147 ++
> >
> >
> SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7Lib
> > .inf                    |   52 +
> >
> >
> SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7Lib
> > .uni                    |   26 +
> >
> >
> SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticatio
> > nRsa2048Sha256Lib.c      |  289 ++++
> >
> >
> SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticatio
> > nRsa2048Sha256Lib.inf    |   53 +
> >
> >
> SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticatio
> > nRsa2048Sha256Lib.uni    |   26 +
> >  SecurityPkg/SecurityPkg.dec
> > |    8 +-
> >  SecurityPkg/SecurityPkg.dsc
> > |    3 +
> >  UefiCpuPkg/Application/MicrocodeCapsuleApp/AppSupport.c
> > |  480 ++++++
> >  UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleApp.c
> > |  283 ++++
> >  UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleApp.inf
> > |   62 +
> >
> UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleApp.uni
> > |   22 +
> >
> >
> UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleAppExtra.
> > uni                        |   19 +
> >  UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleDump.c
> > |  171 +++
> >  UefiCpuPkg/Include/Guid/MicrocodeFmp.h
> > |   21 +
> >  UefiCpuPkg/Include/Library/MicrocodeFlashAccessLib.h
> > |   39 +
> >
> >
> UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessLib
> > Null.c                   |   42 +
> >
> >
> UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessLib
> > Null.inf                 |   40 +
> >
> >
> UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessLib
> > Null.uni                 |   21 +
> >  UefiCpuPkg/MicrocodeUpdate/MicrocodeFmp.c
> > |  537 +++++++
> >  UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdate.c
> > |  779 ++++++++++
> >  UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdate.h
> > |  403 +++++
> >  UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdate.inf
> > |   68 +
> >  UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdateDxe.uni
> > |   21 +
> >  UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdateDxeExtra.uni
> > |   20 +
> >  UefiCpuPkg/UefiCpuPkg.dec
> > |    7 +
> >  UefiCpuPkg/UefiCpuPkg.dsc
> > |    3 +
> >  Vlv2TbltDevicePkg/Build_IFWI.bat
> > |    5 +
> >
> >
> Vlv2TbltDevicePkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platfor
> > mFlashAccessLib.c      |  193 +++
> >
> >
> Vlv2TbltDevicePkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platfor
> > mFlashAccessLib.inf    |   47 +
> >
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.aslc       |   89 ++
> >
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.inf        |   45 +
> >
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptorPei.c       |   66 +
> >
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareUpdateConfig/System
> F
> > irmwareUpdateConfig.ini    |   72 +
> >
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareUpdateConfig/System
> F
> > irmwareUpdateConfigGcc.ini |   72 +
> >  Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLib.c
> > |  156 +-
> >  Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLib.inf
> > |    8 +-
> >  Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLibDxe.c
> > |   62 +
> >  Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLibDxe.inf
> > |   49 +
> >
> >
> Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLibDxeRuntimeSmm.c
> > |  188 +++
> >  Vlv2TbltDevicePkg/Library/FlashDeviceLib/SpiChipDefinitions.h
> > |    5 +-
> >  Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
> > |  179 ++-
> >  Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
> > |    6 +
> >  Vlv2TbltDevicePkg/PlatformCapsule.dsc
> > |   44 +
> >  Vlv2TbltDevicePkg/PlatformCapsule.fdf
> > |   81 +
> >  Vlv2TbltDevicePkg/PlatformCapsuleGcc.fdf
> > |   81 +
> >  Vlv2TbltDevicePkg/PlatformPkg.dec
> > |    3 +
> >  Vlv2TbltDevicePkg/PlatformPkg.fdf
> > |  146 +-
> >  Vlv2TbltDevicePkg/PlatformPkgConfig.dsc
> > |    3 +-
> >  Vlv2TbltDevicePkg/PlatformPkgGcc.fdf
> > |  146 +-
> >  Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc
> > |   70 +-
> >  Vlv2TbltDevicePkg/PlatformPkgIA32.dsc
> > |   70 +-
> >  Vlv2TbltDevicePkg/PlatformPkgX64.dsc
> > |   70 +-
> >  Vlv2TbltDevicePkg/bld_vlv.bat
> > |    9 +-
> >  129 files changed, 18331 insertions(+), 381 deletions(-)  create mode
> > 100644 BaseTools/Source/Python/Pkcs7Sign/TestRoot.cer
> >  create mode 100644
> > MdeModulePkg/Application/CapsuleApp/AppSupport.c
> >  create mode 100644
> > MdeModulePkg/Application/CapsuleApp/CapsuleApp.c
> >  create mode 100644
> > MdeModulePkg/Application/CapsuleApp/CapsuleApp.inf
> >  create mode 100644
> > MdeModulePkg/Application/CapsuleApp/CapsuleApp.uni
> >  create mode 100644
> > MdeModulePkg/Application/CapsuleApp/CapsuleAppExtra.uni
> >  create mode 100644
> > MdeModulePkg/Application/CapsuleApp/CapsuleDump.c
> >  create mode 100644
> > MdeModulePkg/Include/Guid/EdkiiSystemFmpCapsule.h
> >  create mode 100644
> > MdeModulePkg/Include/Library/EdkiiSystemCapsuleLib.h
> >  create mode 100644
> > MdeModulePkg/Include/Library/FmpAuthenticationLib.h
> >  create mode 100644 MdeModulePkg/Include/Library/IniParsingLib.h
> >  create mode 100644
> > MdeModulePkg/Include/Library/PlatformFlashAccessLib.h
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.c
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.uni
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleProcessLib.c
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleReportLib.c
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleRuntime.c
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
> >  create mode 100644
> > MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.uni
> >  create mode 100644
> > MdeModulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.c
> >  create mode 100644
> > MdeModulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.inf
> >  create mode 100644
> > MdeModulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.uni
> >  create mode 100644
> > MdeModulePkg/Library/FmpAuthenitcationLib/FmpAuthenitcationLib.c
> >  create mode 100644
> > MdeModulePkg/Library/FmpAuthenitcationLib/FmpAuthenitcationLib.inf
> >  create mode 100644
> > MdeModulePkg/Library/FmpAuthenitcationLib/FmpAuthenitcationLib.uni
> >  create mode 100644 MdeModulePkg/Library/IniParsingLib/IniParsingLib.c
> >  create mode 100644
> > MdeModulePkg/Library/IniParsingLib/IniParsingLib.inf
> >  create mode 100644
> > MdeModulePkg/Library/IniParsingLib/IniParsingLib.uni
> >  create mode 100644
> >
> MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLib
> > Null.c
> >  create mode 100644
> >
> MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLib
> > Null.inf
> >  create mode 100644
> >
> MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessLib
> > Null.uni
> >  create mode 100644
> > MdeModulePkg/Universal/RecoveryModuleLoadPei/ParseConfigProfile.c
> >  create mode 100644
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.c
> >  create mode 100644
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.h
> >  create mode 100644
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.inf
> >  create mode 100644
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > ei.uni
> >  create mode 100644
> >
> MdeModulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadP
> > eiExtra.uni
> >  create mode 100644
> > MdeModulePkg/Universal/SystemFirmwareUpdate/ParseConfigProfile.c
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareDxe.h
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareMainD
> x
> > e.c
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareMainS
> et
> > Image.c
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareMainS
> et
> > ImageDummy.c
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReport
> > Dxe.inf
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReport
> > Dxe.uni
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReport
> > DxeExtra.uni
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdat
> e
> > Dxe.inf
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdat
> e
> > Dxe.uni
> >  create mode 100644
> >
> MdeModulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdat
> e
> > DxeExtra.uni
> >  create mode 100644
> > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platfo
> > r
> > mFlashAccessLibDxe.c
> >  create mode 100644
> > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platfo
> > r
> > mFlashAccessLibDxe.inf
> >  create mode 100644
> > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/SpiFla
> > s
> > hDevice.c
> >  create mode 100644
> > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/SpiFla
> > s
> > hDevice.h
> >  create mode 100644
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.aslc
> >  create mode 100644
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.inf
> >  create mode 100644
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptorPei.c
> >  create mode 100644
> >
> QuarkPlatformPkg/Feature/Capsule/SystemFirmwareUpdateConfig/System
> F
> > irmwareUpdateConfig.ini
> >  create mode 100644 QuarkPlatformPkg/QuarkCapsule.dsc  create mode
> > 100644 QuarkPlatformPkg/QuarkCapsule.fdf  create mode 100644
> >
> SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7Li
> > b
> > .c
> >  create mode 100644
> >
> SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7Li
> > b
> > .inf
> >  create mode 100644
> >
> SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7Li
> > b
> > .uni
> >  create mode 100644
> >
> SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticatio
> > nRsa2048Sha256Lib.c
> >  create mode 100644
> >
> SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticatio
> > nRsa2048Sha256Lib.inf
> >  create mode 100644
> >
> SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticatio
> > nRsa2048Sha256Lib.uni
> >  create mode 100644
> > UefiCpuPkg/Application/MicrocodeCapsuleApp/AppSupport.c
> >  create mode 100644
> > UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleApp.c
> >  create mode 100644
> > UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleApp.inf
> >  create mode 100644
> > UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleApp.uni
> >  create mode 100644
> >
> UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleAppExtra.
> > uni
> >  create mode 100644
> > UefiCpuPkg/Application/MicrocodeCapsuleApp/MicrocodeCapsuleDump.c
> >  create mode 100644 UefiCpuPkg/Include/Guid/MicrocodeFmp.h
> >  create mode 100644
> > UefiCpuPkg/Include/Library/MicrocodeFlashAccessLib.h
> >  create mode 100644
> >
> UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessLib
> > Null.c
> >  create mode 100644
> >
> UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessLib
> > Null.inf
> >  create mode 100644
> >
> UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessLib
> > Null.uni
> >  create mode 100644 UefiCpuPkg/MicrocodeUpdate/MicrocodeFmp.c
> >  create mode 100644 UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdate.c
> >  create mode 100644 UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdate.h
> >  create mode 100644 UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdate.inf
> >  create mode 100644
> > UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdateDxe.uni
> >  create mode 100644
> > UefiCpuPkg/MicrocodeUpdate/MicrocodeUpdateDxeExtra.uni
> >  create mode 100644
> > Vlv2TbltDevicePkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platf
> > or
> > mFlashAccessLib.c
> >  create mode 100644
> > Vlv2TbltDevicePkg/Feature/Capsule/Library/PlatformFlashAccessLib/Platf
> > or
> > mFlashAccessLib.inf
> >  create mode 100644
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.aslc
> >  create mode 100644
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptor.inf
> >  create mode 100644
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirm
> > wareDescriptorPei.c
> >  create mode 100644
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareUpdateConfig/System
> F
> > irmwareUpdateConfig.ini
> >  create mode 100644
> >
> Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareUpdateConfig/System
> F
> > irmwareUpdateConfigGcc.ini
> >  create mode 100644
> > Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLibDxe.c
> >  create mode 100644
> > Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLibDxe.inf
> >  create mode 100644
> >
> Vlv2TbltDevicePkg/Library/FlashDeviceLib/FlashDeviceLibDxeRuntimeSmm.c
> >  create mode 100644 Vlv2TbltDevicePkg/PlatformCapsule.dsc
> >  create mode 100644 Vlv2TbltDevicePkg/PlatformCapsule.fdf
> >  create mode 100644 Vlv2TbltDevicePkg/PlatformCapsuleGcc.fdf
> >
> > --
> > 2.7.4.windows.1
> >
> > _______________________________________________
> > edk2-devel mailing list
> > [email protected]
> > https://lists.01.org/mailman/listinfo/edk2-devel
> _______________________________________________
> edk2-devel mailing list
> [email protected]
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to