]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigNv.h
1. retired NicIp4ConfigProtocolGuid
[mirror_edk2.git] / MdeModulePkg / Universal / Network / Ip4ConfigDxe / Ip4ConfigNv.h
1 /** @file
2 The header file of IP4ConfigNV.c
3
4 Copyright (c) 2009, Intel Corporation.<BR>
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef _IP4_CONFIGNV_H_
16 #define _IP4_CONFIGNV_H_
17
18 #include "Ip4Config.h"
19 #include "Ip4NVData.h"
20
21 extern UINT8 Ip4ConfigDxeBin[];
22 extern UINT8 Ip4ConfigDxeStrings[];
23
24 #define NIC_ITEM_CONFIG_SIZE sizeof (NIC_IP4_CONFIG_INFO) + sizeof (EFI_IP4_ROUTE_TABLE) * 2
25
26
27 ///
28 /// HII specific Vendor Device Path definition.
29 ///
30 typedef struct {
31 VENDOR_DEVICE_PATH VendorDevicePath;
32 EFI_DEVICE_PATH_PROTOCOL End;
33 } HII_VENDOR_DEVICE_PATH;
34
35 /**
36 Updates the network configuration form to add/delete an entry for the network
37 device specified by the Instance.
38
39 @param[in] Instance The IP4 Config instance.
40 @param[in] AddForm Whether to add or delete a form entry.
41
42 @retval EFI_SUCCESS The network configuration form is updated.
43 @retval EFI_OUT_OF_RESOURCES Failed to allocate memory.
44 @retval Others Other errors as indicated.
45 **/
46 EFI_STATUS
47 Ip4ConfigUpdateForm (
48 IN IP4_CONFIG_INSTANCE *Instance,
49 IN BOOLEAN AddForm
50 );
51
52 /**
53 Install HII Config Access protocol for network device and allocate resource.
54
55 @param[in] Instance The IP4 Config instance.
56
57 @retval EFI_SUCCESS The HII Config Access protocol is installed.
58 @retval EFI_OUT_OF_RESOURCES Failed to allocate memory.
59 @retval Others Other errors as indicated.
60 **/
61 EFI_STATUS
62 Ip4ConfigDeviceInit (
63 IN IP4_CONFIG_INSTANCE *Instance
64 );
65
66 /**
67 Uninstall HII Config Access protocol for network device and free resource.
68
69 @param[in] Instance The IP4 Config instance.
70
71 @retval EFI_SUCCESS The HII Config Access protocol is uninstalled.
72 @retval Others Other errors as indicated.
73 **/
74 EFI_STATUS
75 Ip4ConfigDeviceUnload (
76 IN IP4_CONFIG_INSTANCE *Instance
77 );
78
79 /**
80 Initialize the network configuration form, this includes: delete all the network
81 device configuration entries, install the form callback protocol and
82 allocate the resources used.
83
84 @retval EFI_SUCCESS The network configuration form is unloaded.
85 @retval EFI_OUT_OF_RESOURCES Failed to allocate memory.
86 **/
87 EFI_STATUS
88 Ip4ConfigFormInit (
89 VOID
90 );
91
92 /**
93 Unload the network configuration form, this includes: delete all the network
94 device configuration entries, uninstall the form callback protocol and
95 free the resources used.
96
97 @retval EFI_SUCCESS The network configuration form is unloaded.
98 **/
99 EFI_STATUS
100 Ip4ConfigFormUnload (
101 VOID
102 );
103
104 #endif