Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 11 additions & 10 deletions SystemReady-band/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,29 +28,29 @@ SystemReady band compliant platforms must implement a minimum set of hardware an
The SystemReady band compliance and testing requirements are specified in the [Arm SystemReady Requirements Specification (SRS)](https://developer.arm.com/documentation/den0109/latest)

## Latest Release details
- Release version: v3.1.0
- Release version: v3.1.1
- Quality: EAC
- The latest pre-built release of ACS is available for download here: [v25.10_3.1.0](prebuilt_images/v25.10_3.1.0)
- The latest pre-built release of ACS is available for download here: [v26.03_3.1.1](prebuilt_images/v26.03_3.1.1)
- The compliance suite is not a substitute for design verification.
- To review the ACS logs, Arm licensees can contact Arm directly through their partner managers.
- **Image Test Suite details**

| Test Suite | Test Suite Tag / Commit | Specification Version |
|----------------------------------------------------------------------------------------------|--------------------------------------------------------------|-----------------------|
| [Base System Architecture (BSA)](https://github.com/ARM-software/sysarch-acs) | v25.10_BSA_1.1.2 | BSA v1.1 |
| [Server Base System Architecture (SBSA)](https://github.com/ARM-software/sysarch-acs) | v25.10_SBSA_7.2.4 | SBSA v7.2 |
| [Base Boot Requirements (BBR)](https://github.com/ARM-software/bbr-acs) | 00be42e82452cdad0b862728082568f3d7d2a1c3 | BBR v2.1 |
| [Base Boot Security Requirements (BBSR)](https://github.com/ARM-software/bbr-acs) | 00be42e82452cdad0b862728082568f3d7d2a1c3 | BBSR v1.3 |
| [UEFI Self Certification Tests (UEFI-SCT)](https://github.com/tianocore/edk2-test) | ba6c13f4e4fa1bf92ed04f5cb969d6c8a76f8605 | |
| [Base System Architecture (BSA)](https://github.com/ARM-software/sysarch-acs) | v26.03_BSA_1.2.1 | BSA v1.2 |
| [Server Base System Architecture (SBSA)](https://github.com/ARM-software/sysarch-acs) | v26.03_SBSA_8.0.1 | SBSA v8.0 |
| [Base Boot Requirements (BBR)](https://github.com/ARM-software/bbr-acs) | ce75ea6407b373a6db0357f0957eee9eadbe5e45 | BBR v2.1 |
| [Base Boot Security Requirements (BBSR)](https://github.com/ARM-software/bbr-acs) | ce75ea6407b373a6db0357f0957eee9eadbe5e45 | BBSR v1.3 |
| [UEFI Self Certification Tests (UEFI-SCT)](https://github.com/tianocore/edk2-test) | 346be4f87d085646abdde22b3e50505b5929c43c | |
| [Firmware Test Suite (FWTS)](http://kernel.ubuntu.com/git/hwe/fwts.git) | v26.01.00 | |
| [Server Base Manageability Requirements (SBMR)](https://github.com/ARM-software/sbmr-acs) | 27803824d966df48f34ce5290599f616bc0de8e9 | SBMR v2.0 |
| [Server Base Manageability Requirements (SBMR)](https://github.com/ARM-software/sbmr-acs) | v26.03_SBMR_2.1.0 | SBMR v2.1 |

- **Image Component details**

| Component | Version |
|-----------------------------------------------------------------------------|-------------------|
| [Linux Kernel](https://github.com/torvalds/linux.git) | v6.10 |
| [EDK2](https://github.com/tianocore/edk2.git) | edk2-stable202508 |
| [Linux Kernel](https://github.com/torvalds/linux.git) | v6.12 |
| [EDK2](https://github.com/tianocore/edk2.git) | edk2-stable202511 |


### Prebuilt Images
Expand Down Expand Up @@ -320,3 +320,4 @@ SystemReady ACS is distributed under Apache v2.0 License.
--------------

*Copyright (c) 2022-2026, Arm Limited and Contributors. All rights reserved.*

23 changes: 3 additions & 20 deletions SystemReady-band/build-scripts/get_source.sh
Original file line number Diff line number Diff line change
Expand Up @@ -68,18 +68,7 @@ get_sysarch_acs_src()
echo "Error: Failed to download edk2 libc source code"
exit 1
fi

if [ -z $SYS_ARCH_ACS_TAG ]; then
#No TAG is provided. Download the latest code
echo "Downloading Arm SYSARCH-ACS source code."
git clone --depth 1 https://github.com/ARM-software/sysarch-acs.git ShellPkg/Application/sysarch-acs
else
echo "Downloading Arm SYSARCH-ACS source code. TAG : $SYS_ARCH_ACS_TAG"
git clone --depth 1 --branch $SYS_ARCH_ACS_TAG https://github.com/ARM-software/sysarch-acs.git ShellPkg/Application/sysarch-acs
fi
popd
pushd $TOP_DIR/edk2/ShellPkg/Application/sysarch-acs
git pull
git clone https://github.com/ARM-software/sysarch-acs.git ShellPkg/Application/sysarch-acs
popd
}

Expand Down Expand Up @@ -138,13 +127,8 @@ get_sct_src()

get_linux-acs_src()
{
if [ -z $ARM_LINUX_ACS_TAG ]; then
echo "Downloading Arm Linux ACS source code."
git clone --depth 1 https://gitlab.arm.com/linux-arm/linux-acs.git linux-acs
else
echo "Downloading Arm Linux ACS source code. TAG : ${ARM_LINUX_ACS_TAG}"
git clone --depth 1 --branch ${ARM_LINUX_ACS_TAG} https://gitlab.arm.com/linux-arm/linux-acs.git linux-acs
fi
echo "Downloading Arm Linux ACS source code."
git clone https://gitlab.arm.com/linux-arm/linux-acs.git linux-acs

pushd $TOP_DIR/linux-${LINUX_KERNEL_VERSION}
git am $TOP_DIR/../common/patches/0001-SystemReady-Linux-${LINUX_KERNEL_VERSION}.patch
Expand All @@ -162,7 +146,6 @@ get_linux-acs_src()
git am $TOP_DIR/../common/patches/tpm-tis-spi-Add-hardware-wait-polling.patch
fi
popd

}

get_bbr_acs_src()
Expand Down
45 changes: 45 additions & 0 deletions SystemReady-band/prebuilt_images/v26.03_3.1.1/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# SystemReady Band v3.1.1 Pre-built Image

The **SystemReady Band v3.1.1** release pre-built image is available for download at:

🔗 [Download systemready_acs_live_image.img.xz.zip](https://github.com/ARM-software/arm-systemready/releases/download/v26.03_SR_3.1.1/systemready_acs_live_image.img.xz.zip)

Follow the steps below to decompress the pre-built image:

```bash
unzip systemready_acs_live_image.img.xz.zip
xz -d systemready_acs_live_image.img.xz
```

After decompression, you will get the .img file, which can be used directly with your target environment.

---

## Prerequisites

### OS Installation and Boot Logs

Arm SystemReady band v3.1.1 requires that OS installation and boot logs are used to check for overall compliance:

- Installation and boot logs from RHEL and SLES LTS releases are required.

To get the logs run the [linux-distro-cmds.sh](https://gitlab.arm.com/systemready/systemready-band-template/-/blob/main/os-logs/linux-distro-cmds.sh?ref_type=heads) script and copy RHEL and SLES logs into acs image root folder. Within acs image root folder, create os-logs then copy those RHEL and SLES logs into that folder

The ACS image root folder structure is as follows:

```
├── EFI
├── acs_tests
├── acs_results
├── os-logs
├── Image
└── ramdisk-buildroot.img
```

### SBMR Execution Mode

SBMR in-band tests are run as part of SystemReady ACS automation. The out-of-band SBMR tests need to be executed from outside the DUT, using an external host machine, to exercise the server system's out-of-band capabilities.

Please refer to the [SBMR ACS README.md](https://github.com/ARM-software/sbmr-acs/blob/main/README.md) for steps to run the tests.

After a successful run, the suite generates a `logs` folder containing run metadata and results in an XML file. This folder must be renamed to `sbmr_out_of_band_logs` and copied to the `acs_results\sbmr\` path in the ACS image, so that the log parser scripts can collate the results and provide an overall SBMR compliance report for the DUT.
12 changes: 6 additions & 6 deletions common/config/systemready-band-source.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -54,28 +54,28 @@ FWTS_VERSION=26.01.00
# Arm BSA ACS build tag/commit
# UEFI SRC: https://github.com/ARM-software/sysarch-acs
# Linux SRC: https://gitlab.arm.com/linux-arm/linux-acs
BSA_ACS_TAG=""
BSA_ACS_TAG="v26.03_BSA_1.2.1"

# Arm SBSA ACS build tag/commit
# UEFI SRC: https://github.com/ARM-software/sysarch-acs
# Linux SRC: https://gitlab.arm.com/linux-arm/linux-acs
SBSA_ACS_TAG=""
SBSA_ACS_TAG="v26.03_SBSA_8.0.1"

# Arm BBR ACS build tag/commit
# SRC: https://github.com/ARM-software/bbr-acs
ARM_BBR_TAG=""
ARM_BBR_TAG="ce75ea6407b373a6db0357f0957eee9eadbe5e45"

# Arm SBMR-ACS build tag/commit
# SRC: https://github.com/ARM-software/sbmr-acs
SBMR_ACS_TAG=""
SBMR_ACS_TAG="v26.03_SBMR_2.1.0"

# Arm edk2-test-parser tag/commit
# SRC: https://gitlab.arm.com/systemready/edk2-test-parser
EDK2_TEST_PARSER_TAG=""
EDK2_TEST_PARSER_TAG="e0c9331eeb077f1092bc0027c17de008fea73b88"

# Arm systemready-scripts tag/commit
# SRC: https://gitlab.arm.com/systemready/systemready-scripts.git
SYS_SCRIPTS_TAG=""
SYS_SCRIPTS_TAG="367cf5af007d4d13a4906e78fb28b8a871aa17d6"

# GRUB2 build tag/commit
# SRC: https://github.com/rhboot/grub2.git
Expand Down
5 changes: 3 additions & 2 deletions common/patches/build_fwts_version_26.01.00.patch
Original file line number Diff line number Diff line change
Expand Up @@ -138,11 +138,12 @@ index 6634cdc40e..38c0848ee0 100644
################################################################################

-FWTS_VERSION = 21.11.00
-FWTS_SOURCE = fwts-V$(FWTS_VERSION).tar.gz
+FWTS_VERSION = 26.01.00
FWTS_SOURCE = fwts-V$(FWTS_VERSION).tar.gz
+FWTS_SOURCE = V$(FWTS_VERSION).tar.gz
-FWTS_SITE = http://fwts.ubuntu.com/release
-FWTS_STRIP_COMPONENTS = 0
+FWTS_SITE = https://fwts.ubuntu.com/release
+FWTS_SITE = https://github.com/fwts/fwts/archive/refs/tags
FWTS_LICENSE = GPL-2.0, LGPL-2.1, Custom
FWTS_LICENSE_FILES = debian/copyright
FWTS_AUTORECONF = YES
Expand Down
37 changes: 32 additions & 5 deletions docs/SystemReady_Execution_Enviroment_and_Config_Guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,44 +20,71 @@ The configuration file is an INI-style file located at a predefined path in the

```ini
[AUTOMATION]
# This variable determines whether the automation run utilizes this configuration file.
config_enabled_for_automation_run = false

[SCT]
# This variable Enable/Disable SCT run(Valid values true or false).
automation_sct_run = true
# Valid value is Sequence file.
sct_sequence_file = SBBR.seq

[SCRT]
# This variable Enable/Disable SCRT run(Valid values true or false).
automation_scrt_run = true

[BSA]
# This variable Enable/Disable BSA run(Valid values true or false).
automation_bsa_run = true
# Valid values PE, GIC, SMMU, MEM_MAP, PERIPHERAL, TIMER, WATCHDOG, PCIE, POWER_WAKEUP.
bsa_modules =
# Valid values are 1
bsa_level = 1
# Add selected rules to run here.
bsa_select_rules =
# Add rules which you want to skip here.
bsa_skip_rules =
# Default value
bsa_verbose = 3

[SBSA]
# This variable Enable/Disable SBSA run(Valid values true or false).
automation_sbsa_run = false
# Valid values PE, GIC, SMMU, MEM_MAP, PERIPHERAL, TIMER, WATCHDOG, PCIE,
# POWER_WAKEUP, ETE, GPU, MPAM, RAS, PMU
sbsa_modules =
# Valid values are 3,4,5,6,7,8.
sbsa_level = 4
# Add selected rules to run here.
sbsa_select_rules =
sbsa_skip_rules =
# Add rules which you want to skip here.
sbsa_skip_rules = S_L3_01
# valid values 1,2,3,4,5
sbsa_verbose = 3

[FWTS]
# This variable Enable/Disable FWTS run(Valid values true or false).
automation_fwts_run = true
fwts_modules = --uefi-set-var-multiple=1 --uefi-get-mn-count-multiple=1 --sbbr esrt uefibootpath aest cedt slit srat hmat pcct pdtt bgrt bert einj erst hest sdei nfit iort mpam ibft ras2
# Add modules to run in FWTS command, the modules needs to be seperated by space
fwts_modules = --uefi-set-var-multiple=1 --uefi-get-mn-count-multiple=1 --sbbr aest cedt slit srat hmat pcct pdtt bgrt bert einj erst hest sdei nfit iort mpam ibft ras2 smccc

[BBSR_SCT]
automation_bbsr_sct_run = true
# This variable Enable/Disable BBSR_SCT run(Valid values true or false).
automation_bbsr_sct_run = false
# Valid value is Sequence file.
bbsr_sct_sequence_file = BBSR.seq

[BBSR_FWTS]
automation_bbsr_fwts_run = true
# This variable Enable/Disable BBSR_FWTS run(Valid values true or false).
automation_bbsr_fwts_run = false

[BBSR_TPM]
automation_bbsr_tpm_run = true
# This variable Enable/Disable BBSR_TPM run(Valid values true or false).
automation_bbsr_tpm_run = false

[SBMR]
# This variable Enable/Disable SBMR in-band run(Valid values true or false).
automation_sbmr_in_band_run = false
```
---

Expand Down
Loading