TianoCore EDK2 master
Loading...
Searching...
No Matches
SsdtPcieSupportLib.h File Reference

Go to the source code of this file.

Data Structures

struct  MappingTable
 

Typedefs

typedef struct MappingTable MAPPING_TABLE
 

Functions

EFI_STATUS EFIAPI AddOscMethod (IN CONST CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO *PciInfo, IN OUT AML_OBJECT_NODE_HANDLE PciNode)
 
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)
 

Detailed Description

Ssdt PCIe Support Library

Copyright (c) 2021 - 2022, Arm Limited. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file SsdtPcieSupportLib.h.

Typedef Documentation

◆ MAPPING_TABLE

typedef struct MappingTable MAPPING_TABLE

Structure used to map integer to an index.

Function Documentation

◆ AddOscMethod()

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.

Parameters
[in]PciInfoPci device information.
[in,out]PciNodePci node to amend.
Return values
EFI_SUCCESSThe function completed successfully.
EFI_INVALID_PARAMETERInvalid parameter.
EFI_OUT_OF_RESOURCESCould not allocate memory.

Definition at line 134 of file SsdtPcieSupportLib.c.

◆ GeneratePciSlots()

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.

Parameters
[in]PciInfoPci device information.
[in]MappingTableThe mapping table structure.
[in]UidUnique Id of the Pci device.
[in,out]PciNodePci node to amend.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERInvalid parameter.
EFI_OUT_OF_RESOURCESFailed to allocate memory.

Definition at line 55 of file SsdtPcieSupportLib.c.