From patchwork Thu Feb 16 21:25:13 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Supreeth Venkatesh X-Patchwork-Id: 728914 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) by ozlabs.org (Postfix) with ESMTP id 3vPTj35HqPz9s7q; Fri, 17 Feb 2017 08:25:43 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.76) (envelope-from ) id 1ceTYZ-0001BX-Dy; Thu, 16 Feb 2017 21:25:39 +0000 Received: from foss.arm.com ([217.140.101.70]) by huckleberry.canonical.com with esmtp (Exim 4.76) (envelope-from ) id 1ceTYU-0001BL-I0 for fwts-devel@lists.ubuntu.com; Thu, 16 Feb 2017 21:25:34 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C370C2B; Thu, 16 Feb 2017 13:25:33 -0800 (PST) Received: from usa.arm.com (bc-c3-3-12.eu.iaas.arm.com [10.6.43.226]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id DD9213F578; Thu, 16 Feb 2017 13:25:32 -0800 (PST) From: Supreeth Venkatesh To: fwts-devel@lists.ubuntu.com Subject: [PATCH] sbbr: Add "--sbbr" flag to support running SBBR Tests. Date: Thu, 16 Feb 2017 21:25:13 +0000 Message-Id: <1487280313-5664-1-git-send-email-supreeth.venkatesh@arm.com> X-Mailer: git-send-email 2.7.4 Cc: achin.gupta@arm.com, paul.benson@arm.com, charles.garcia-tobin@arm.com X-BeenThere: fwts-devel@lists.ubuntu.com X-Mailman-Version: 2.1.14 Precedence: list List-Id: Firmware Test Suite Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: fwts-devel-bounces@lists.ubuntu.com Sender: fwts-devel-bounces@lists.ubuntu.com 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 --- README_SOURCE.txt | 1 + fwts-test/arg-help-0001/arg-help-0001.log | 2 ++ fwts-test/arg-help-0001/arg-help-0002.log | 3 +++ src/lib/include/fwts_framework.h | 6 ++++-- src/lib/src/fwts_framework.c | 9 ++++++++- 5 files changed, 18 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/fwts-test/arg-help-0001/arg-help-0001.log b/fwts-test/arg-help-0001/arg-help-0001.log index 15f8c24..a2fce9d 100644 --- a/fwts-test/arg-help-0001/arg-help-0001.log +++ b/fwts-test/arg-help-0001/arg-help-0001.log @@ -220,6 +220,7 @@ --s4-sleep-delay Sleep N seconds between start of hibernate and wakeup. +--sbbr Run ARM SBBR Tests. -p, --show-progress Output test progress report to stderr. -D, --show-progress-dialog Output test progress @@ -262,3 +263,4 @@ 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) 2016 - 2017, ARM. diff --git a/fwts-test/arg-help-0001/arg-help-0002.log b/fwts-test/arg-help-0001/arg-help-0002.log index 15f8c24..853beaa 100644 --- a/fwts-test/arg-help-0001/arg-help-0002.log +++ b/fwts-test/arg-help-0001/arg-help-0002.log @@ -220,6 +220,7 @@ --s4-sleep-delay Sleep N seconds between start of hibernate and wakeup. +--sbbr Run ARM SBBR Tests. -p, --show-progress Output test progress report to stderr. -D, --show-progress-dialog Output test progress @@ -262,3 +263,5 @@ 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) 2016 - 2017, ARM. + 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 */