[PATCH 1/2] ebbr: add EBBR option for ARM embedded systems
Colin Ian King
colin.king at canonical.com
Wed Nov 6 10:41:50 UTC 2019
On 06/11/2019 09:47, Ivan Hu wrote:
> The Embedded Base Boot Requirements specification defines requirements for
> embedded systems to enable inter-operability between SoCs, hardware platforms,
> firmware implementations, and operating system distributions.
> https://github.com/ARM-software/ebbr
>
> Signed-off-by: Ivan Hu <ivan.hu at canonical.com>
> ---
> src/lib/include/fwts_framework.h | 3 ++-
> src/lib/src/fwts_framework.c | 9 +++++++--
> src/uefi/uefirtmisc/uefirtmisc.c | 2 +-
> src/uefi/uefirttime/uefirttime.c | 2 +-
> src/uefi/uefirtvariable/uefirtvariable.c | 2 +-
> 5 files changed, 12 insertions(+), 6 deletions(-)
>
> diff --git a/src/lib/include/fwts_framework.h b/src/lib/include/fwts_framework.h
> index 47eba368..74e12657 100644
> --- a/src/lib/include/fwts_framework.h
> +++ b/src/lib/include/fwts_framework.h
> @@ -61,7 +61,8 @@ typedef enum {
> FWTS_FLAG_SHOW_TESTS_FULL = 0x00200000,
> FWTS_FLAG_SHOW_TESTS_CATEGORIES = 0x00400000,
> FWTS_FLAG_TEST_COMPLIANCE_ACPI = 0x00800000,
> - FWTS_FLAG_TEST_SBBR = 0x01000000
> + FWTS_FLAG_TEST_SBBR = 0x01000000,
> + FWTS_FLAG_TEST_EBBR = 0x02000000
> } fwts_framework_flags;
>
> #define FWTS_FLAG_TEST_MASK \
> diff --git a/src/lib/src/fwts_framework.c b/src/lib/src/fwts_framework.c
> index 698fa49a..f9e76b96 100644
> --- a/src/lib/src/fwts_framework.c
> +++ b/src/lib/src/fwts_framework.c
> @@ -57,7 +57,8 @@ typedef struct {
> FWTS_FLAG_TEST_UEFI | \
> FWTS_FLAG_TEST_ACPI | \
> FWTS_FLAG_TEST_COMPLIANCE_ACPI | \
> - FWTS_FLAG_TEST_SBBR)
> + FWTS_FLAG_TEST_SBBR | \
> + FWTS_FLAG_TEST_EBBR)
>
> static const fwts_categories categories[] = {
> { "ACPI", FWTS_FLAG_TEST_ACPI },
> @@ -136,6 +137,7 @@ static fwts_option fwts_framework_options[] = {
> { "sbbr", "", 0, "Run ARM SBBR tests." },
> { "ifv", "", 0, "Run tests in firmware-vendor modes." },
> { "clog", "", 1, "Specify a coreboot logfile dump" },
> + { "ebbr", "", 0, "Run ARM EBBR tests." },
> { NULL, NULL, 0, NULL }
> };
>
> @@ -1338,7 +1340,10 @@ int fwts_framework_options_handler(fwts_framework *fw, int argc, char * const ar
> break;
> case 48: /* --coreboot-log */
> fwts_framework_strdup(&fw->clog, optarg);
> -
> + break;
> + case 49: /* --ebbr */
> + fw->flags |= FWTS_FLAG_TEST_EBBR;
> + break;
> }
> break;
> case 'a': /* --all */
> diff --git a/src/uefi/uefirtmisc/uefirtmisc.c b/src/uefi/uefirtmisc/uefirtmisc.c
> index 4cda7783..cbe4a4a1 100644
> --- a/src/uefi/uefirtmisc/uefirtmisc.c
> +++ b/src/uefi/uefirtmisc/uefirtmisc.c
> @@ -324,6 +324,6 @@ static fwts_framework_ops uefirtmisc_ops = {
> .minor_tests = uefirtmisc_tests
> };
>
> -FWTS_REGISTER("uefirtmisc", &uefirtmisc_ops, FWTS_TEST_ANYTIME, FWTS_FLAG_TEST_UEFI | FWTS_FLAG_UNSAFE | FWTS_FLAG_ROOT_PRIV)
> +FWTS_REGISTER("uefirtmisc", &uefirtmisc_ops, FWTS_TEST_ANYTIME, FWTS_FLAG_TEST_UEFI | FWTS_FLAG_UNSAFE | FWTS_FLAG_ROOT_PRIV | FWTS_FLAG_TEST_EBBR)
>
> #endif
> diff --git a/src/uefi/uefirttime/uefirttime.c b/src/uefi/uefirttime/uefirttime.c
> index c6ffb644..08a5507d 100644
> --- a/src/uefi/uefirttime/uefirttime.c
> +++ b/src/uefi/uefirttime/uefirttime.c
> @@ -1355,6 +1355,6 @@ static fwts_framework_ops uefirttime_ops = {
> .minor_tests = uefirttime_tests
> };
>
> -FWTS_REGISTER("uefirttime", &uefirttime_ops, FWTS_TEST_ANYTIME, FWTS_FLAG_TEST_UEFI | FWTS_FLAG_UNSAFE | FWTS_FLAG_ROOT_PRIV)
> +FWTS_REGISTER("uefirttime", &uefirttime_ops, FWTS_TEST_ANYTIME, FWTS_FLAG_TEST_UEFI | FWTS_FLAG_UNSAFE | FWTS_FLAG_ROOT_PRIV | FWTS_FLAG_TEST_EBBR)
>
> #endif
> diff --git a/src/uefi/uefirtvariable/uefirtvariable.c b/src/uefi/uefirtvariable/uefirtvariable.c
> index 55a9b1d9..db72abe1 100644
> --- a/src/uefi/uefirtvariable/uefirtvariable.c
> +++ b/src/uefi/uefirtvariable/uefirtvariable.c
> @@ -2294,6 +2294,6 @@ static fwts_framework_ops uefirtvariable_ops = {
> .options_check = options_check,
> };
>
> -FWTS_REGISTER("uefirtvariable", &uefirtvariable_ops, FWTS_TEST_ANYTIME, FWTS_FLAG_TEST_UEFI | FWTS_FLAG_UNSAFE | FWTS_FLAG_ROOT_PRIV)
> +FWTS_REGISTER("uefirtvariable", &uefirtvariable_ops, FWTS_TEST_ANYTIME, FWTS_FLAG_TEST_UEFI | FWTS_FLAG_UNSAFE | FWTS_FLAG_ROOT_PRIV | FWTS_FLAG_TEST_EBBR)
>
> #endif
>
Please can you send a follow-up patch to update the doc/fwts.1 manual
with this new --ebbr option. Thank you.
Colin
More information about the fwts-devel
mailing list