]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Protocol/DriverFamilyOverride.h
Grammatical and disclaimer changes (does not follow internal C coding stds.)
[mirror_edk2.git] / MdePkg / Include / Protocol / DriverFamilyOverride.h
CommitLineData
d02d144f 1/** @file\r
4ca9b6c4 2 UEFI Driver Family Protocol\r
d02d144f 3\r
af2dc6a7 4Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved<BR>\r
5This program and the accompanying materials are licensed and made available under \r
6the terms and conditions of the BSD License that accompanies this distribution. \r
7The full text of the license may be found at\r
8http://opensource.org/licenses/bsd-license.php. \r
9 \r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
d02d144f 12\r
13**/\r
14\r
15#ifndef __EFI_DRIVER_FAMILY_OVERRIDE_H__\r
16#define __EFI_DRIVER_FAMILY_OVERRIDE_H__\r
17\r
18#define EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL_GUID \\r
19 { \\r
20 0xb1ee129e, 0xda36, 0x4181, { 0x91, 0xf8, 0x4, 0xa4, 0x92, 0x37, 0x66, 0xa7 } \\r
21 }\r
22 \r
23typedef struct _EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL;\r
24\r
25//\r
26// Prototypes for the Driver Family Override Protocol\r
27//\r
28// \r
29/** \r
30 This function returns the version value associated with the driver specified by This.\r
31\r
32 Retrieves the version of the driver that is used by the EFI Boot Service ConnectController()\r
33 to sort the set of Driver Binding Protocols in order from highest priority to lowest priority.\r
34 For drivers that support the Driver Family Override Protocol, those drivers are sorted so that\r
630b4187 35 the drivers with higher values returned by GetVersion() are higher priority than drivers that\r
d02d144f 36 return lower values from GetVersion().\r
37\r
38 @param This A pointer to the EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL instance. \r
39 \r
40 @return The version value associated with the driver specified by This. \r
41 \r
42**/\r
43typedef\r
44UINT32\r
8b13229b 45(EFIAPI *EFI_DRIVER_FAMILY_OVERRIDE_GET_VERSION)(\r
d02d144f 46 IN EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL *This\r
47 );\r
48\r
44717a39 49///\r
17664848 50/// When installed, the Driver Family Override Protocol produces a GUID that represents \r
44717a39 51/// a family of drivers. Drivers with the same GUID are members of the same family \r
52/// When drivers are connected to controllers, drivers with a higher revision value \r
53/// in the same driver family are connected with a higher priority than drivers \r
54/// with a lower revision value in the same driver family. The EFI Boot Service\r
17664848 55/// Connect Controller uses five rules to build a prioritized list of drivers when \r
44717a39 56/// a request is made to connect a driver to a controller. The Driver Family Protocol\r
57/// rule is between the Platform Specific Driver Override Protocol and above the \r
58/// Bus Specific Driver Override Protocol. \r
59///\r
d02d144f 60struct _EFI_DRIVER_FAMILY_OVERRIDE_PROTOCOL {\r
61 EFI_DRIVER_FAMILY_OVERRIDE_GET_VERSION GetVersion;\r
62};\r
63\r
64extern EFI_GUID gEfiDriverFamilyOverrideProtocolGuid;\r
65\r
66#endif\r