TianoCore EDK2 master
|
#include <Library/AcpiLib.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#include <Library/MemoryAllocationLib.h>
#include <Protocol/AcpiTable.h>
#include <AcpiTableGenerator.h>
#include <ConfigurationManagerObject.h>
#include <ConfigurationManagerHelper.h>
#include <Library/AcpiHelperLib.h>
#include <Library/TableHelperLib.h>
#include <Library/AmlLib/AmlLib.h>
#include <Library/SsdtPcieSupportLib.h>
#include <Protocol/ConfigurationManagerProtocol.h>
#include "SsdtPcieSupportLibPrivate.h"
Go to the source code of this file.
Functions | |
EFI_STATUS EFIAPI | GeneratePciSlots (IN CONST CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO *PciInfo, IN CONST MAPPING_TABLE *MappingTable, IN UINT32 Uid, IN OUT AML_OBJECT_NODE_HANDLE PciNode) |
EFI_STATUS EFIAPI | AddOscMethod (IN CONST CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO *PciInfo, IN OUT AML_OBJECT_NODE_HANDLE PciNode) |
SSDT PCIe Support Library.
Copyright (c) 2021 - 2022, Arm Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file SsdtPcieSupportLib.c.
EFI_STATUS EFIAPI AddOscMethod | ( | IN CONST CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO * | PciInfo, |
IN OUT AML_OBJECT_NODE_HANDLE | PciNode | ||
) |
Add an _OSC template method to the PciNode.
The _OSC method is provided as an AML blob. The blob is parsed and attached at the end of the PciNode list of variable elements.
[in] | PciInfo | Pci device information. |
[in,out] | PciNode | Pci node to amend. |
EFI_SUCCESS | The function completed successfully. |
EFI_INVALID_PARAMETER | Invalid parameter. |
EFI_OUT_OF_RESOURCES | Could not allocate memory. |
Definition at line 134 of file SsdtPcieSupportLib.c.
EFI_STATUS EFIAPI GeneratePciSlots | ( | IN CONST CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO * | PciInfo, |
IN CONST MAPPING_TABLE * | MappingTable, | ||
IN UINT32 | Uid, | ||
IN OUT AML_OBJECT_NODE_HANDLE | PciNode | ||
) |
Generate Pci slots devices.
PCI Firmware Specification - Revision 3.3, s4.8 "Generic ACPI PCI Slot Description" requests to describe the PCI slot used. It should be possible to enumerate them, but this is additional information.
[in] | PciInfo | Pci device information. |
[in] | MappingTable | The mapping table structure. |
[in] | Uid | Unique Id of the Pci device. |
[in,out] | PciNode | Pci node to amend. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | Invalid parameter. |
EFI_OUT_OF_RESOURCES | Failed to allocate memory. |
Definition at line 55 of file SsdtPcieSupportLib.c.