]> git.proxmox.com Git - mirror_edk2.git/blame - NetworkPkg/UefiPxeBcDxe/PxeBcDriver.h
NetworkPkg: Add URI configuration form to HTTP boot driver.
[mirror_edk2.git] / NetworkPkg / UefiPxeBcDxe / PxeBcDriver.h
CommitLineData
a3bcde70
HT
1/** @file\r
2 Driver Binding functions declaration for UefiPxeBc Driver.\r
3\r
6879581d 4 Copyright (c) 2007 - 2013, Intel Corporation. All rights reserved.<BR>\r
a3bcde70
HT
5\r
6 This program and the accompanying materials\r
7 are licensed and made available under the terms and conditions of the BSD License\r
8 which accompanies this distribution. The full text of the license may be found at\r
9 http://opensource.org/licenses/bsd-license.php.\r
10\r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13\r
14**/\r
15\r
16#ifndef __EFI_PXEBC_DRIVER_H__\r
17#define __EFI_PXEBC_DRIVER_H__\r
18\r
19extern EFI_COMPONENT_NAME_PROTOCOL gPxeBcComponentName;\r
20extern EFI_COMPONENT_NAME2_PROTOCOL gPxeBcComponentName2;\r
21\r
22/**\r
23 Test to see if this driver supports ControllerHandle. This service\r
24 is called by the EFI boot service ConnectController(). In\r
25 order to make drivers as small as possible, there are a few calling\r
26 restrictions for this service. ConnectController() must\r
27 follow these calling restrictions. If any other agent wishes to call\r
28 Supported() it must also follow these calling restrictions.\r
29\r
30 @param[in] This The pointer to the driver binding protocol.\r
31 @param[in] ControllerHandle The handle of device to be tested.\r
32 @param[in] RemainingDevicePath Optional parameter use to pick a specific child\r
33 device to be started.\r
34\r
35 @retval EFI_SUCCESS This driver supports this device.\r
36 @retval EFI_UNSUPPORTED This driver does not support this device.\r
37\r
38**/\r
39EFI_STATUS\r
40EFIAPI\r
6879581d 41PxeBcIp4DriverBindingSupported (\r
a3bcde70
HT
42 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
43 IN EFI_HANDLE ControllerHandle,\r
44 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
45 );\r
46\r
a3bcde70
HT
47/**\r
48 Start this driver on ControllerHandle. This service is called by the\r
49 EFI boot service ConnectController(). In order to make\r
50 drivers as small as possible, there are a few calling restrictions for\r
51 this service. ConnectController() must follow these\r
52 calling restrictions. If any other agent wishes to call Start() it\r
53 must also follow these calling restrictions.\r
54\r
55 @param[in] This The pointer to the driver binding protocol.\r
56 @param[in] ControllerHandle The handle of device to be started.\r
57 @param[in] RemainingDevicePath Optional parameter used to pick a specific child\r
58 device to be started.\r
59\r
60 @retval EFI_SUCCESS This driver is installed to ControllerHandle.\r
61 @retval EFI_ALREADY_STARTED This driver is already running on ControllerHandle.\r
62 @retval other This driver does not support this device.\r
63\r
64**/\r
65EFI_STATUS\r
66EFIAPI\r
6879581d 67PxeBcIp4DriverBindingStart (\r
a3bcde70
HT
68 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
69 IN EFI_HANDLE ControllerHandle,\r
70 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
71 );\r
72\r
73\r
74/**\r
75 Stop this driver on ControllerHandle. This service is called by the\r
76 EFI boot service DisconnectController(). In order to\r
77 make drivers as small as possible, there are a few calling\r
78 restrictions for this service. DisconnectController()\r
79 must follow these calling restrictions. If any other agent wishes\r
80 to call Stop() it must also follow these calling restrictions.\r
81\r
82 @param[in] This Protocol instance pointer.\r
83 @param[in] ControllerHandle Handle of device to stop driver on\r
84 @param[in] NumberOfChildren Number of Handles in ChildHandleBuffer. If number of\r
85 children is zero stop the entire bus driver.\r
86 @param[in] ChildHandleBuffer List of Child Handles to Stop.\r
87\r
88 @retval EFI_SUCCESS This driver is removed ControllerHandle\r
89 @retval EFI_DEVICE_ERROR An unexpected system or network error occurred.\r
90 @retval Others This driver was not removed from this device.\r
91\r
92**/\r
93EFI_STATUS\r
94EFIAPI\r
6879581d 95PxeBcIp4DriverBindingStop (\r
a3bcde70
HT
96 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
97 IN EFI_HANDLE ControllerHandle,\r
98 IN UINTN NumberOfChildren,\r
99 IN EFI_HANDLE *ChildHandleBuffer\r
100 );\r
101\r
6879581d 102/**\r
103 Test to see if this driver supports ControllerHandle. This service\r
104 is called by the EFI boot service ConnectController(). In\r
105 order to make drivers as small as possible, there are a few calling\r
106 restrictions for this service. ConnectController() must\r
107 follow these calling restrictions. If any other agent wishes to call\r
108 Supported() it must also follow these calling restrictions.\r
109\r
110 @param[in] This The pointer to the driver binding protocol.\r
111 @param[in] ControllerHandle The handle of device to be tested.\r
112 @param[in] RemainingDevicePath Optional parameter use to pick a specific child\r
113 device to be started.\r
114\r
115 @retval EFI_SUCCESS This driver supports this device.\r
116 @retval EFI_UNSUPPORTED This driver does not support this device.\r
117\r
118**/\r
119EFI_STATUS\r
120EFIAPI\r
121PxeBcIp6DriverBindingSupported (\r
122 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
123 IN EFI_HANDLE ControllerHandle,\r
124 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
125 );\r
126\r
127/**\r
128 Start this driver on ControllerHandle. This service is called by the\r
129 EFI boot service ConnectController(). In order to make\r
130 drivers as small as possible, there are a few calling restrictions for\r
131 this service. ConnectController() must follow these\r
132 calling restrictions. If any other agent wishes to call Start() it\r
133 must also follow these calling restrictions.\r
134\r
135 @param[in] This The pointer to the driver binding protocol.\r
136 @param[in] ControllerHandle The handle of device to be started.\r
137 @param[in] RemainingDevicePath Optional parameter used to pick a specific child\r
138 device to be started.\r
139\r
140 @retval EFI_SUCCESS This driver is installed to ControllerHandle.\r
141 @retval EFI_ALREADY_STARTED This driver is already running on ControllerHandle.\r
142 @retval other This driver does not support this device.\r
143\r
144**/\r
145EFI_STATUS\r
146EFIAPI\r
147PxeBcIp6DriverBindingStart (\r
148 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
149 IN EFI_HANDLE ControllerHandle,\r
150 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
151 );\r
152\r
153/**\r
154 Stop this driver on ControllerHandle. This service is called by the\r
155 EFI boot service DisconnectController(). In order to\r
156 make drivers as small as possible, there are a few calling\r
157 restrictions for this service. DisconnectController()\r
158 must follow these calling restrictions. If any other agent wishes\r
159 to call Stop() it must also follow these calling restrictions.\r
160\r
161 @param[in] This Protocol instance pointer.\r
162 @param[in] ControllerHandle Handle of device to stop driver on\r
163 @param[in] NumberOfChildren Number of Handles in ChildHandleBuffer. If number of\r
164 children is zero stop the entire bus driver.\r
165 @param[in] ChildHandleBuffer List of Child Handles to Stop.\r
166\r
167 @retval EFI_SUCCESS This driver is removed ControllerHandle\r
168 @retval EFI_DEVICE_ERROR An unexpected system or network error occurred.\r
169 @retval Others This driver was not removed from this device.\r
170\r
171**/\r
172EFI_STATUS\r
173EFIAPI\r
174PxeBcIp6DriverBindingStop (\r
175 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
176 IN EFI_HANDLE ControllerHandle,\r
177 IN UINTN NumberOfChildren,\r
178 IN EFI_HANDLE *ChildHandleBuffer\r
179 );\r
a3bcde70
HT
180#endif\r
181\r