mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-27 07:51:38 +00:00
sandbox: capsule: binman: generate some capsules as part of build
Currently, all the capsules for the sandbox platform are generated at the time of running the capsule tests. To showcase generation of capsules through binman, generate all raw(non FIT payload) capsules needed for the sandbox platform as part of the build. This acts as an illustrative example for generating capsules as part of a platform's build. Make corresponding change in the capsule test's configuration to get these capsules from the build directory. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org>
This commit is contained in:
parent
4dd9701faf
commit
d350b79e6d
5 changed files with 185 additions and 160 deletions
|
@ -106,3 +106,7 @@
|
||||||
#if IS_ENABLED(CONFIG_SUPPORT_VPL)
|
#if IS_ENABLED(CONFIG_SUPPORT_VPL)
|
||||||
#include "sandbox_vpl.dtsi"
|
#include "sandbox_vpl.dtsi"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_EFI_HAVE_CAPSULE_SUPPORT)
|
||||||
|
#include "sandbox_capsule.dtsi"
|
||||||
|
#endif
|
||||||
|
|
169
arch/sandbox/dts/sandbox_capsule.dtsi
Normal file
169
arch/sandbox/dts/sandbox_capsule.dtsi
Normal file
|
@ -0,0 +1,169 @@
|
||||||
|
// SPDX-License-Identifier: GPL-2.0+
|
||||||
|
/*
|
||||||
|
* Devicetree file with binman nodes needed for generating EFI
|
||||||
|
* capsules.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <sandbox_efi_capsule.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
binman: binman {
|
||||||
|
multiple-images;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&binman {
|
||||||
|
capsule1 {
|
||||||
|
filename = "Test01";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule2 {
|
||||||
|
filename = "Test02";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x2>;
|
||||||
|
image-guid = SANDBOX_UBOOT_ENV_IMAGE_GUID;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot-env:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule3 {
|
||||||
|
filename = "Test03";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
image-guid = SANDBOX_INCORRECT_GUID;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule4 {
|
||||||
|
filename = "Test101";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
fw-version = <0x5>;
|
||||||
|
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule5 {
|
||||||
|
filename = "Test102";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x2>;
|
||||||
|
fw-version = <0xa>;
|
||||||
|
image-guid = SANDBOX_UBOOT_ENV_IMAGE_GUID;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot-env:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule6 {
|
||||||
|
filename = "Test103";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
fw-version = <0x2>;
|
||||||
|
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule7 {
|
||||||
|
filename = "Test11";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
||||||
|
private-key = CAPSULE_PRIV_KEY;
|
||||||
|
public-key-cert = CAPSULE_PUB_KEY;
|
||||||
|
monotonic-count = <0x1>;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule8 {
|
||||||
|
filename = "Test12";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
||||||
|
private-key = CAPSULE_INVAL_KEY;
|
||||||
|
public-key-cert = CAPSULE_INVAL_PUB_KEY;
|
||||||
|
monotonic-count = <0x1>;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule9 {
|
||||||
|
filename = "Test111";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
fw-version = <0x5>;
|
||||||
|
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
||||||
|
private-key = CAPSULE_PRIV_KEY;
|
||||||
|
public-key-cert = CAPSULE_PUB_KEY;
|
||||||
|
monotonic-count = <0x1>;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule10 {
|
||||||
|
filename = "Test112";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x2>;
|
||||||
|
fw-version = <0xa>;
|
||||||
|
image-guid = SANDBOX_UBOOT_ENV_IMAGE_GUID;
|
||||||
|
private-key = CAPSULE_PRIV_KEY;
|
||||||
|
public-key-cert = CAPSULE_PUB_KEY;
|
||||||
|
monotonic-count = <0x1>;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot-env:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
capsule11 {
|
||||||
|
filename = "Test113";
|
||||||
|
efi-capsule {
|
||||||
|
image-index = <0x1>;
|
||||||
|
fw-version = <0x2>;
|
||||||
|
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
||||||
|
private-key = CAPSULE_PRIV_KEY;
|
||||||
|
public-key-cert = CAPSULE_PUB_KEY;
|
||||||
|
monotonic-count = <0x1>;
|
||||||
|
|
||||||
|
text {
|
||||||
|
text = "u-boot:New";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -1990,4 +1990,8 @@
|
||||||
#include "sandbox_vpl.dtsi"
|
#include "sandbox_vpl.dtsi"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if IS_ENABLED(CONFIG_EFI_HAVE_CAPSULE_SUPPORT)
|
||||||
|
#include "sandbox_capsule.dtsi"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cedit.dtsi"
|
#include "cedit.dtsi"
|
||||||
|
|
|
@ -55,42 +55,6 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule1 {
|
capsule1 {
|
||||||
filename = "Test01";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule2 {
|
|
||||||
filename = "Test02";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x2>;
|
|
||||||
image-guid = SANDBOX_UBOOT_ENV_IMAGE_GUID;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot-env:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule3 {
|
|
||||||
filename = "Test03";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
image-guid = SANDBOX_INCORRECT_GUID;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule4 {
|
|
||||||
filename = "Test04";
|
filename = "Test04";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
@ -102,7 +66,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule5 {
|
capsule2 {
|
||||||
filename = "Test05";
|
filename = "Test05";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
@ -114,46 +78,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule6 {
|
capsule3 {
|
||||||
filename = "Test101";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
fw-version = <0x5>;
|
|
||||||
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule7 {
|
|
||||||
filename = "Test102";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x2>;
|
|
||||||
fw-version = <0xa>;
|
|
||||||
image-guid = SANDBOX_UBOOT_ENV_IMAGE_GUID;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot-env:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule8 {
|
|
||||||
filename = "Test103";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
fw-version = <0x2>;
|
|
||||||
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule9 {
|
|
||||||
filename = "Test104";
|
filename = "Test104";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
@ -166,7 +91,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule10 {
|
capsule4 {
|
||||||
filename = "Test105";
|
filename = "Test105";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
@ -179,37 +104,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule11 {
|
capsule5 {
|
||||||
filename = "Test11";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
|
||||||
private-key = CAPSULE_PRIV_KEY;
|
|
||||||
public-key-cert = CAPSULE_PUB_KEY;
|
|
||||||
monotonic-count = <0x1>;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule12 {
|
|
||||||
filename = "Test12";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
|
||||||
private-key = CAPSULE_INVAL_KEY;
|
|
||||||
public-key-cert = CAPSULE_INVAL_PUB_KEY;
|
|
||||||
monotonic-count = <0x1>;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule13 {
|
|
||||||
filename = "Test13";
|
filename = "Test13";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
@ -224,7 +119,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule14 {
|
capsule6 {
|
||||||
filename = "Test14";
|
filename = "Test14";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
@ -239,55 +134,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule15 {
|
capsule7 {
|
||||||
filename = "Test111";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
fw-version = <0x5>;
|
|
||||||
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
|
||||||
private-key = CAPSULE_PRIV_KEY;
|
|
||||||
public-key-cert = CAPSULE_PUB_KEY;
|
|
||||||
monotonic-count = <0x1>;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule16 {
|
|
||||||
filename = "Test112";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x2>;
|
|
||||||
fw-version = <0xa>;
|
|
||||||
image-guid = SANDBOX_UBOOT_ENV_IMAGE_GUID;
|
|
||||||
private-key = CAPSULE_PRIV_KEY;
|
|
||||||
public-key-cert = CAPSULE_PUB_KEY;
|
|
||||||
monotonic-count = <0x1>;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot-env:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule17 {
|
|
||||||
filename = "Test113";
|
|
||||||
efi-capsule {
|
|
||||||
image-index = <0x1>;
|
|
||||||
fw-version = <0x2>;
|
|
||||||
image-guid = SANDBOX_UBOOT_IMAGE_GUID;
|
|
||||||
private-key = CAPSULE_PRIV_KEY;
|
|
||||||
public-key-cert = CAPSULE_PUB_KEY;
|
|
||||||
monotonic-count = <0x1>;
|
|
||||||
|
|
||||||
text {
|
|
||||||
text = "u-boot:New";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
capsule18 {
|
|
||||||
filename = "Test114";
|
filename = "Test114";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
@ -303,7 +150,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
capsule19 {
|
capsule8 {
|
||||||
filename = "Test115";
|
filename = "Test115";
|
||||||
efi-capsule {
|
efi-capsule {
|
||||||
image-index = <0x1>;
|
image-index = <0x1>;
|
||||||
|
|
|
@ -85,6 +85,7 @@ def efi_capsule_data(request, u_boot_config):
|
||||||
check_call('cd %s; '
|
check_call('cd %s; '
|
||||||
'./tools/binman/binman --toolpath %s/tools build -u -d %s/capsule_binman.dtb -O %s -m --allow-missing -I %s -I ./board/sandbox -I ./arch/sandbox/dts'
|
'./tools/binman/binman --toolpath %s/tools build -u -d %s/capsule_binman.dtb -O %s -m --allow-missing -I %s -I ./board/sandbox -I ./arch/sandbox/dts'
|
||||||
% (u_boot_config.source_dir, u_boot_config.build_dir, data_dir, data_dir, data_dir), shell=True)
|
% (u_boot_config.source_dir, u_boot_config.build_dir, data_dir, data_dir, data_dir), shell=True)
|
||||||
|
check_call('cp %s/Test* %s' % (u_boot_config.build_dir, data_dir), shell=True)
|
||||||
os.environ['PYTHONPATH'] = pythonpath
|
os.environ['PYTHONPATH'] = pythonpath
|
||||||
|
|
||||||
# Create a disk image with EFI system partition
|
# Create a disk image with EFI system partition
|
||||||
|
|
Loading…
Add table
Reference in a new issue