]>
git.proxmox.com Git - mirror_edk2.git/blob - ShellPkg/Library/UefiShellAcpiViewCommandLib/Arm/SbbrValidator.h
2 Header file for SbbrValidator.c
4 Copyright (c) 2020, ARM Limited. All rights reserved.
5 SPDX-License-Identifier: BSD-2-Clause-Patent
8 - Sbbr or SBBR - Server Base Boot Requirements
9 - Sbsa or SBSA - Server Base System Architecture
12 - Arm Server Base Boot Requirements 1.2, September 2019
13 - Arm Server Base Boot Requirements 1.1, May 2018
14 - Arm Server Base Boot Requirements 1.0, March 2016
15 - Arm Server Base System Architecture 6.0
18 #ifndef SBBR_VALIDATOR_H_
19 #define SBBR_VALIDATOR_H_
21 #include <IndustryStandard/Acpi.h>
24 Arm SBBR specification versions.
27 ArmSbbrVersion_1_0
= 0,
28 ArmSbbrVersion_1_1
= 1,
29 ArmSbbrVersion_1_2
= 2,
34 The ACPI table instance counter.
36 typedef struct AcpiTableCounter
{
37 CONST UINT32 Signature
; /// ACPI table signature
38 UINT32 Count
; /// Instance count
42 ACPI table SBBR requirements.
44 typedef struct AcpiSbbrReq
{
45 CONST UINT32
*Tables
; /// List of required tables
46 CONST UINT32 TableCount
; /// Number of elements in Tables
50 Reset the platform ACPI table instance count for all SBBR-mandatory tables.
54 ArmSbbrResetTableCounts (
59 Increment instance count for SBBR-mandatory ACPI table with the given
62 @param [in] Signature ACPI table signature.
64 @retval TRUE Count incremented successfully.
65 @retval FALSE Table with the input signature not found.
69 ArmSbbrIncrementTableCount (
74 Validate that all ACPI tables required by the given SBBR specification
75 version are installed on the platform.
77 @param [in] Version SBBR spec version to validate against.
79 @retval EFI_SUCCESS All required tables are present.
80 @retval EFI_INVALID_PARAMETER Invalid SBBR version.
81 @retval EFI_NOT_FOUND One or more mandatory tables are missing.
82 @retval EFI_UNSUPPORTED Mandatory ACPI table does not have its
83 instance count tracked.
88 ARM_SBBR_VERSION Version
91 #endif // SBBR_VALIDATOR_H_