diff options
author | Ye Ting <ting.ye@intel.com> | 2015-04-30 02:57:10 +0000 |
---|---|---|
committer | tye1 <tye1@Edk2> | 2015-04-30 02:57:10 +0000 |
commit | 2bbe9553c495bb9024b4b51743142a0a50e0d370 (patch) | |
tree | 3cf8c8c3b5e30d44a3f1410115bb1eb5c6f3961e /OptionRomPkg/UndiRuntimeDxe/Init.c | |
parent | 1f17c7f71b14307ff5e0f9694ee800364c865374 (diff) | |
download | edk2-2bbe9553c495bb9024b4b51743142a0a50e0d370.tar.gz edk2-2bbe9553c495bb9024b4b51743142a0a50e0d370.tar.bz2 edk2-2bbe9553c495bb9024b4b51743142a0a50e0d370.zip |
Add IPV6 support from UNDI
Add new information block ‘IPV6 support from UNDI’ in AIP protocol and provide sample implementation in UNDI driver.
Update PXE driver to get ‘Ipv6Available’ of PXE BC Mode data from UNDI driver, if unsupported then not to start PXE over IPv6 path.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17275 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'OptionRomPkg/UndiRuntimeDxe/Init.c')
-rw-r--r-- | OptionRomPkg/UndiRuntimeDxe/Init.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/OptionRomPkg/UndiRuntimeDxe/Init.c b/OptionRomPkg/UndiRuntimeDxe/Init.c index 4e4327005f..41892ca2b6 100644 --- a/OptionRomPkg/UndiRuntimeDxe/Init.c +++ b/OptionRomPkg/UndiRuntimeDxe/Init.c @@ -435,7 +435,7 @@ UndiDriverStart ( UNDI32Device->NIIProtocol_31.MinorVer = PXE_ROMID_MINORVER_31;
UNDI32Device->NIIProtocol_31.ImageSize = 0;
UNDI32Device->NIIProtocol_31.ImageAddr = 0;
- UNDI32Device->NIIProtocol_31.Ipv6Supported = FALSE;
+ UNDI32Device->NIIProtocol_31.Ipv6Supported = TRUE;
UNDI32Device->NIIProtocol_31.StringId[0] = 'U';
UNDI32Device->NIIProtocol_31.StringId[1] = 'N';
@@ -444,6 +444,10 @@ UndiDriverStart ( UNDI32Device->DeviceHandle = NULL;
+ UNDI32Device->Aip.GetInformation = UndiAipGetInfo;
+ UNDI32Device->Aip.SetInformation = UndiAipSetInfo;
+ UNDI32Device->Aip.GetSupportedTypes = UndiAipGetSupportedTypes;
+
//
// install both the 3.0 and 3.1 NII protocols.
//
@@ -453,6 +457,8 @@ UndiDriverStart ( &UNDI32Device->NIIProtocol_31,
&gEfiDevicePathProtocolGuid,
UNDI32Device->Undi32DevPath,
+ &gEfiAdapterInformationProtocolGuid,
+ &UNDI32Device->Aip,
NULL
);
@@ -497,6 +503,8 @@ UndiErrorAllocDataPointer: &UNDI32Device->NIIProtocol_31,
&gEfiDevicePathProtocolGuid,
UNDI32Device->Undi32DevPath,
+ &gEfiAdapterInformationProtocolGuid,
+ &UNDI32Device->Aip,
NULL
);
|