]> git.proxmox.com Git - mirror_edk2.git/blame - NetworkPkg/UefiPxeBcDxe/PxeBcDriver.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[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 5\r
ecf98fbc 6 SPDX-License-Identifier: BSD-2-Clause-Patent\r
a3bcde70
HT
7\r
8**/\r
9\r
10#ifndef __EFI_PXEBC_DRIVER_H__\r
11#define __EFI_PXEBC_DRIVER_H__\r
12\r
d1050b9d
MK
13extern EFI_COMPONENT_NAME_PROTOCOL gPxeBcComponentName;\r
14extern EFI_COMPONENT_NAME2_PROTOCOL gPxeBcComponentName2;\r
a3bcde70
HT
15\r
16/**\r
17 Test to see if this driver supports ControllerHandle. This service\r
18 is called by the EFI boot service ConnectController(). In\r
19 order to make drivers as small as possible, there are a few calling\r
20 restrictions for this service. ConnectController() must\r
21 follow these calling restrictions. If any other agent wishes to call\r
22 Supported() it must also follow these calling restrictions.\r
23\r
24 @param[in] This The pointer to the driver binding protocol.\r
25 @param[in] ControllerHandle The handle of device to be tested.\r
26 @param[in] RemainingDevicePath Optional parameter use to pick a specific child\r
27 device to be started.\r
28\r
29 @retval EFI_SUCCESS This driver supports this device.\r
30 @retval EFI_UNSUPPORTED This driver does not support this device.\r
31\r
32**/\r
33EFI_STATUS\r
34EFIAPI\r
6879581d 35PxeBcIp4DriverBindingSupported (\r
a3bcde70
HT
36 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
37 IN EFI_HANDLE ControllerHandle,\r
38 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
39 );\r
40\r
a3bcde70
HT
41/**\r
42 Start this driver on ControllerHandle. This service is called by the\r
43 EFI boot service ConnectController(). In order to make\r
44 drivers as small as possible, there are a few calling restrictions for\r
45 this service. ConnectController() must follow these\r
46 calling restrictions. If any other agent wishes to call Start() it\r
47 must also follow these calling restrictions.\r
48\r
49 @param[in] This The pointer to the driver binding protocol.\r
50 @param[in] ControllerHandle The handle of device to be started.\r
51 @param[in] RemainingDevicePath Optional parameter used to pick a specific child\r
52 device to be started.\r
53\r
54 @retval EFI_SUCCESS This driver is installed to ControllerHandle.\r
55 @retval EFI_ALREADY_STARTED This driver is already running on ControllerHandle.\r
56 @retval other This driver does not support this device.\r
57\r
58**/\r
59EFI_STATUS\r
60EFIAPI\r
6879581d 61PxeBcIp4DriverBindingStart (\r
a3bcde70
HT
62 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
63 IN EFI_HANDLE ControllerHandle,\r
64 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
65 );\r
66\r
a3bcde70
HT
67/**\r
68 Stop this driver on ControllerHandle. This service is called by the\r
69 EFI boot service DisconnectController(). In order to\r
70 make drivers as small as possible, there are a few calling\r
71 restrictions for this service. DisconnectController()\r
72 must follow these calling restrictions. If any other agent wishes\r
73 to call Stop() it must also follow these calling restrictions.\r
74\r
75 @param[in] This Protocol instance pointer.\r
76 @param[in] ControllerHandle Handle of device to stop driver on\r
77 @param[in] NumberOfChildren Number of Handles in ChildHandleBuffer. If number of\r
78 children is zero stop the entire bus driver.\r
79 @param[in] ChildHandleBuffer List of Child Handles to Stop.\r
80\r
81 @retval EFI_SUCCESS This driver is removed ControllerHandle\r
82 @retval EFI_DEVICE_ERROR An unexpected system or network error occurred.\r
83 @retval Others This driver was not removed from this device.\r
84\r
85**/\r
86EFI_STATUS\r
87EFIAPI\r
6879581d 88PxeBcIp4DriverBindingStop (\r
a3bcde70
HT
89 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
90 IN EFI_HANDLE ControllerHandle,\r
91 IN UINTN NumberOfChildren,\r
92 IN EFI_HANDLE *ChildHandleBuffer\r
93 );\r
94\r
6879581d 95/**\r
96 Test to see if this driver supports ControllerHandle. This service\r
97 is called by the EFI boot service ConnectController(). In\r
98 order to make drivers as small as possible, there are a few calling\r
99 restrictions for this service. ConnectController() must\r
100 follow these calling restrictions. If any other agent wishes to call\r
101 Supported() it must also follow these calling restrictions.\r
102\r
103 @param[in] This The pointer to the driver binding protocol.\r
104 @param[in] ControllerHandle The handle of device to be tested.\r
105 @param[in] RemainingDevicePath Optional parameter use to pick a specific child\r
106 device to be started.\r
107\r
108 @retval EFI_SUCCESS This driver supports this device.\r
109 @retval EFI_UNSUPPORTED This driver does not support this device.\r
110\r
111**/\r
112EFI_STATUS\r
113EFIAPI\r
114PxeBcIp6DriverBindingSupported (\r
115 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
116 IN EFI_HANDLE ControllerHandle,\r
117 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
118 );\r
119\r
120/**\r
121 Start this driver on ControllerHandle. This service is called by the\r
122 EFI boot service ConnectController(). In order to make\r
123 drivers as small as possible, there are a few calling restrictions for\r
124 this service. ConnectController() must follow these\r
125 calling restrictions. If any other agent wishes to call Start() it\r
126 must also follow these calling restrictions.\r
127\r
128 @param[in] This The pointer to the driver binding protocol.\r
129 @param[in] ControllerHandle The handle of device to be started.\r
130 @param[in] RemainingDevicePath Optional parameter used to pick a specific child\r
131 device to be started.\r
132\r
133 @retval EFI_SUCCESS This driver is installed to ControllerHandle.\r
134 @retval EFI_ALREADY_STARTED This driver is already running on ControllerHandle.\r
135 @retval other This driver does not support this device.\r
136\r
137**/\r
138EFI_STATUS\r
139EFIAPI\r
140PxeBcIp6DriverBindingStart (\r
141 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
142 IN EFI_HANDLE ControllerHandle,\r
143 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL\r
144 );\r
145\r
146/**\r
147 Stop this driver on ControllerHandle. This service is called by the\r
148 EFI boot service DisconnectController(). In order to\r
149 make drivers as small as possible, there are a few calling\r
150 restrictions for this service. DisconnectController()\r
151 must follow these calling restrictions. If any other agent wishes\r
152 to call Stop() it must also follow these calling restrictions.\r
153\r
154 @param[in] This Protocol instance pointer.\r
155 @param[in] ControllerHandle Handle of device to stop driver on\r
156 @param[in] NumberOfChildren Number of Handles in ChildHandleBuffer. If number of\r
157 children is zero stop the entire bus driver.\r
158 @param[in] ChildHandleBuffer List of Child Handles to Stop.\r
159\r
160 @retval EFI_SUCCESS This driver is removed ControllerHandle\r
161 @retval EFI_DEVICE_ERROR An unexpected system or network error occurred.\r
162 @retval Others This driver was not removed from this device.\r
163\r
164**/\r
165EFI_STATUS\r
166EFIAPI\r
167PxeBcIp6DriverBindingStop (\r
168 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
169 IN EFI_HANDLE ControllerHandle,\r
170 IN UINTN NumberOfChildren,\r
171 IN EFI_HANDLE *ChildHandleBuffer\r
172 );\r
a3bcde70 173\r
d1050b9d 174#endif\r