Reviewed-by: Zailiang Sun <zailiang....@intel.com> > -----Original Message----- > From: Kinney, Michael D > Sent: Thursday, May 9, 2019 12:31 PM > To: devel@edk2.groups.io > Cc: Sun, Zailiang <zailiang....@intel.com>; Qian, Yi <yi.q...@intel.com> > Subject: [Patch 15/16] Vlv2TbltDevicePkg/Capsule: Add Linux/LVFS > generation scripts > > Add batch scripts to generate the LVFS compatible capsule update driver. > > Add DSC/FDF files to build capsules and invoke post build shell scripts for > Linux build environments. > > Make versions consistent. > > Cc: Zailiang Sun <zailiang....@intel.com> > Cc: Yi Qian <yi.q...@intel.com> > Signed-off-by: Michael D Kinney <michael.d.kin...@intel.com> > --- > .../Capsule/GenerateCapsule/GenCapsuleAll.bat | 12 +- > .../Capsule/GenerateCapsule/GenCapsuleAll.sh | 28 ++++ > .../GenerateCapsule/GenCapsuleMinnowMax.bat | 4 +- > .../GenerateCapsule/GenCapsuleMinnowMax.sh | 65 ++++++++ > .../GenCapsuleMinnowMaxRelease.bat | 4 +- > .../GenCapsuleMinnowMaxRelease.sh | 65 ++++++++ > .../GenerateCapsule/GenCapsuleSampleColor.sh | 70 > +++++++++ .../Feature/Capsule/GenerateCapsule/Lvfs.ddf | 14 ++ > .../LvfsGenCapsuleMinnowMax.bat | 139 +++++++++++++++++ > .../LvfsGenCapsuleMinnowMaxRelease.bat | 139 +++++++++++++++++ > .../LvfsGenCapsuleSampleColor.bat | 145 ++++++++++++++++++ > .../GenerateCapsule/template.metainfo.xml | 27 ++++ > Vlv2TbltDevicePkg/PlatformCapsuleGcc.dsc | 38 +++++ > 13 files changed, 743 insertions(+), 7 deletions(-) create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.sh > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnow > Max.sh > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnow > MaxRelease.sh > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampleC > olor.sh > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/Lvfs.ddf > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMinn > owMax.bat > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMinn > owMaxRelease.bat > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleSam > pleColor.bat > create mode 100644 > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/template.metainfo.x > ml > create mode 100644 Vlv2TbltDevicePkg/PlatformCapsuleGcc.dsc > > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.bat > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.bat > index 187797e284..8f589565fa 100644 > --- > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.bat > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.ba > +++ t > @@ -24,6 +24,12 @@ > copy %WORKSPACE%\Build\Vlv2TbltDevicePkg\RELEASE_VS2015x86\X64\Ca > psuleApp.efi %W > > call GenCapsuleMinnowMax.bat > call GenCapsuleMinnowMaxRelease.bat > -call GenCapsuleSampleColor.bat Blue 149DA854-7D19-4FAA-A91E- > 862EA1324BE6 > -call GenCapsuleSampleColor.bat Green 79179BFD-704D-4C90-9E02- > 0AB8D968C18A > -call GenCapsuleSampleColor.bat Red 72E2945A-00DA-448E-9AA7- > 075AD840F9D4 > +call GenCapsuleSampleColor.bat Blue > +149da854-7d19-4faa-a91e-862ea1324be6 > +call GenCapsuleSampleColor.bat Green 79179bfd-704d-4c90-9e02- > 0ab8d968c18a > +call GenCapsuleSampleColor.bat Red 72e2945a-00da-448e-9aa7- > 075ad840f9d4 > + > +call LvfsGenCapsuleMinnowMax.bat > +call LvfsGenCapsuleMinnowMaxRelease.bat > +call LvfsGenCapsuleSampleColor.bat Blue > +149da854-7d19-4faa-a91e-862ea1324be6 > +call LvfsGenCapsuleSampleColor.bat Green 79179bfd-704d-4c90-9e02- > 0ab8d968c18a > +call LvfsGenCapsuleSampleColor.bat Red 72e2945a-00da-448e-9aa7- > 075ad840f9d4 > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.sh > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.sh > new file mode 100644 > index 0000000000..040024553a > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.sh > @@ -0,0 +1,28 @@ > +# @file > +# Linux script file to generate UEFI capsules for system firmware and > +# firmware for sample devices > +# > +# Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> # # > +SPDX-License-Identifier: BSD-2-Clause-Patent # > + > +cd $(dirname $0) > + > +rm -R $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules > +mkdir $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules > +mkdir > $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/SampleDevelopment > +mkdir $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/NewCert > +mkdir $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/TestCert > +cp > $WORKSPACE/Build/Vlv2TbltDevicePkg/DEBUG_GCC49/X64/CapsuleApp.efi > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/SampleDevelopment/Ca > psuleAp > +p.efi cp > +$WORKSPACE/Build/Vlv2TbltDevicePkg/RELEASE_GCC49/X64/CapsuleApp. > efi > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/SampleDevelopment/Ca > psuleAp > +pRelease.efi cp > +$WORKSPACE/Build/Vlv2TbltDevicePkg/DEBUG_GCC49/X64/CapsuleApp.ef > i > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/NewCert/CapsuleApp.efi > +cp > $WORKSPACE/Build/Vlv2TbltDevicePkg/RELEASE_GCC49/X64/CapsuleApp.ef > i > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/NewCert/CapsuleAppRel > ease.e > +fi cp > $WORKSPACE/Build/Vlv2TbltDevicePkg/DEBUG_GCC49/X64/CapsuleApp.efi > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/TestCert/CapsuleApp.efi > +cp > $WORKSPACE/Build/Vlv2TbltDevicePkg/RELEASE_GCC49/X64/CapsuleApp.ef > i > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/TestCert/CapsuleAppRel > ease. > +efi > + > +. GenCapsuleMinnowMax.sh > +. GenCapsuleMinnowMaxRelease.sh > +. GenCapsuleSampleColor.sh Blue 149DA854-7D19-4FAA-A91E- > 862EA1324BE6 > +. GenCapsuleSampleColor.sh Green 79179BFD-704D-4C90-9E02- > 0AB8D968C18A > +. GenCapsuleSampleColor.sh Red 72E2945A-00DA-448E-9AA7- > 075AD840F9D4 > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMax.bat > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMax.bat > index 50ebb160ee..6e4afd201e 100644 > --- > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMax.bat > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > w > +++ Max.bat > @@ -11,8 +11,8 @@ setlocal > set FMP_CAPSULE_VENDOR=Intel > set FMP_CAPSULE_GUID=4096267B-DA0A-42EB-B5EB-FEF31D207CB4 > set FMP_CAPSULE_FILE=MinnowMax.cap > -set FMP_CAPSULE_VERSION=0x00000009 > -set FMP_CAPSULE_STRING=0.0.0.9 > +set FMP_CAPSULE_VERSION=0x0000000C > +set FMP_CAPSULE_STRING=0.0.0.12 > set FMP_CAPSULE_NAME="Intel MinnowMax DEBUG > UEFI %FMP_CAPSULE_STRING%" > set FMP_CAPSULE_LSV=0x00000000 > set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMax.sh > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMax.sh > new file mode 100644 > index 0000000000..4fb963c93c > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > w > +++ Max.sh > @@ -0,0 +1,65 @@ > +# @file > +# Linux script file to generate UEFI capsules for system firmware > +# > +# Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> # # > +SPDX-License-Identifier: BSD-2-Clause-Patent # > + > +FMP_CAPSULE_VENDOR=Intel > +FMP_CAPSULE_GUID=4096267B-DA0A-42EB-B5EB-FEF31D207CB4 > +FMP_CAPSULE_FILE=MinnowMax.cap > +FMP_CAPSULE_VERSION=0x0000000C > +FMP_CAPSULE_STRING=0.0.0.12 > +FMP_CAPSULE_NAME="Intel MinnowMax DEBUG UEFI > $FMP_CAPSULE_STRING" > +FMP_CAPSULE_LSV=0x00000000 > +FMP_CAPSULE_PAYLOAD=$WORKSPACE/Build/Vlv2TbltDevicePkg/DEBUG_ > GCC49/FV/V > +lv.ROM > + > +if [ ! -e "$FMP_CAPSULE_PAYLOAD" ] ; then > + return > +fi > + > +if [ -e NewCert.pem ]; then > + # > + # Sign capsule using OpenSSL with a new certificate > + # > + GenerateCapsule \ > + --encode \ > + -v \ > + --guid $FMP_CAPSULE_GUID \ > + --fw-version $FMP_CAPSULE_VERSION \ > + --lsv $FMP_CAPSULE_LSV \ > + --capflag PersistAcrossReset \ > + --capflag InitiateReset \ > + --signer-private-cert=NewCert.pem \ > + --other-public-cert=NewSub.pub.pem \ > + --trusted-public-cert=NewRoot.pub.pem \ > + -o $FMP_CAPSULE_FILE \ > + $FMP_CAPSULE_PAYLOAD > + > + cp $FMP_CAPSULE_FILE > + $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/NewCert > + > + rm $FMP_CAPSULE_FILE > +fi > + > +# > +# Sign capsule using OpenSSL with EDK II Test Certificate # > +GenerateCapsule \ > + --encode \ > + -v \ > + --guid $FMP_CAPSULE_GUID \ > + --fw-version $FMP_CAPSULE_VERSION \ > + --lsv $FMP_CAPSULE_LSV \ > + --capflag PersistAcrossReset \ > + --capflag InitiateReset \ > + > +--signer-private- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign > +/TestCert.pem \ > + > +--other-public- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign/T > +estSub.pub.pem \ > + > +--trusted-public- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign > +/TestRoot.pub.pem \ > + -o $FMP_CAPSULE_FILE \ > + $FMP_CAPSULE_PAYLOAD > + > +cp $FMP_CAPSULE_FILE > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/TestCert > + > +rm $FMP_CAPSULE_FILE > + > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMaxRelease.bat > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMaxRelease.bat > index 9d08c86717..43c609e4b2 100644 > --- > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMaxRelease.bat > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > w > +++ MaxRelease.bat > @@ -11,8 +11,8 @@ setlocal > set FMP_CAPSULE_VENDOR=Intel > set FMP_CAPSULE_GUID=4096267B-DA0A-42EB-B5EB-FEF31D207CB4 > set FMP_CAPSULE_FILE=MinnowMaxRelease.cap > -set FMP_CAPSULE_VERSION=0x00000009 > -set FMP_CAPSULE_STRING=0.0.0.9 > +set FMP_CAPSULE_VERSION=0x0000000C > +set FMP_CAPSULE_STRING=0.0.0.12 > set FMP_CAPSULE_NAME="Intel MinnowMax RELEASE > UEFI %FMP_CAPSULE_STRING%" > set FMP_CAPSULE_LSV=0x00000000 > set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMaxRelease.sh > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > wMaxRelease.sh > new file mode 100644 > index 0000000000..29d46dad1e > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinno > w > +++ MaxRelease.sh > @@ -0,0 +1,65 @@ > +# @file > +# Linux script file to generate UEFI capsules for system firmware > +# > +# Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> # # > +SPDX-License-Identifier: BSD-2-Clause-Patent # > + > +FMP_CAPSULE_VENDOR=Intel > +FMP_CAPSULE_GUID=4096267B-DA0A-42EB-B5EB-FEF31D207CB4 > +FMP_CAPSULE_FILE=MinnowMaxRelease.cap > +FMP_CAPSULE_VERSION=0x0000000C > +FMP_CAPSULE_STRING=0.0.0.12 > +FMP_CAPSULE_NAME="Intel MinnowMax RELEASE UEFI > $FMP_CAPSULE_STRING" > +FMP_CAPSULE_LSV=0x00000000 > +FMP_CAPSULE_PAYLOAD=$WORKSPACE/Build/Vlv2TbltDevicePkg/RELEASE > _GCC49/FV > +/Vlv.ROM > + > +if [ ! -e "$FMP_CAPSULE_PAYLOAD" ] ; then > + return > +fi > + > +if [ -e NewCert.pem ]; then > + # > + # Sign capsule using OpenSSL with a new certificate > + # > + GenerateCapsule \ > + --encode \ > + -v \ > + --guid $FMP_CAPSULE_GUID \ > + --fw-version $FMP_CAPSULE_VERSION \ > + --lsv $FMP_CAPSULE_LSV \ > + --capflag PersistAcrossReset \ > + --capflag InitiateReset \ > + --signer-private-cert=NewCert.pem \ > + --other-public-cert=NewSub.pub.pem \ > + --trusted-public-cert=NewRoot.pub.pem \ > + -o $FMP_CAPSULE_FILE \ > + $FMP_CAPSULE_PAYLOAD > + > + cp $FMP_CAPSULE_FILE > + $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/NewCert > + > + rm $FMP_CAPSULE_FILE > +fi > + > +# > +# Sign capsule using OpenSSL with EDK II Test Certificate # > +GenerateCapsule \ > + --encode \ > + -v \ > + --guid $FMP_CAPSULE_GUID \ > + --fw-version $FMP_CAPSULE_VERSION \ > + --lsv $FMP_CAPSULE_LSV \ > + --capflag PersistAcrossReset \ > + --capflag InitiateReset \ > + > +--signer-private- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign > +/TestCert.pem \ > + > +--other-public- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign/T > +estSub.pub.pem \ > + > +--trusted-public- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign > +/TestRoot.pub.pem \ > + -o $FMP_CAPSULE_FILE \ > + $FMP_CAPSULE_PAYLOAD > + > +cp $FMP_CAPSULE_FILE > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/TestCert > + > +rm $FMP_CAPSULE_FILE > + > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampl > eColor.sh > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampl > eColor.sh > new file mode 100644 > index 0000000000..a1c6f28cde > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampl > e > +++ Color.sh > @@ -0,0 +1,70 @@ > +# @file > +# Linux script file to generate UEFI capsules for a sample device > +# > +# Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> # # > +SPDX-License-Identifier: BSD-2-Clause-Patent # > + > +COLOR=$1 > + > +FMP_CAPSULE_VENDOR=Intel > +FMP_CAPSULE_GUID=$2 > +FMP_CAPSULE_FILE=$COLOR.cap > +FMP_CAPSULE_VERSION=0x00000010 > +FMP_CAPSULE_STRING=0.0.0.16 > +FMP_CAPSULE_NAME="$COLOR Progress Bar $FMP_CAPSULE_STRING" > +FMP_CAPSULE_LSV=0x00000000 > +FMP_CAPSULE_PAYLOAD=Payload.bin > + > +echo "$COLOR Progress Bar" > $FMP_CAPSULE_PAYLOAD > + > +if [ ! -e "$FMP_CAPSULE_PAYLOAD" ] ; then > + return > +fi > + > +if [ -e NewCert.pem ]; then > + # > + # Sign capsule using OpenSSL with a new certificate > + # > + GenerateCapsule \ > + --encode \ > + -v \ > + --guid $FMP_CAPSULE_GUID \ > + --fw-version $FMP_CAPSULE_VERSION \ > + --lsv $FMP_CAPSULE_LSV \ > + --capflag PersistAcrossReset \ > + --capflag InitiateReset \ > + --signer-private-cert=NewCert.pem \ > + --other-public-cert=NewSub.pub.pem \ > + --trusted-public-cert=NewRoot.pub.pem \ > + -o $FMP_CAPSULE_FILE \ > + $FMP_CAPSULE_PAYLOAD > + > + cp $FMP_CAPSULE_FILE > + $WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/NewCert > + > + rm $FMP_CAPSULE_FILE > +fi > + > +# > +# Sign capsule using OpenSSL with EDK II Test Certificate # > +GenerateCapsule \ > + --encode \ > + -v \ > + --guid $FMP_CAPSULE_GUID \ > + --fw-version $FMP_CAPSULE_VERSION \ > + --lsv $FMP_CAPSULE_LSV \ > + --capflag PersistAcrossReset \ > + --capflag InitiateReset \ > + > +--signer-private- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign > +/TestCert.pem \ > + > +--other-public- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign/T > +estSub.pub.pem \ > + > +--trusted-public- > cert=$WORKSPACE/edk2/BaseTools/Source/Python/Pkcs7Sign > +/TestRoot.pub.pem \ > + -o $FMP_CAPSULE_FILE \ > + $FMP_CAPSULE_PAYLOAD > + > +cp $FMP_CAPSULE_FILE > +$WORKSPACE/Build/Vlv2TbltDevicePkg/Capsules/TestCert > + > +rm $FMP_CAPSULE_FILE > + > +rm $FMP_CAPSULE_PAYLOAD > diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/Lvfs.ddf > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/Lvfs.ddf > new file mode 100644 > index 0000000000..f2c925a6dd > --- /dev/null > +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/Lvfs.ddf > @@ -0,0 +1,14 @@ > +.OPTION EXPLICIT ; Generate errors on variable typos > + > +.Set CabinetNameTemplate=firmware.cab ; The name of the file .set > +DiskDirectoryTemplate=CDROM ; All cabinets go in a single directory > +.Set Cabinet=on ; .Set Compress=on ; .Set DiskDirectory1=. > +.Set MaxDiskSize=99999744 ; multiple of 512 > + > +;*** Files to zip ; > +; > +firmware.bin > +firmware.metainfo.xml > +;*** > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMi > nnowMax.bat > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMi > nnowMax.bat > new file mode 100644 > index 0000000000..dd8274a1cc > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMi > +++ nnowMax.bat > @@ -0,0 +1,139 @@ > +@REM @file > +@REM Windows batch file to generate UEFI capsules for system firmware > +@REM > +@REM Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> > +@REM @REM SPDX-License-Identifier: BSD-2-Clause-Patent @REM > + > +@echo off > +setlocal > + > +set FMP_CAPSULE_VENDOR=Intel > +set FMP_CAPSULE_GUID=4096267b-da0a-42eb-b5eb-fef31d207cb4 > +set FMP_CAPSULE_BASE_NAME=MinnowMax > +set FMP_CAPSULE_FILE=%FMP_CAPSULE_BASE_NAME%.cap > +set FMP_CAPSULE_VERSION=0x0000000C > +set FMP_CAPSULE_VERSION_DECIMAL=12 > +set FMP_CAPSULE_STRING=0.0.0.12 > +set FMP_CAPSULE_NAME="Intel %FMP_CAPSULE_BASE_NAME% DEBUG > UEFI %FMP_CAPSULE_STRING%" > +set FMP_CAPSULE_LSV=0x00000000 > +set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > +set > +FMP_CAPSULE_PAYLOAD=%WORKSPACE%\Build\Vlv2TbltDevicePkg\DEBU > G_VS2015x86 > +\FV\Vlv.ROM set WINDOWS_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > + > +if not exist "%FMP_CAPSULE_PAYLOAD%" exit /b > + > +if exist "%FMP_CAPSULE_KEY%" ( > + REM > + REM Sign capsule using signtool > + REM > + call GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + --signing-tool-path="c:\Program Files (x86)\Windows Kits\8.1\bin\x86" ^ > + --pfx-file %FMP_CAPSULE_KEY% ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > + copy %FMP_CAPSULE_FILE% > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment > + > + copy %FMP_CAPSULE_FILE% firmware.bin > + copy template.metainfo.xml firmware.metainfo.xml powershell - > Command > + "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + makecab /f Lvfs.ddf > + copy firmware.cab > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BAS > + E_NAME%-%FMP_CAPSULE_STRING%.cab > + > + erase firmware.cab > + erase setup.inf > + erase setup.rpt > + > + erase firmware.metainfo.xml > + erase firmware.bin > + erase %FMP_CAPSULE_FILE% > +) > + > +if exist "NewCert.pem" ( > + REM > + REM Sign capsule using OpenSSL with a new certificate > + REM > + call GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + --signer-private-cert=NewCert.pem ^ > + --other-public-cert=NewSub.pub.pem ^ > + --trusted-public-cert=NewRoot.pub.pem ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > + copy %FMP_CAPSULE_FILE% > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert > + > + copy %FMP_CAPSULE_FILE% firmware.bin > + copy template.metainfo.xml firmware.metainfo.xml powershell - > Command > + "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + makecab /f Lvfs.ddf > + copy firmware.cab > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BAS > + E_NAME%-%FMP_CAPSULE_STRING%.cab > + > + erase firmware.cab > + erase setup.inf > + erase setup.rpt > + > + erase firmware.metainfo.xml > + erase firmware.bin > + erase %FMP_CAPSULE_FILE% > +) > + > +REM > +REM Sign capsule using OpenSSL with EDK II Test Certificate REM call > +GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + > +--signer-private- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sig > +n\TestCert.pem ^ > + > +--other-public- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\ > +TestSub.pub.pem ^ > + > +--trusted-public- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sig > +n\TestRoot.pub.pem ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > +copy %FMP_CAPSULE_FILE% > +%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert > + > +copy %FMP_CAPSULE_FILE% firmware.bin > +copy template.metainfo.xml firmware.metainfo.xml powershell -Command > +"(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > +makecab /f Lvfs.ddf > +copy firmware.cab > +%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BASE > +_NAME%-%FMP_CAPSULE_STRING%.cab > + > +erase firmware.cab > +erase setup.inf > +erase setup.rpt > + > +erase firmware.metainfo.xml > +erase firmware.bin > +erase %FMP_CAPSULE_FILE% > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMi > nnowMaxRelease.bat > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMi > nnowMaxRelease.bat > new file mode 100644 > index 0000000000..2b68a98f98 > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleMi > +++ nnowMaxRelease.bat > @@ -0,0 +1,139 @@ > +@REM @file > +@REM Windows batch file to generate UEFI capsules for system firmware > +@REM > +@REM Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> > +@REM @REM SPDX-License-Identifier: BSD-2-Clause-Patent @REM > + > +@echo off > +setlocal > + > +set FMP_CAPSULE_VENDOR=Intel > +set FMP_CAPSULE_GUID=4096267b-da0a-42eb-b5eb-fef31d207cb4 > +set FMP_CAPSULE_BASE_NAME=MinnowMaxRelease > +set FMP_CAPSULE_FILE=%FMP_CAPSULE_BASE_NAME%.cap > +set FMP_CAPSULE_VERSION=0x0000000C > +set FMP_CAPSULE_VERSION_DECIMAL=12 > +set FMP_CAPSULE_STRING=0.0.0.12 > +set FMP_CAPSULE_NAME="Intel %FMP_CAPSULE_BASE_NAME% RELEASE > UEFI %FMP_CAPSULE_STRING%" > +set FMP_CAPSULE_LSV=0x00000000 > +set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > +set > +FMP_CAPSULE_PAYLOAD=%WORKSPACE%\Build\Vlv2TbltDevicePkg\RELEA > SE_VS2015x > +86\FV\Vlv.ROM set > WINDOWS_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > + > +if not exist "%FMP_CAPSULE_PAYLOAD%" exit /b > + > +if exist "%FMP_CAPSULE_KEY%" ( > + REM > + REM Sign capsule using signtool > + REM > + call GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + --signing-tool-path="c:\Program Files (x86)\Windows Kits\8.1\bin\x86" ^ > + --pfx-file %FMP_CAPSULE_KEY% ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > + copy %FMP_CAPSULE_FILE% > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment > + > + copy %FMP_CAPSULE_FILE% firmware.bin > + copy template.metainfo.xml firmware.metainfo.xml powershell - > Command > + "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + makecab /f Lvfs.ddf > + copy firmware.cab > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BAS > + E_NAME%-%FMP_CAPSULE_STRING%.cab > + > + erase firmware.cab > + erase setup.inf > + erase setup.rpt > + > + erase firmware.metainfo.xml > + erase firmware.bin > + erase %FMP_CAPSULE_FILE% > +) > + > +if exist "NewCert.pem" ( > + REM > + REM Sign capsule using OpenSSL with a new certificate > + REM > + call GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + --signer-private-cert=NewCert.pem ^ > + --other-public-cert=NewSub.pub.pem ^ > + --trusted-public-cert=NewRoot.pub.pem ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > + copy %FMP_CAPSULE_FILE% > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert > + > + copy %FMP_CAPSULE_FILE% firmware.bin > + copy template.metainfo.xml firmware.metainfo.xml powershell - > Command > + "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + makecab /f Lvfs.ddf > + copy firmware.cab > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BAS > + E_NAME%-%FMP_CAPSULE_STRING%.cab > + > + erase firmware.cab > + erase setup.inf > + erase setup.rpt > + > + erase firmware.metainfo.xml > + erase firmware.bin > + erase %FMP_CAPSULE_FILE% > +) > + > +REM > +REM Sign capsule using OpenSSL with EDK II Test Certificate REM call > +GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + > +--signer-private- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sig > +n\TestCert.pem ^ > + > +--other-public- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\ > +TestSub.pub.pem ^ > + > +--trusted-public- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sig > +n\TestRoot.pub.pem ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > +copy %FMP_CAPSULE_FILE% > +%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert > + > +copy %FMP_CAPSULE_FILE% firmware.bin > +copy template.metainfo.xml firmware.metainfo.xml powershell -Command > +"(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > +makecab /f Lvfs.ddf > +copy firmware.cab > +%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BASE > +_NAME%-%FMP_CAPSULE_STRING%.cab > + > +erase firmware.cab > +erase setup.inf > +erase setup.rpt > + > +erase firmware.metainfo.xml > +erase firmware.bin > +erase %FMP_CAPSULE_FILE% > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleSa > mpleColor.bat > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleSa > mpleColor.bat > new file mode 100644 > index 0000000000..1dbbe7341d > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleSa > +++ mpleColor.bat > @@ -0,0 +1,145 @@ > +@REM @file > +@REM Windows batch file to generate UEFI capsules for a sample device > +@REM > +@REM Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> > +@REM @REM SPDX-License-Identifier: BSD-2-Clause-Patent @REM > + > +@echo off > +setlocal > + > +set COLOR=%1 > + > +set FMP_CAPSULE_VENDOR=Intel > +set FMP_CAPSULE_GUID=%2 > +set FMP_CAPSULE_BASE_NAME=%COLOR% > +set FMP_CAPSULE_FILE=%FMP_CAPSULE_BASE_NAME%.cap > +set FMP_CAPSULE_VERSION=0x00000010 > +set FMP_CAPSULE_VERSION_DECIMAL=16 > +set FMP_CAPSULE_STRING=0.0.0.16 > +set FMP_CAPSULE_NAME="%FMP_CAPSULE_BASE_NAME% Progress > Bar %FMP_CAPSULE_STRING%" > +set FMP_CAPSULE_LSV=0x00000000 > +set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > +set FMP_CAPSULE_PAYLOAD=Payload.bin > +set WINDOWS_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx > + > +echo "%COLOR% Progress Bar" > %FMP_CAPSULE_PAYLOAD% > + > +if not exist "%FMP_CAPSULE_PAYLOAD%" exit > + > +if exist "%FMP_CAPSULE_KEY%" ( > + REM > + REM Sign capsule using signtool > + REM > + call GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + --signing-tool-path="c:\Program Files (x86)\Windows Kits\8.1\bin\x86" ^ > + --pfx-file %FMP_CAPSULE_KEY% ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > + copy %FMP_CAPSULE_FILE% > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment > + > + copy %FMP_CAPSULE_FILE% firmware.bin > + copy template.metainfo.xml firmware.metainfo.xml powershell - > Command > + "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + makecab /f Lvfs.ddf > + copy firmware.cab > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BAS > + E_NAME%-%FMP_CAPSULE_STRING%.cab > + > + erase firmware.cab > + erase setup.inf > + erase setup.rpt > + > + erase firmware.metainfo.xml > + erase firmware.bin > + erase %FMP_CAPSULE_FILE% > +) > + > +if exist "NewCert.pem" ( > + REM > + REM Sign capsule using OpenSSL with a new certificate > + REM > + call GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + --signer-private-cert=NewCert.pem ^ > + --other-public-cert=NewSub.pub.pem ^ > + --trusted-public-cert=NewRoot.pub.pem ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > + copy %FMP_CAPSULE_FILE% > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert > + > + copy %FMP_CAPSULE_FILE% firmware.bin > + copy template.metainfo.xml firmware.metainfo.xml powershell - > Command > + "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > + powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > + makecab /f Lvfs.ddf > + copy firmware.cab > + %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BAS > + E_NAME%-%FMP_CAPSULE_STRING%.cab > + > + erase firmware.cab > + erase setup.inf > + erase setup.rpt > + > + erase firmware.metainfo.xml > + erase firmware.bin > + erase %FMP_CAPSULE_FILE% > +) > + > +REM > +REM Sign capsule using OpenSSL with EDK II Test Certificate REM call > +GenerateCapsule ^ > + --encode ^ > + -v ^ > + --guid %FMP_CAPSULE_GUID% ^ > + --fw-version %FMP_CAPSULE_VERSION% ^ > + --lsv %FMP_CAPSULE_LSV% ^ > + --capflag PersistAcrossReset ^ > + --capflag InitiateReset ^ > + > +--signer-private- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sig > +n\TestCert.pem ^ > + > +--other-public- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\ > +TestSub.pub.pem ^ > + > +--trusted-public- > cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sig > +n\TestRoot.pub.pem ^ > + -o %FMP_CAPSULE_FILE% ^ > + %FMP_CAPSULE_PAYLOAD% > + > +copy %FMP_CAPSULE_FILE% > +%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert > + > +copy %FMP_CAPSULE_FILE% firmware.bin > +copy template.metainfo.xml firmware.metainfo.xml powershell -Command > +"(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', > '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding > ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File > firmware.metainfo.xml -encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_VERSION_DECIMAL', > '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml - > encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File > firmware.metainfo.xml -encoding ASCII" > +powershell -Command "(gc firmware.metainfo.xml) -replace > 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml - > encoding ASCII" > +makecab /f Lvfs.ddf > +copy firmware.cab > +%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPS > ULE_BASE > +_NAME%-%FMP_CAPSULE_STRING%.cab > + > +erase firmware.cab > +erase setup.inf > +erase setup.rpt > + > +erase firmware.metainfo.xml > +erase firmware.bin > +erase %FMP_CAPSULE_FILE% > + > +erase %FMP_CAPSULE_PAYLOAD% > diff --git > a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/template.metainfo > .xml > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/template.metainfo > .xml > new file mode 100644 > index 0000000000..5d550c1f48 > --- /dev/null > +++ > b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/template.metainf > +++ o.xml > @@ -0,0 +1,27 @@ > +<?xml version="1.0" encoding="UTF-8"?> > +<component type="firmware"> > + <id>com.intel.FMP_CAPSULE_BASE_NAME.firmware</id> > + <name>FMP_CAPSULE_BASE_NAME</name> > + <summary>System firmware for the > FMP_CAPSULE_BASE_NAME</summary> > + <description> > + Description of System firmware for the FMP_CAPSULE_BASE_NAME > + </description> > + <provides> > + <firmware type="flashed">FMP_CAPSULE_GUID</firmware> > + </provides> > + <url type="homepage">http://www.tianocore.org</url> > + <metadata_license>CC0-1.0</metadata_license> > + <project_license>BSD</project_license> > + <developer_name>Tianocore</developer_name> > + <releases> > + <release version="FMP_CAPSULE_VERSION_DECIMAL" > date="FMP_CAPSULE_DATE"> > + <description> > + Build FMP_CAPSULE_STRING > + </description> > + </release> > + </releases> > + <!-- most OEMs do not need to do this... --> > + <custom> > + <value key="LVFS::InhibitDownload"/> > + </custom> > +</component> > diff --git a/Vlv2TbltDevicePkg/PlatformCapsuleGcc.dsc > b/Vlv2TbltDevicePkg/PlatformCapsuleGcc.dsc > new file mode 100644 > index 0000000000..1856ac349b > --- /dev/null > +++ b/Vlv2TbltDevicePkg/PlatformCapsuleGcc.dsc > @@ -0,0 +1,38 @@ > +#/** @file > +# Platform capsule description. > +# > +# Copyright (c) 2016, Intel Corporation. All rights reserved.<BR> # # > +SPDX-License-Identifier: BSD-2-Clause-Patent # #**/ > + > +[Defines] > + PLATFORM_NAME = Vlv2TbltDevicePkg > + PLATFORM_GUID = EE87F258-6ECC-4415-B1D8-23771BEE26E7 > + PLATFORM_VERSION = 0.1 > + FLASH_DEFINITION = Vlv2TbltDevicePkg/PlatformCapsuleGcc.fdf > + OUTPUT_DIRECTORY = Build/Vlv2TbltDevicePkg > + SUPPORTED_ARCHITECTURES = IA32|X64 > + BUILD_TARGETS = DEBUG|RELEASE > + SKUID_IDENTIFIER = DEFAULT > + POSTBUILD = > Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.sh > + > +######################################################### > ############## > +############################ > +# > +# Components Section - list of the modules and components that will be > processed by compilation > +# tools and the EDK II tools to generate > PE32/PE32+/Coff image > files. > +# > +# Note: The EDK II DSC file is not used to specify how compiled binary > images get placed > +# into firmware volume images. This section is just a list of modules > to > compile from > +# source into UEFI-compliant binaries. > +# It is the FDF file that contains information on combining binary > files into > firmware > +# volume images, whose concept is beyond UEFI and is described in PI > specification. > +# Binary modules do not need to be listed in this section, as they > should > be > +# specified in the FDF file. For example: Shell binary, FAT binary > (Fat.efi), > +# Logo (Logo.bmp), and etc. > +# There may also be modules listed in this section that are not > required > in the FDF file, > +# When a module listed here is excluded from FDF file, then UEFI- > compliant binary will be > +# generated for it, but the binary will not be put into any firmware > volume. > +# > +######################################################### > ############## > +############################ > -- > 2.21.0.windows.1
-=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#40302): https://edk2.groups.io/g/devel/message/40302 Mute This Topic: https://groups.io/mt/31551784/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-