]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciDriverOverride.h
Code scrub for IdeBusDxe driver and PeiS3Lib.(undergoing)
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Pci / PciBusDxe / PciDriverOverride.h
CommitLineData
97404058 1/** @file\r
ead42efc 2\r
3Copyright (c) 2006, Intel Corporation \r
4All rights reserved. This program and the accompanying materials \r
5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
3db51098 12**/\r
ead42efc 13\r
ead42efc 14\r
eeefcb9d 15#ifndef _EFI_PCI_DRIVER_OVERRRIDE_H_\r
16#define _EFI_PCI_DRIVER_OVERRRIDE_H_\r
ead42efc 17\r
f02bd376 18#define DRIVER_OVERRIDE_SIGNATURE SIGNATURE_32 ('d', 'r', 'o', 'v')\r
ead42efc 19\r
20typedef struct {\r
21 UINT32 Signature;\r
22 LIST_ENTRY Link;\r
23 EFI_HANDLE DriverImageHandle;\r
24} PCI_DRIVER_OVERRIDE_LIST;\r
25\r
26\r
27#define DRIVER_OVERRIDE_FROM_LINK(a) \\r
28 CR (a, PCI_DRIVER_OVERRIDE_LIST, Link, DRIVER_OVERRIDE_SIGNATURE)\r
29\r
a3b8e257 30/**\r
97404058 31 Initializes a PCI Driver Override Instance.\r
a3b8e257 32\r
97404058 33 @param PciIoDevice Device instance.\r
ead42efc 34\r
a3b8e257 35**/\r
8e6b0dcb 36VOID\r
ead42efc 37InitializePciDriverOverrideInstance (\r
38 PCI_IO_DEVICE *PciIoDevice\r
ed66e1bc 39 );\r
ead42efc 40\r
a3b8e257 41/**\r
97404058 42 Add an overriding driver image.\r
a3b8e257 43 \r
97404058 44 @param PciIoDevice Instance of PciIo device.\r
45 @param DriverImageHandle new added driver image.\r
a3b8e257 46 \r
97404058 47 @retval EFI_OUT_OF_RESOURCES no memory resource for new driver instance.\r
48 @retval EFI_SUCCESS Success add driver.\r
a3b8e257 49**/\r
ead42efc 50EFI_STATUS\r
51AddDriver (\r
52 IN PCI_IO_DEVICE *PciIoDevice,\r
53 IN EFI_HANDLE DriverImageHandle\r
ed66e1bc 54 );\r
ead42efc 55\r
ead42efc 56\r
a3b8e257 57/**\r
97404058 58 Get a overriding driver image.\r
59 @param This Pointer to instance of EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL.\r
60 @param DriverImageHandle Override driver image.\r
a3b8e257 61 \r
97404058 62 @retval EFI_SUCCESS Success to get driver image handle.\r
63 @retval EFI_NOT_FOUND can not find override driver image.\r
64 @retval EFI_INVALID_PARAMETER Invalid parameter.\r
bcd70414 65**/\r
ead42efc 66EFI_STATUS\r
67EFIAPI\r
68GetDriver (\r
69 IN EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL *This,\r
70 IN OUT EFI_HANDLE *DriverImageHandle\r
ed66e1bc 71 );\r
ead42efc 72\r
73#endif\r