ShellPkg: Add AcpiViewCommandLib
The UefiShellAcpiViewCommandLib is converted from NULL library to a named library so that it may be used in modules other than shell. The library interface exposes the main method for to AcpiView functionality as well as a helper method to dump a buffer to a file. The Shell module is still built by pulling UefiShellAcpiViewCommandLib as a NULL library to preserve the modularity of shell builds. Cc: Ray Ni <ray.ni@intel.com> Cc: Zhichao Gao <zhichao.gao@intel.com> Reviewed-by: Zhichao Gao <zhichao.gao@intel.com> Signed-off-by: Tomas Pilar <tomas.pilar@arm.com>
This commit is contained in:
committed by
mergify[bot]
parent
d45cf5ffdf
commit
db77d8f7ee
@ -1,12 +1,13 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Header file for 'acpiview' Shell command functions.
|
Library providing 'acpiview' functionality to display and
|
||||||
|
validate installed ACPI tables.
|
||||||
|
|
||||||
Copyright (c) 2016 - 2020, ARM Limited. All rights reserved.<BR>
|
Copyright (c) 2016 - 2020, ARM Limited. All rights reserved.<BR>
|
||||||
SPDX-License-Identifier: BSD-2-Clause-Patent
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
**/
|
**/
|
||||||
|
|
||||||
#ifndef UEFI_SHELL_ACPIVIEW_COMMAND_LIB_H_
|
#ifndef ACPI_VIEW_COMMAND_LIB_H_
|
||||||
#define UEFI_SHELL_ACPIVIEW_COMMAND_LIB_H_
|
#define ACPI_VIEW_COMMAND_LIB_H_
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Dump a buffer to a file. Print error message if a file cannot be created.
|
Dump a buffer to a file. Print error message if a file cannot be created.
|
||||||
@ -26,14 +27,14 @@ ShellDumpBufferToFile (
|
|||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Function for 'acpiview' command.
|
Display and validate ACPI tables.
|
||||||
|
|
||||||
@param[in] ImageHandle Handle to the Image (NULL if internal).
|
@param[in] ImageHandle Handle to the Image (NULL if internal).
|
||||||
@param[in] SystemTable Pointer to the System Table (NULL if internal).
|
@param[in] SystemTable Pointer to the System Table (NULL if internal).
|
||||||
|
|
||||||
@retval SHELL_INVALID_PARAMETER The command line invocation could not be parsed
|
@retval SHELL_INVALID_PARAMETER The command line invocation could not be parsed.
|
||||||
@retval SHELL_NOT_FOUND The command failed
|
@retval SHELL_NOT_FOUND The command failed.
|
||||||
@retval SHELL_SUCCESS The command was successful
|
@retval SHELL_SUCCESS The command was successful.
|
||||||
**/
|
**/
|
||||||
SHELL_STATUS
|
SHELL_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
@ -17,11 +17,11 @@
|
|||||||
#include <Library/BaseMemoryLib.h>
|
#include <Library/BaseMemoryLib.h>
|
||||||
#include <Library/DebugLib.h>
|
#include <Library/DebugLib.h>
|
||||||
#include <Library/MemoryAllocationLib.h>
|
#include <Library/MemoryAllocationLib.h>
|
||||||
|
#include <Library/AcpiViewCommandLib.h>
|
||||||
#include "AcpiParser.h"
|
#include "AcpiParser.h"
|
||||||
#include "AcpiTableParser.h"
|
#include "AcpiTableParser.h"
|
||||||
#include "AcpiView.h"
|
#include "AcpiView.h"
|
||||||
#include "AcpiViewConfig.h"
|
#include "AcpiViewConfig.h"
|
||||||
#include "UefiShellAcpiViewCommandLib.h"
|
|
||||||
|
|
||||||
#if defined(MDE_CPU_ARM) || defined (MDE_CPU_AARCH64)
|
#if defined(MDE_CPU_ARM) || defined (MDE_CPU_AARCH64)
|
||||||
#include "Arm/SbbrValidator.h"
|
#include "Arm/SbbrValidator.h"
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
#include <Library/ShellLib.h>
|
#include <Library/ShellLib.h>
|
||||||
#include <Library/UefiBootServicesTableLib.h>
|
#include <Library/UefiBootServicesTableLib.h>
|
||||||
#include <Library/UefiLib.h>
|
#include <Library/UefiLib.h>
|
||||||
|
#include <Library/AcpiViewCommandLib.h>
|
||||||
#include <Uefi.h>
|
#include <Uefi.h>
|
||||||
|
|
||||||
#include "AcpiParser.h"
|
#include "AcpiParser.h"
|
||||||
#include "AcpiTableParser.h"
|
#include "AcpiTableParser.h"
|
||||||
#include "AcpiView.h"
|
#include "AcpiView.h"
|
||||||
#include "AcpiViewConfig.h"
|
#include "AcpiViewConfig.h"
|
||||||
#include "UefiShellAcpiViewCommandLib.h"
|
|
||||||
|
|
||||||
CONST CHAR16 gShellAcpiViewFileName[] = L"ShellCommand";
|
CONST CHAR16 gShellAcpiViewFileName[] = L"ShellCommand";
|
||||||
EFI_HII_HANDLE gShellAcpiViewHiiHandle = NULL;
|
EFI_HII_HANDLE gShellAcpiViewHiiHandle = NULL;
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
FILE_GUID = FB5B305E-84F5-461F-940D-82D345757AFA
|
FILE_GUID = FB5B305E-84F5-461F-940D-82D345757AFA
|
||||||
MODULE_TYPE = UEFI_APPLICATION
|
MODULE_TYPE = UEFI_APPLICATION
|
||||||
VERSION_STRING = 1.0
|
VERSION_STRING = 1.0
|
||||||
LIBRARY_CLASS = NULL|UEFI_APPLICATION UEFI_DRIVER
|
LIBRARY_CLASS = AcpiViewCommandLib|UEFI_APPLICATION UEFI_DRIVER
|
||||||
CONSTRUCTOR = UefiShellAcpiViewCommandLibConstructor
|
CONSTRUCTOR = UefiShellAcpiViewCommandLibConstructor
|
||||||
DESTRUCTOR = UefiShellAcpiViewCommandLibDestructor
|
DESTRUCTOR = UefiShellAcpiViewCommandLibDestructor
|
||||||
|
|
||||||
@ -46,7 +46,6 @@
|
|||||||
Parsers/Ssdt/SsdtParser.c
|
Parsers/Ssdt/SsdtParser.c
|
||||||
Parsers/Xsdt/XsdtParser.c
|
Parsers/Xsdt/XsdtParser.c
|
||||||
UefiShellAcpiViewCommandLib.c
|
UefiShellAcpiViewCommandLib.c
|
||||||
UefiShellAcpiViewCommandLib.h
|
|
||||||
UefiShellAcpiViewCommandLib.uni
|
UefiShellAcpiViewCommandLib.uni
|
||||||
|
|
||||||
[Sources.ARM, Sources.AARCH64]
|
[Sources.ARM, Sources.AARCH64]
|
||||||
|
@ -34,6 +34,9 @@
|
|||||||
## @libraryclass provides BCFG command
|
## @libraryclass provides BCFG command
|
||||||
BcfgCommandLib|Include/Library/BcfgCommandLib.h
|
BcfgCommandLib|Include/Library/BcfgCommandLib.h
|
||||||
|
|
||||||
|
## @libraryclass provides the AcpiView command
|
||||||
|
AcpiViewCommandLib|Include/Library/AcpiViewCommandLib.h
|
||||||
|
|
||||||
[Guids]
|
[Guids]
|
||||||
gEfiShellEnvironment2ExtGuid = {0xd2c18636, 0x40e5, 0x4eb5, {0xa3, 0x1b, 0x36, 0x69, 0x5f, 0xd4, 0x2c, 0x87}}
|
gEfiShellEnvironment2ExtGuid = {0xd2c18636, 0x40e5, 0x4eb5, {0xa3, 0x1b, 0x36, 0x69, 0x5f, 0xd4, 0x2c, 0x87}}
|
||||||
gEfiShellPkgTokenSpaceGuid = {0x171e9188, 0x31d3, 0x40f5, {0xb1, 0x0c, 0x53, 0x9b, 0x2d, 0xb9, 0x40, 0xcd}}
|
gEfiShellPkgTokenSpaceGuid = {0x171e9188, 0x31d3, 0x40f5, {0xb1, 0x0c, 0x53, 0x9b, 0x2d, 0xb9, 0x40, 0xcd}}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Shell Package
|
# Shell Package
|
||||||
#
|
#
|
||||||
# Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved.<BR>
|
# Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved.<BR>
|
||||||
# Copyright (c) 2018, Arm Limited. All rights reserved.<BR>
|
# Copyright (c) 2018 - 2020, Arm Limited. All rights reserved.<BR>
|
||||||
# Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
|
# Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
@ -50,6 +50,7 @@
|
|||||||
|
|
||||||
PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
|
PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
|
||||||
BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
|
BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
|
||||||
|
AcpiViewCommandLib|ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf
|
||||||
IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
|
IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
|
||||||
|
|
||||||
UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
|
UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
|
||||||
|
Reference in New Issue
Block a user