ACK: [PATCH v2] sbbr: Add "--sbbr" flag to support running SBBR Tests.

Alex Hung alex.hung at canonical.com
Mon Feb 27 03:26:58 UTC 2017


On 2017-02-22 01:37 AM, Supreeth Venkatesh wrote:
> 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 */
>


Acked-by: Alex Hung <alex.hung at canonical.com>



More information about the fwts-devel mailing list