From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1 with cipher CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 889571A1E8E for ; Tue, 11 Oct 2016 08:00:18 -0700 (PDT) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga101.fm.intel.com with ESMTP; 11 Oct 2016 08:00:18 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,329,1473145200"; d="scan'208,217";a="1043249172" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga001.jf.intel.com with ESMTP; 11 Oct 2016 08:00:17 -0700 Received: from fmsmsx114.amr.corp.intel.com (10.18.116.8) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.248.2; Tue, 11 Oct 2016 08:00:16 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by FMSMSX114.amr.corp.intel.com (10.18.116.8) with Microsoft SMTP Server (TLS) id 14.3.248.2; Tue, 11 Oct 2016 08:00:15 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.15]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.101]) with mapi id 14.03.0248.002; Tue, 11 Oct 2016 23:00:13 +0800 From: "Yao, Jiewen" To: Sean Brogan , "Kinney, Michael D" , "edk2-devel@lists.01.org" Thread-Topic: [edk2] [PATCH V2 00/50] Add capsule update and recovery sample. Thread-Index: AQHSGxVOm/vbd8SrlUC5vf2Y748GYKCR9evQgA/GiwCAACOEgIAAl/oAgADwvQA= Date: Tue, 11 Oct 2016 15:00:11 +0000 Message-ID: <74D8A39837DF1E4DA445A8C0B3885C50386A14D0@shsmsx102.ccr.corp.intel.com> References: <1475238128-22448-1-git-send-email-jiewen.yao@intel.com> <74D8A39837DF1E4DA445A8C0B3885C503869BC66@shsmsx102.ccr.corp.intel.com> In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.21 Subject: Re: [PATCH V2 00/50] Add capsule update and recovery sample. X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Oct 2016 15:00:18 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Comment individual package name - [SampleSystemFirmwareUpdatePkg] I do not think it is clear enough. To clarify the feature included: 1) It is for both firmware update and recovery. 2) It supports both system firmware update and device firmware update. If we want to move to a standalone one, I would suggest [SampleCapsulePkg] = or [SampleFmpPkg]. Thank you Yao Jiewen From: Sean Brogan [mailto:sean.brogan@microsoft.com] Sent: Tuesday, October 11, 2016 4:33 PM To: Kinney, Michael D ; Yao, Jiewen ; edk2-devel@lists.01.org Subject: RE: [edk2] [PATCH V2 00/50] Add capsule update and recovery sample= . Mike, Comments inline. I'll reply with code review comments to the individual patches. Thanks Sean > -----Original Message----- > From: Kinney, Michael D [mailto:michael.d.kinney@intel.com] > Sent: Monday, October 10, 2016 4:29 PM > To: Sean Brogan >; Yao, Jiewen > >; edk2-devel@lists.01.= org; Kinney, Michael D > > > Subject: RE: [edk2] [PATCH V2 00/50] Add capsule update and recovery samp= le. > > Sean, > > Thanks for the feedback. > > There are no touches to the MdePkg that contains the includes/libs for in= dustry > standard specifications. 23 of the patches are against MdeModulePkg, > IntelFrameworkModulePkg, and the SecurityPkg. The MdeModulePkg contains > modules that are allowed to depend on the MdePkg and any additional > definitions in the MdeModulePkg itself. Definitions that are added to th= e > MdeModulePkg are for features that are specific to the EDK II implementat= ion. > Jiewen has followed the guidelines for where content could be placed with= out > adding any new packages. [Sean Brogan] - I agree but I think tianocore would be best served if MdeMo= dulePkg contained bare bones implementations with as few assumptions and im= plementation specific features hardcoded into those modules. When I look a= t the various production code bases I have seen the modules that cause the = least maintenance overhead/customization/overriding/security problems are t= hose modules that strictly implement basic functionality. I am all for a m= odule having a set of well-constructed library callouts to allow a plug-in = or advanced feature but I just don't like to see that logic hard coded into= any MdeModulePkg module. I also don't think those advanced features shoul= d be implemented in the MdeModulePkg. > > I idea of putting the platform agnostic elements of the recovery and caps= ule > update features into its their own package seems like a reasonable idea. = Do > you have a proposal for a package name, package contents, and package > organization? [Sean Brogan] - SampleSystemFirmwareUpdatePkg > > The remaining patches against the Quark, VLV2, and UefiCpuPkg are working > examples of using the firmware update and recovery features. It would be > reasonable, and maybe easier to review if this patch series have been bro= ken > up into 4 series (Generic content, Quark, VLV2, and UefiCpuPkg). [Sean Brogan] - yes I agree. > > One of the goals of providing a complete implementation of the Firmware > Management Protocol > (FMP) in EDK II is to provide one implementation that we can all agree me= ets > our collective platform requirements to reduce fragmentation of recovery = and > capsule update solutions. > We can then focus review and validation efforts on this one solution. [Sean Brogan] - I am working on code review comments. Will try to respond= to the individual patch emails as appropriate. > > I agree with your observation that the UEFI/PI specification contents for= FMP, > capsules, and recovery support a wide array of possible implementations. = The > same could be said about the implementation of the PEI Core and DXE Core > and many other components in the MdeModulePkg. There are many ways to > implement those components that meet the UEFI/PI Specification > requirements. However, we tend to see only one implementation in the EDK= II > and we update that implementation as needed to improve platform > compatibility and accommodate new requirements. > > Do you have additional requirements for the current patch that would help > prevent the need for future fragmentation of this solution? > > Can you elaborate on the dependencies you see across the tree? I do not = think > that was the intent, and if there are ways to reduce those dependencies, = I want > to help drive those changes. It is my understanding that a platform that= wants > to use these recovery and capsule update features would depend on the > MdeModulePkg and the SecurityPkg. > > Thanks, > > Mike > > > > -----Original Message----- > > From: Sean Brogan [mailto:sean.brogan@microsoft.com] > > Sent: Monday, October 10, 2016 2:22 PM > > To: Yao, Jiewen >; ed= k2-devel@lists.01.org; > > Kinney, Michael D > > > Subject: RE: [edk2] [PATCH V2 00/50] Add capsule update and recovery > sample. > > > > 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, modula= r, > flexible codebase for the UEFI FW producing > > industry. As part of those goals I really want to see the standards b= ased > 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:edk2-devel-bounces@lists.01.org] On Behalf > > > Of Yao, Jiewen > > > Sent: Friday, September 30, 2016 5:32 AM > > > To: Yao, Jiewen >; = edk2-devel@lists.01.org > > > Cc: Tian, Feng >; Gao= , Liming > > > >; Zeng, Star >; Kinney, > > > Michael D >; Fan, Jeff > > > >; Zhang, Chao B > > > > 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 git@github.com:jyao1/edk2.git. > > > 2) Below is test I did for IniParsingLib. > > > 2.1) Unit test: > > > { EFI_SUCCESS, "[a]\nb=3Dc\n" }, > > > { EFI_SUCCESS, "[_]\n_=3D0\n" }, > > > { EFI_SUCCESS, "[a]\nb=3DCCCCCCCC-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, "=3D\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\n[=3Dc" }, > > > { EFI_INVALID_PARAMETER, "[a]\n=3D\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D#\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D;\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D~\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D!\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D@\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D$\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D%\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D^\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D&\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D*\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D(\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D)\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D-\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D+\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D{\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D}\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D[\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D]\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D;\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D:\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D'\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D\"\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D<\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D>\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D,\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D.\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D?\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D/\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D|\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3D\\\n" }, > > > { EFI_INVALID_PARAMETER, "[a]\nb=3DCCCCCCCC-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:edk2-devel-bounces@lists.01.org] On > > > > Behalf Of Jiewen Yao > > > > Sent: Friday, September 30, 2016 8:21 PM > > > > To: edk2-devel@lists.01.org > > > > Cc: Tian, Feng >; G= ao, Liming > > > > >; Zeng, Star >; Kinney, > > > > Michael D >; Fan, Jeff > > > > >; Zhang, Chao B > > > > > Subject: [edk2] [PATCH V2 00/50] Add capsule update and recovery > > > sample. > > > > > > > > =3D=3DBelow is V2 description=3D=3D > > > > 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 fi= le. > > > > If there is any vialation, the OpenInitFile() API will return failu= re. > > > > 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. > > > > > > > > =3D=3DBelow is V1 description=3D=3D > > > > This series patch provides sample on how to do signed capsule > > > > update and recovery in EDKII. > > > > > > > > This series patch is also checked into git@github.com:jyao1/edk2.gi= t. > > > > > > > > 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 > > > > > Cc: Star Zeng > > > > > Cc: Michael D Kinney > > > > > Cc: Liming Gao > > > > > Cc: Chao Zhang > > > > > Cc: Jeff Fan > > > > > Contributed-under: TianoCore Contribution Agreement 1.0 > > > > Signed-off-by: Jiewen Yao > > > > > > > > > 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 F= MP. > > > > 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 definiti= on. > > > > 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 capsul= e > > > > 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.i > > > > nf > > > > | 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/PlatformFlashAccessL > > > ib > > > > Null.c | 54 + > > > > > > > > > > > MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessL > > > ib > > > > Null.inf | 40 + > > > > > > > > > > > MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessL > > > ib > > > > 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/Plat > > > for > > > > mFlashAccessLibDxe.c | 200 +++ > > > > > > > > > > > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Plat > > > for > > > > mFlashAccessLibDxe.inf | 52 + > > > > > > > > > > > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/SpiF > > > las > > > > hDevice.c | 336 +++++ > > > > > > > > > > > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/SpiF > > > las > > > > 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/FmpAuthenticationPkcs7 > > > Lib > > > > .c | 147 ++ > > > > > > > > > > > SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7 > > > Lib > > > > .inf | 52 + > > > > > > > > > > > SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7 > > > Lib > > > > .uni | 26 + > > > > > > > > > > > SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticat > > > io > > > > nRsa2048Sha256Lib.c | 289 ++++ > > > > > > > > > > > SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticat > > > io > > > > nRsa2048Sha256Lib.inf | 53 + > > > > > > > > > > > SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticat > > > io > > > > 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/MicrocodeFlashAccessL > > > ib > > > > Null.c | 42 + > > > > > > > > > > > UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessL > > > ib > > > > Null.inf | 40 + > > > > > > > > > > > UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessL > > > ib > > > > 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/Pla > > > tfor > > > > mFlashAccessLib.c | 193 +++ > > > > > > > > > > > Vlv2TbltDevicePkg/Feature/Capsule/Library/PlatformFlashAccessLib/Pla > > > tfor > > > > mFlashAccessLib.inf | 47 + > > > > > > > > > > > Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFir > > > m > > > > wareDescriptor.aslc | 89 ++ > > > > > > > > > > > Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFir > > > m > > > > wareDescriptor.inf | 45 + > > > > > > > > > > > Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFir > > > m > > > > 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.i > > > > nf > > > > create mode 100644 > > > > MdeModulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.u > > > > ni > > > > 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/PlatformFlashAccessL > > > ib > > > > Null.c > > > > create mode 100644 > > > > > > > MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessL > > > ib > > > > Null.inf > > > > create mode 100644 > > > > > > > MdeModulePkg/Library/PlatformFlashAccessLibNull/PlatformFlashAccessL > > > ib > > > > 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/Pl > > > > atfo > > > > r > > > > mFlashAccessLibDxe.c > > > > create mode 100644 > > > > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Pl > > > > atfo > > > > r > > > > mFlashAccessLibDxe.inf > > > > create mode 100644 > > > > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Sp > > > > iFla > > > > s > > > > hDevice.c > > > > create mode 100644 > > > > QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/Sp > > > > iFla > > > > 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/FmpAuthenticationPkcs7 > > > Li > > > > b > > > > .c > > > > create mode 100644 > > > > > > > SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7 > > > Li > > > > b > > > > .inf > > > > create mode 100644 > > > > > > > SecurityPkg/Library/FmpAuthenticationPkcs7Lib/FmpAuthenticationPkcs7 > > > Li > > > > b > > > > .uni > > > > create mode 100644 > > > > > > > SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticat > > > io > > > > nRsa2048Sha256Lib.c > > > > create mode 100644 > > > > > > > SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticat > > > io > > > > nRsa2048Sha256Lib.inf > > > > create mode 100644 > > > > > > > SecurityPkg/Library/FmpAuthenticationRsa2048Sha256Lib/FmpAuthenticat > > > io > > > > 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/MicrocodeFlashAccessL > > > ib > > > > Null.c > > > > create mode 100644 > > > > > > > UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessL > > > ib > > > > Null.inf > > > > create mode 100644 > > > > > > > UefiCpuPkg/Library/MicrocodeFlashAccessLibNull/MicrocodeFlashAccessL > > > ib > > > > 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/P > > > > latf > > > > or > > > > mFlashAccessLib.c > > > > create mode 100644 > > > > Vlv2TbltDevicePkg/Feature/Capsule/Library/PlatformFlashAccessLib/P > > > > latf > > > > or > > > > mFlashAccessLib.inf > > > > create mode 100644 > > > > > > > Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFir > > > m > > > > wareDescriptor.aslc > > > > create mode 100644 > > > > > > > Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFir > > > m > > > > wareDescriptor.inf > > > > create mode 100644 > > > > > > > Vlv2TbltDevicePkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFir > > > m > > > > 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 > > > > edk2-devel@lists.01.org > > > > https://lists.01.org/mailman/listinfo/edk2-devel > > > _______________________________________________ > > > edk2-devel mailing list > > > edk2-devel@lists.01.org > > > https://lists.01.org/mailman/listinfo/edk2-devel