]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/Library/PciSegmentInfoLib.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdePkg / Include / Library / PciSegmentInfoLib.h
1 /** @file
2 Provides services to return segment information on a platform with multiple PCI segments.
3
4 This library is consumed by PciSegmentLib to support multiple segment PCI configuration access.
5
6 Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
7 SPDX-License-Identifier: BSD-2-Clause-Patent
8
9 **/
10
11 #ifndef __PCI_SEGMENT_INFO_LIB__
12 #define __PCI_SEGMENT_INFO_LIB__
13
14 typedef struct {
15 UINT16 SegmentNumber; ///< Segment number.
16 UINT64 BaseAddress; ///< ECAM Base address.
17 UINT8 StartBusNumber; ///< Start BUS number, for verifying the PCI Segment address.
18 UINT8 EndBusNumber; ///< End BUS number, for verifying the PCI Segment address.
19 } PCI_SEGMENT_INFO;
20
21 /**
22 Return an array of PCI_SEGMENT_INFO holding the segment information.
23
24 Note: The returned array/buffer is owned by callee.
25
26 @param Count Return the count of segments.
27
28 @retval A callee owned array holding the segment information.
29 **/
30 PCI_SEGMENT_INFO *
31 GetPciSegmentInfo (
32 UINTN *Count
33 );
34
35 #endif