e2dbc38ed8accca5d05301590ba60378aadb74e6
[mirror_edk2.git] / OvmfPkg / Library / QemuNewBootOrderLib / ExtraRootBusMap.h
1 /** @file
2 Map positions of extra PCI root buses to bus numbers.
3
4 Copyright (C) 2015, Red Hat, Inc.
5
6 This program and the accompanying materials are licensed and made available
7 under the terms and conditions of the BSD License which accompanies this
8 distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
10
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT
12 WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 **/
14
15 #ifndef __EXTRA_ROOT_BUS_MAP_H__
16 #define __EXTRA_ROOT_BUS_MAP_H__
17
18 /**
19 Incomplete ("opaque") data type implementing the map.
20 **/
21 typedef struct EXTRA_ROOT_BUS_MAP_STRUCT EXTRA_ROOT_BUS_MAP;
22
23 EFI_STATUS
24 CreateExtraRootBusMap (
25 OUT EXTRA_ROOT_BUS_MAP **ExtraRootBusMap
26 );
27
28 VOID
29 DestroyExtraRootBusMap (
30 IN EXTRA_ROOT_BUS_MAP *ExtraRootBusMap
31 );
32
33 EFI_STATUS
34 MapRootBusPosToBusNr (
35 IN CONST EXTRA_ROOT_BUS_MAP *ExtraRootBusMap,
36 IN UINT64 RootBusPos,
37 OUT UINT32 *RootBusNr
38 );
39
40 #endif