]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkPkg/Include/Protocol/IncompatiblePciDeviceSupport.h
Initial directory structure of IntelFrameworkPkg.
[mirror_edk2.git] / IntelFrameworkPkg / Include / Protocol / IncompatiblePciDeviceSupport.h
CommitLineData
79964ac8 1/** @file\r
2 This file declares EFI Incompatible PCI Device Support Protocol\r
3\r
4 Copyright (c) 2007, Intel Corporation\r
5 All rights reserved. This program and the accompanying materials\r
6 are licensed and made available under the terms and conditions of the BSD License\r
7 which accompanies this distribution. The full text of the license may be found at\r
8 http://opensource.org/licenses/bsd-license.php\r
9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13 Module Name: IncompatiblePciDeviceSupport.h\r
14\r
15 @par Revision Reference:\r
16 This protocol is defined in Framework of EFI PCI Platform Support Specification.\r
17 Version0.9\r
18\r
19**/\r
20\r
21#ifndef _INCOMPATIBLE_PCI_DEVICE_SUPPORT_H_\r
22#define _INCOMPATIBLE_PCI_DEVICE_SUPPORT_H_\r
23\r
24#define EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL_GUID \\r
25 {0xeb23f55a, 0x7863, 0x4ac2, {0x8d, 0x3d, 0x95, 0x65, 0x35, 0xde, 0x03, 0x75} }\r
26\r
27typedef struct _EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL;\r
28\r
29/**\r
30 Returns a list of ACPI resource descriptors that detail the special\r
31 resource configuration requirements for an incompatible PCI device.\r
32\r
33 @param This Pointer to the EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL instance.\r
34 @param VendorID A unique ID to identify the manufacturer of the PCI device.\r
35 @param DeviceID A unique ID to identify the particular PCI device.\r
36 @param RevisionID A PCI device-specific revision identifier.\r
37 @param SubsystemVendorId Specifies the subsystem vendor ID.\r
38 @param SubsystemDeviceId Specifies the subsystem device ID.\r
39 @param Configuration A list of ACPI resource descriptors that detail\r
40 the configuration requirement.\r
41\r
42 @retval EFI_SUCCESS The function always returns EFI_SUCCESS.\r
43\r
44**/\r
45typedef\r
46EFI_STATUS\r
47(EFIAPI *EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_CHECK_DEVICE) (\r
48 IN EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL *This,\r
49 IN UINTN VendorId,\r
50 IN UINTN DeviceId,\r
51 IN UINTN Revision,\r
52 IN UINTN SubVendorId,OPTIONAL\r
53 IN UINTN SubDeviceId,OPTIONAL\r
54 OUT VOID **Configuration\r
55);\r
56\r
57\r
58//\r
59// Interface structure for the Incompatible PCI Device Support Protocol\r
60//\r
61/**\r
62 @par Protocol Description:\r
63 This protocol can find some incompatible PCI devices and report their\r
64 special resource requirements to the PCI bus driver.\r
65\r
66 @param CheckDevice\r
67 Returns a list of ACPI resource descriptors that detail any special\r
68 resource configuration requirements if the specified device is a recognized\r
69 incompatible PCI device.\r
70\r
71**/\r
72struct _EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL {\r
73 EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_CHECK_DEVICE CheckDevice;\r
74};\r
75\r
76extern EFI_GUID gEfiIncompatiblePciDeviceSupportProtocolGuid;\r
77\r
78#endif\r