]> git.proxmox.com Git - mirror_edk2.git/blame - NetworkPkg/HttpBootDxe/HttpBootConfig.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / NetworkPkg / HttpBootDxe / HttpBootConfig.h
CommitLineData
fa848a40
FS
1/** @file\r
2 The header file of functions for configuring or getting the parameters\r
3 relating to HTTP Boot.\r
4\r
5Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
ecf98fbc 6SPDX-License-Identifier: BSD-2-Clause-Patent\r
fa848a40
FS
7\r
8**/\r
9\r
10#ifndef _HTTP_BOOT_CONFIG_H_\r
11#define _HTTP_BOOT_CONFIG_H_\r
12\r
fa848a40
FS
13#include "HttpBootConfigNVDataStruc.h"\r
14\r
d1050b9d 15typedef struct _HTTP_BOOT_FORM_CALLBACK_INFO HTTP_BOOT_FORM_CALLBACK_INFO;\r
fa848a40 16\r
d1050b9d
MK
17extern UINT8 HttpBootDxeStrings[];\r
18extern UINT8 HttpBootConfigVfrBin[];\r
fa848a40
FS
19\r
20#pragma pack()\r
21\r
22#define HTTP_BOOT_FORM_CALLBACK_INFO_SIGNATURE SIGNATURE_32 ('H', 'B', 'f', 'c')\r
23\r
24#define HTTP_BOOT_FORM_CALLBACK_INFO_FROM_CONFIG_ACCESS(Callback) \\r
25 CR ( \\r
26 Callback, \\r
27 HTTP_BOOT_FORM_CALLBACK_INFO, \\r
28 ConfigAccess, \\r
29 HTTP_BOOT_FORM_CALLBACK_INFO_SIGNATURE \\r
30 )\r
31\r
32struct _HTTP_BOOT_FORM_CALLBACK_INFO {\r
d1050b9d
MK
33 UINT32 Signature;\r
34 BOOLEAN Initialized;\r
35 EFI_HANDLE ChildHandle;\r
36 EFI_DEVICE_PATH_PROTOCOL *HiiVendorDevicePath;\r
37 EFI_HII_HANDLE RegisteredHandle;\r
38 EFI_HII_CONFIG_ACCESS_PROTOCOL ConfigAccess;\r
39 HTTP_BOOT_CONFIG_IFR_NVDATA HttpBootNvData;\r
fa848a40
FS
40};\r
41\r
42/**\r
43 Initialize the configuration form.\r
44\r
45 @param[in] Private Pointer to the driver private data.\r
46\r
47 @retval EFI_SUCCESS The configuration form is initialized.\r
48 @retval EFI_OUT_OF_RESOURCES Failed to allocate memory.\r
49\r
50**/\r
51EFI_STATUS\r
52HttpBootConfigFormInit (\r
d1050b9d 53 IN HTTP_BOOT_PRIVATE_DATA *Private\r
fa848a40
FS
54 );\r
55\r
56/**\r
57 Unload the configuration form, this includes: delete all the configuration\r
58 entries, uninstall the form callback protocol, and free the resources used.\r
75372581 59 The form will only be unload completely when both IP4 and IP6 stack are stopped.\r
fa848a40
FS
60\r
61 @param[in] Private Pointer to the driver private data.\r
62\r
63 @retval EFI_SUCCESS The configuration form is unloaded.\r
64 @retval Others Failed to unload the form.\r
65\r
66**/\r
67EFI_STATUS\r
68HttpBootConfigFormUnload (\r
d1050b9d 69 IN HTTP_BOOT_PRIVATE_DATA *Private\r
fa848a40
FS
70 );\r
71\r
72#endif\r