2 @REM Windows batch file to generate UEFI capsules
for a sample
device
4 @REM Copyright
(c
) 2018, Intel Corporation. All rights reserved.
<BR
>
5 @REM This program and the accompanying materials
6 @REM are licensed and made available under the terms and conditions of the BSD License
7 @REM which accompanies this distribution. The full text of the license may be found at
8 @REM http
://opensource.org
/licenses
/bsd
-license.php
10 @REM THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN
"AS IS" BASIS
,
11 @REM WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND
, EITHER EXPRESS OR IMPLIED.
19 set FMP_CAPSULE_VENDOR
=Intel
20 set FMP_CAPSULE_GUID
=%2
21 set FMP_CAPSULE_FILE
=%COLOR%.cap
22 set FMP_CAPSULE_VERSION
=0x00000010
23 set FMP_CAPSULE_STRING
=0.0.0.16
24 set FMP_CAPSULE_NAME
="%COLOR% Progress Bar %FMP_CAPSULE_STRING%"
25 set FMP_CAPSULE_LSV
=0x00000000
26 set FMP_CAPSULE_KEY
=SAMPLE_DEVELOPMENT.pfx
27 set FMP_CAPSULE_PAYLOAD
=Payload.bin
28 set WINDOWS_CAPSULE_KEY
=SAMPLE_DEVELOPMENT.pfx
30 echo "%COLOR% Progress Bar" > %FMP_CAPSULE_PAYLOAD%
32 if not exist "%FMP_CAPSULE_PAYLOAD%" exit
34 if exist "%FMP_CAPSULE_KEY%" (
36 REM Sign capsule using signtool
38 call GenerateCapsule ^
41 --guid
%FMP_CAPSULE_GUID% ^
42 --fw
-version
%FMP_CAPSULE_VERSION% ^
43 --lsv
%FMP_CAPSULE_LSV% ^
44 --capflag PersistAcrossReset ^
45 --capflag InitiateReset ^
46 --signing
-tool
-path="c:\Program Files (x86)\Windows Kits\8.1\bin\x86" ^
47 --pfx
-file
%FMP_CAPSULE_KEY% ^
48 -o
%FMP_CAPSULE_FILE% ^
51 copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment
53 if exist "%WINDOWS_CAPSULE_KEY%" (
54 CreateWindowsCapsule.py ^
56 %FMP_CAPSULE_STRING% ^
59 %FMP_CAPSULE_VERSION% ^
60 %FMP_CAPSULE_VENDOR% ^
61 %FMP_CAPSULE_VENDOR% ^
62 %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY%
64 xcopy /s
/e
/v
/i
/y WindowsCapsule
%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment\
%COLOR%WindowsCapsule
65 rmdir /s
/q WindowsCapsule
67 erase %FMP_CAPSULE_FILE%
70 if exist "NewCert.pem" (
72 REM Sign capsule using OpenSSL with a new certificate
74 call GenerateCapsule ^
77 --guid
%FMP_CAPSULE_GUID% ^
78 --fw
-version
%FMP_CAPSULE_VERSION% ^
79 --lsv
%FMP_CAPSULE_LSV% ^
80 --capflag PersistAcrossReset ^
81 --capflag InitiateReset ^
82 --signing
-tool
-path=c
:\OpenSSL
-Win32
\bin ^
83 --signer
-private
-cert
=NewCert.pem ^
84 --other
-public
-cert
=NewSub.pub.pem ^
85 --trusted
-public
-cert
=NewRoot.pub.pem ^
86 -o
%FMP_CAPSULE_FILE% ^
89 copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert
91 if exist "%WINDOWS_CAPSULE_KEY%" (
92 CreateWindowsCapsule.py ^
94 %FMP_CAPSULE_STRING% ^
97 %FMP_CAPSULE_VERSION% ^
98 %FMP_CAPSULE_VENDOR% ^
99 %FMP_CAPSULE_VENDOR% ^
100 %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY%
102 xcopy /s
/e
/v
/i
/y WindowsCapsule
%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert\
%COLOR%WindowsCapsule
103 rmdir /s
/q WindowsCapsule
105 erase %FMP_CAPSULE_FILE%
109 REM Sign capsule using OpenSSL with EDK II Test Certificate
111 call GenerateCapsule ^
114 --guid
%FMP_CAPSULE_GUID% ^
115 --fw
-version
%FMP_CAPSULE_VERSION% ^
116 --lsv
%FMP_CAPSULE_LSV% ^
117 --capflag PersistAcrossReset ^
118 --capflag InitiateReset ^
119 --signing
-tool
-path=c
:\OpenSSL
-Win32
\bin ^
120 --signer
-private
-cert
=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestCert.pem ^
121 --other
-public
-cert
=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestSub.pub.pem ^
122 --trusted
-public
-cert
=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestRoot.pub.pem ^
123 -o
%FMP_CAPSULE_FILE% ^
124 %FMP_CAPSULE_PAYLOAD%
126 copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert
128 if exist "%WINDOWS_CAPSULE_KEY%" (
129 CreateWindowsCapsule.py ^
131 %FMP_CAPSULE_STRING% ^
134 %FMP_CAPSULE_VERSION% ^
135 %FMP_CAPSULE_VENDOR% ^
136 %FMP_CAPSULE_VENDOR% ^
137 %FMP_CAPSULE_NAME% %WINDOWS_CAPSULE_KEY%
139 xcopy /s
/e
/v
/i
/y WindowsCapsule
%WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\
%COLOR%WindowsCapsule
140 rmdir /s
/q WindowsCapsule
143 erase %FMP_CAPSULE_FILE%
145 erase %FMP_CAPSULE_PAYLOAD%