]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Library/PciSegmentInfoLib.h
MdePkg/BaseLib: add PatchInstructionX86()
[mirror_edk2.git] / MdePkg / Include / Library / PciSegmentInfoLib.h
CommitLineData
e457c1f6
RN
1/** @file\r
2 Provides services to return segment information on a platform with multiple PCI segments.\r
3\r
4 This library is consumed by PciSegmentLib to support multiple segment PCI configuration access.\r
5\r
6 Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>\r
7 This program and the accompanying materials\r
8 are licensed and made available under the terms and conditions of the BSD License\r
9 which accompanies this distribution. The full text of the license may be found at\r
10 http://opensource.org/licenses/bsd-license.php\r
11\r
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14\r
15**/\r
16\r
17#ifndef __PCI_SEGMENT_INFO_LIB__\r
18#define __PCI_SEGMENT_INFO_LIB__\r
19\r
20typedef struct {\r
21 UINT16 SegmentNumber; ///< Segment number.\r
22 UINT64 BaseAddress; ///< ECAM Base address.\r
23 UINT8 StartBusNumber; ///< Start BUS number, for verifying the PCI Segment address.\r
24 UINT8 EndBusNumber; ///< End BUS number, for verifying the PCI Segment address.\r
25} PCI_SEGMENT_INFO;\r
26\r
27/**\r
28 Return an array of PCI_SEGMENT_INFO holding the segment information.\r
29\r
30 Note: The returned array/buffer is owned by callee.\r
31\r
32 @param Count Return the count of segments.\r
33\r
34 @retval A callee owned array holding the segment information.\r
35**/\r
36PCI_SEGMENT_INFO *\r
37GetPciSegmentInfo (\r
38 UINTN *Count\r
39 );\r
40\r
41#endif\r