From 1aeaddd9438e2829fbae7862cf3af024bf323c5b Mon Sep 17 00:00:00 2001 From: Michael D Kinney Date: Wed, 30 May 2018 16:02:02 -0700 Subject: Vlv2TbltDevicePkg/Capsule: Add scripts to generate capsules Use GenerateCapsule to generate capsules for MinnowMax debug and release builds and sample devices. Cc: David Wei Cc: Mang Guo Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney Reviewed-by: Guo Mang --- .../Capsule/GenerateCapsule/GenCapsuleAll.bat | 35 +++++ .../GenerateCapsule/GenCapsuleMinnowMax.bat | 139 ++++++++++++++++++++ .../GenerateCapsule/GenCapsuleMinnowMaxRelease.bat | 139 ++++++++++++++++++++ .../GenerateCapsule/GenCapsuleSampleColor.bat | 145 +++++++++++++++++++++ ...kenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc | 1 + ...kenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc | 1 + ...kenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc | 1 + 7 files changed, 461 insertions(+) create mode 100644 Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.bat create mode 100644 Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMax.bat create mode 100644 Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMaxRelease.bat create mode 100644 Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampleColor.bat create mode 100644 Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/NewRoot.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc create mode 100644 Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc create mode 100644 Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT_SAMPLE_PRODUCTION.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.bat b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.bat new file mode 100644 index 0000000..df326dc --- /dev/null +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleAll.bat @@ -0,0 +1,35 @@ +@REM @file +@REM Windows batch file to generate UEFI capsules for system firmware and +@REM firmware for sample devices +@REM +@REM Copyright (c) 2018, Intel Corporation. All rights reserved.
+@REM This program and the accompanying materials +@REM are licensed and made available under the terms and conditions of the BSD License +@REM which accompanies this distribution. The full text of the license may be found at +@REM http://opensource.org/licenses/bsd-license.php +@REM +@REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +@REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +@REM + +@echo off +setlocal +cd /d %~dp0 + +rmdir /s /q %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 +copy %WORKSPACE%\Build\Vlv2TbltDevicePkg\DEBUG_VS2015x86\X64\CapsuleApp.efi %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment\CapsuleApp.efi +copy %WORKSPACE%\Build\Vlv2TbltDevicePkg\RELEASE_VS2015x86\X64\CapsuleApp.efi %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment\CapsuleAppRelease.efi +copy %WORKSPACE%\Build\Vlv2TbltDevicePkg\DEBUG_VS2015x86\X64\CapsuleApp.efi %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert\CapsuleApp.efi +copy %WORKSPACE%\Build\Vlv2TbltDevicePkg\RELEASE_VS2015x86\X64\CapsuleApp.efi %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert\CapsuleAppRelease.efi +copy %WORKSPACE%\Build\Vlv2TbltDevicePkg\DEBUG_VS2015x86\X64\CapsuleApp.efi %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\CapsuleApp.efi +copy %WORKSPACE%\Build\Vlv2TbltDevicePkg\RELEASE_VS2015x86\X64\CapsuleApp.efi %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\CapsuleAppRelease.efi + +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 diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMax.bat b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMax.bat new file mode 100644 index 0000000..2a049c4 --- /dev/null +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMax.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.
+@REM This program and the accompanying materials +@REM are licensed and made available under the terms and conditions of the BSD License +@REM which accompanies this distribution. The full text of the license may be found at +@REM http://opensource.org/licenses/bsd-license.php +@REM +@REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +@REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +@REM + +@echo off +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_NAME="Intel MinnowMax DEBUG UEFI %FMP_CAPSULE_STRING%" +set FMP_CAPSULE_LSV=0x00000000 +set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx +set FMP_CAPSULE_PAYLOAD=%WORKSPACE%\Build\Vlv2TbltDevicePkg\DEBUG_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 + + if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment\MinnowMaxWindowsCapsule + rmdir /s /q WindowsCapsule + ) + 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 ^ + --signing-tool-path=c:\OpenSSL-Win32\bin ^ + --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 + + if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert\MinnowMaxWindowsCapsule + rmdir /s /q WindowsCapsule + ) + 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 ^ + --signing-tool-path=c:\OpenSSL-Win32\bin ^ + --signer-private-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestCert.pem ^ + --other-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestSub.pub.pem ^ + --trusted-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestRoot.pub.pem ^ + -o %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_PAYLOAD% + +copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert + +if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\MinnowMaxWindowsCapsule + rmdir /s /q WindowsCapsule +) + +erase %FMP_CAPSULE_FILE% diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMaxRelease.bat b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMaxRelease.bat new file mode 100644 index 0000000..c0cdac0 --- /dev/null +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleMinnowMaxRelease.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.
+@REM This program and the accompanying materials +@REM are licensed and made available under the terms and conditions of the BSD License +@REM which accompanies this distribution. The full text of the license may be found at +@REM http://opensource.org/licenses/bsd-license.php +@REM +@REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +@REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +@REM + +@echo off +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_NAME="Intel MinnowMax RELEASE UEFI %FMP_CAPSULE_STRING%" +set FMP_CAPSULE_LSV=0x00000000 +set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx +set FMP_CAPSULE_PAYLOAD=%WORKSPACE%\Build\Vlv2TbltDevicePkg\RELEASE_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 + + if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment\MinnowMaxReleaseWindowsCapsule + rmdir /s /q WindowsCapsule + ) + 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 ^ + --signing-tool-path=c:\OpenSSL-Win32\bin ^ + --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 + + if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert\MinnowMaxReleaseWindowsCapsule + rmdir /s /q WindowsCapsule + ) + 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 ^ + --signing-tool-path=c:\OpenSSL-Win32\bin ^ + --signer-private-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestCert.pem ^ + --other-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestSub.pub.pem ^ + --trusted-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestRoot.pub.pem ^ + -o %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_PAYLOAD% + +copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert + +if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\MinnowMaxReleaseWindowsCapsule + rmdir /s /q WindowsCapsule +) + +erase %FMP_CAPSULE_FILE% diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampleColor.bat b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampleColor.bat new file mode 100644 index 0000000..c7f70ff --- /dev/null +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/GenCapsuleSampleColor.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.
+@REM This program and the accompanying materials +@REM are licensed and made available under the terms and conditions of the BSD License +@REM which accompanies this distribution. The full text of the license may be found at +@REM http://opensource.org/licenses/bsd-license.php +@REM +@REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +@REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +@REM + +@echo off +setlocal + +set COLOR=%1 + +set FMP_CAPSULE_VENDOR=Intel +set FMP_CAPSULE_GUID=%2 +set FMP_CAPSULE_FILE=%COLOR%.cap +set FMP_CAPSULE_VERSION=0x00000010 +set FMP_CAPSULE_STRING=0.0.0.16 +set FMP_CAPSULE_NAME="%COLOR% 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 + + if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment\%COLOR%WindowsCapsule + rmdir /s /q WindowsCapsule + ) + 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 ^ + --signing-tool-path=c:\OpenSSL-Win32\bin ^ + --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 + + if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert\%COLOR%WindowsCapsule + rmdir /s /q WindowsCapsule + ) + 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 ^ + --signing-tool-path=c:\OpenSSL-Win32\bin ^ + --signer-private-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestCert.pem ^ + --other-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestSub.pub.pem ^ + --trusted-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestRoot.pub.pem ^ + -o %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_PAYLOAD% + +copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert + +if exist "%WINDOWS_CAPSULE_KEY%" ( + CreateWindowsCapsule.py ^ + UEFI ^ + %FMP_CAPSULE_STRING% ^ + %FMP_CAPSULE_GUID% ^ + %FMP_CAPSULE_FILE% ^ + %FMP_CAPSULE_VERSION% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_VENDOR% ^ + %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY% + + xcopy /s/e/v/i/y WindowsCapsule %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%COLOR%WindowsCapsule + rmdir /s /q WindowsCapsule +) + +erase %FMP_CAPSULE_FILE% + +erase %FMP_CAPSULE_PAYLOAD% diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/NewRoot.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/NewRoot.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc new file mode 100644 index 0000000..d3f5a12 --- /dev/null +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/NewRoot.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc @@ -0,0 +1 @@ + diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc new file mode 100644 index 0000000..d3f5a12 --- /dev/null +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc @@ -0,0 +1 @@ + diff --git a/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT_SAMPLE_PRODUCTION.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT_SAMPLE_PRODUCTION.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc new file mode 100644 index 0000000..d3f5a12 --- /dev/null +++ b/Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/SAMPLE_DEVELOPMENT_SAMPLE_PRODUCTION.cer.gFmpDevicePkgTokenSpaceGuid.PcdFmpDevicePkcs7CertBufferXdr.inc @@ -0,0 +1 @@ + -- cgit v1.1