To align w/ UEFI 2.3 Spec, PXE driver installs PxeBc, LoadFile and SNP Protocol on IPV4/V6 child handle separately.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11112 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -51,6 +51,7 @@
|
||||
#include <Library/PcdLib.h>
|
||||
|
||||
typedef struct _PXEBC_PRIVATE_DATA PXEBC_PRIVATE_DATA;
|
||||
typedef struct _PXEBC_PRIVATE_PROTOCOL PXEBC_PRIVATE_PROTOCOL;
|
||||
typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC;
|
||||
|
||||
#include "PxeBcDriver.h"
|
||||
@@ -72,13 +73,24 @@ typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC;
|
||||
#define PXEBC_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('P', 'X', 'E', 'P')
|
||||
#define PXEBC_VIRTUAL_NIC_SIGNATURE SIGNATURE_32 ('P', 'X', 'E', 'V')
|
||||
#define PXEBC_PRIVATE_DATA_FROM_PXEBC(a) CR (a, PXEBC_PRIVATE_DATA, PxeBc, PXEBC_PRIVATE_DATA_SIGNATURE)
|
||||
#define PXEBC_PRIVATE_DATA_FROM_ID(a) CR (a, PXEBC_PRIVATE_DATA, Id, PXEBC_PRIVATE_DATA_SIGNATURE)
|
||||
#define PXEBC_VIRTUAL_NIC_FROM_LOADFILE(a) CR (a, PXEBC_VIRTUAL_NIC, LoadFile, PXEBC_VIRTUAL_NIC_SIGNATURE)
|
||||
|
||||
#define PXEBC_PRIVATE_GUID \
|
||||
{ \
|
||||
0xa4dfac32, 0xfbb4, 0x4907,{0xb3, 0x13, 0x4, 0xe, 0xe2, 0x42, 0x33, 0x20 } \
|
||||
}
|
||||
|
||||
|
||||
typedef union {
|
||||
PXEBC_DHCP4_PACKET_CACHE Dhcp4;
|
||||
PXEBC_DHCP6_PACKET_CACHE Dhcp6;
|
||||
} PXEBC_DHCP_PACKET_CACHE;
|
||||
|
||||
struct _PXEBC_PRIVATE_PROTOCOL {
|
||||
UINT64 Reserved;
|
||||
};
|
||||
|
||||
struct _PXEBC_VIRTUAL_NIC {
|
||||
UINT32 Signature;
|
||||
EFI_HANDLE Controller;
|
||||
@@ -92,6 +104,9 @@ struct _PXEBC_PRIVATE_DATA {
|
||||
EFI_HANDLE Controller;
|
||||
EFI_HANDLE Image;
|
||||
|
||||
PXEBC_PRIVATE_PROTOCOL Id;
|
||||
EFI_SIMPLE_NETWORK_PROTOCOL *Snp;
|
||||
|
||||
PXEBC_VIRTUAL_NIC *Ip4Nic;
|
||||
PXEBC_VIRTUAL_NIC *Ip6Nic;
|
||||
|
||||
|
Reference in New Issue
Block a user