[PATCH v2] sbbr: Add "--sbbr" flag to support running SBBR Tests.
Supreeth Venkatesh
supreeth.venkatesh at arm.com
Tue Feb 21 17:37:00 UTC 2017
Server Base Boot Requirements (SBBR) specification is intended for SBSA-
compliant 64-bit ARMv8 servers.
It defines the base firmware requirements for out-of-box support of any
ARM SBSA-compatible Operating System or hypervisor.
The requirements in this specification are expected to be minimal yet
complete for booting a multi-core ARMv8 server platform, while leaving
plenty of room for OEM or ODM innovations and design details.
For more information, download the SBBR specification here:
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.den0044b/index.html
This change introduces --sbbr flag to the framework to enable running
sbbr tests. Sbbr Test Cases will follow in additional patches.
Signed-off-by: Supreeth Venkatesh <supreeth.venkatesh at arm.com>
---
Changes since v1:
* Remove Changes to fwts-test.
* Update based on review comments from Alex.
---
README_SOURCE.txt | 1 +
src/lib/include/fwts_framework.h | 6 ++++--
src/lib/src/fwts_framework.c | 9 ++++++++-
3 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/README_SOURCE.txt b/README_SOURCE.txt
index 671dd89..899231e 100644
--- a/README_SOURCE.txt
+++ b/README_SOURCE.txt
@@ -96,6 +96,7 @@ src/hotkey - HotKey tests
src/hpet - HPET
src/kernel - kernel specific
src/pci - PCI
+src/sbbr - ARM SBBR Tests
src/uefi - UEFI
When writing new tests use the blank sketch of a test in
diff --git a/src/lib/include/fwts_framework.h b/src/lib/include/fwts_framework.h
index 6025ddd..bef903c 100644
--- a/src/lib/include/fwts_framework.h
+++ b/src/lib/include/fwts_framework.h
@@ -58,13 +58,15 @@ typedef enum {
FWTS_FLAG_QUIET = 0x00100000,
FWTS_FLAG_SHOW_TESTS_FULL = 0x00200000,
FWTS_FLAG_SHOW_TESTS_CATEGORIES = 0x00400000,
- FWTS_FLAG_TEST_COMPLIANCE_ACPI = 0x00800000
+ FWTS_FLAG_TEST_COMPLIANCE_ACPI = 0x00800000,
+ FWTS_FLAG_TEST_SBBR = 0x01000000
} fwts_framework_flags;
#define FWTS_FLAG_TEST_MASK \
(FWTS_FLAG_TEST_BIOS | \
FWTS_FLAG_TEST_UEFI | \
- FWTS_FLAG_TEST_ACPI)
+ FWTS_FLAG_TEST_ACPI | \
+ FWTS_FLAG_TEST_SBBR)
/*
* Test results
diff --git a/src/lib/src/fwts_framework.c b/src/lib/src/fwts_framework.c
index f58db47..02e1cde 100644
--- a/src/lib/src/fwts_framework.c
+++ b/src/lib/src/fwts_framework.c
@@ -56,7 +56,8 @@ typedef struct {
FWTS_FLAG_UNSAFE | \
FWTS_FLAG_TEST_UEFI | \
FWTS_FLAG_TEST_ACPI | \
- FWTS_FLAG_TEST_COMPLIANCE_ACPI)
+ FWTS_FLAG_TEST_COMPLIANCE_ACPI | \
+ FWTS_FLAG_TEST_SBBR)
static const fwts_categories categories[] = {
{ "ACPI", FWTS_FLAG_TEST_ACPI },
@@ -65,6 +66,7 @@ static const fwts_categories categories[] = {
{ "Batch Experimental", FWTS_FLAG_BATCH_EXPERIMENTAL },
{ "Interactive Experimental", FWTS_FLAG_INTERACTIVE_EXPERIMENTAL },
{ "Power States", FWTS_FLAG_POWER_STATES },
+ { "SBBR", FWTS_FLAG_TEST_SBBR },
{ "Utilities", FWTS_FLAG_UTILS },
{ "Unsafe", FWTS_FLAG_UNSAFE },
{ "UEFI", FWTS_FLAG_TEST_UEFI },
@@ -131,6 +133,7 @@ static fwts_option fwts_framework_options[] = {
{ "acpicompliance", "", 0, "Run ACPI tests for spec compliance." },
{ "log-level", "", 1, "Specify error level to report failed test messages," },
{ "arch", "", 1, "Specify arch of the tables being tested (defaults to current host)." },
+ { "sbbr", "", 0, "Run ARM SBBR tests." },
{ NULL, NULL, 0, NULL }
};
@@ -140,6 +143,7 @@ static const char *fwts_copyright[] = {
"Some of this work - Copyright (c) 1999 - 2017, Intel Corp. All rights reserved.",
"Some of this work - Copyright (c) 2010 - 2017, Canonical.",
"Some of this work - Copyright (c) 2016 - 2017, IBM.",
+ "Some of this work - Copyright (c) 2017, ARM Ltd.",
NULL
};
@@ -1323,6 +1327,9 @@ int fwts_framework_options_handler(fwts_framework *fw, int argc, char * const ar
if (fwts_framework_an_parse(fw, optarg) != FWTS_OK)
return FWTS_ERROR;
break;
+ case 46: /* --sbbr */
+ fw->flags |= FWTS_FLAG_TEST_SBBR;
+ break;
}
break;
case 'a': /* --all */
--
2.7.4
More information about the fwts-devel
mailing list