1. Enabled IP4 layer auto configuration in case cable swap is detected.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11582 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Header file for IP4Config driver.
|
||||
|
||||
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at<BR>
|
||||
@@ -128,6 +128,16 @@ typedef struct _IP4_CONFIG_INSTANCE {
|
||||
EFI_DHCP4_PROTOCOL *Dhcp4;
|
||||
EFI_HANDLE Dhcp4Handle;
|
||||
EFI_EVENT Dhcp4Event;
|
||||
|
||||
//
|
||||
// A dedicated timer is used to poll underlying media status
|
||||
//
|
||||
EFI_EVENT Timer;
|
||||
|
||||
//
|
||||
// Underlying media present status.
|
||||
//
|
||||
BOOLEAN MediaPresent;
|
||||
} IP4_CONFIG_INSTANCE;
|
||||
|
||||
#define IP4_CONFIG_INSTANCE_FROM_IP4CONFIG(this) \
|
||||
@@ -496,4 +506,23 @@ EfiIp4ConfigGetData (
|
||||
OUT EFI_IP4_IPCONFIG_DATA *ConfigData OPTIONAL
|
||||
);
|
||||
|
||||
/**
|
||||
A dedicated timer is used to poll underlying media status. In case of
|
||||
cable swap, a new round auto configuration will be initiated. The timer
|
||||
will signal the IP4 to run the auto configuration again. IP4 driver will free
|
||||
old IP address related resource, such as route table and Interface, then
|
||||
initiate a DHCP round by IP4Config->Start to acquire new IP, eventually
|
||||
create route table for new IP address.
|
||||
|
||||
@param[in] Event The IP4 service instance's heart beat timer.
|
||||
@param[in] Context The IP4 service instance.
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
MediaChangeDetect (
|
||||
IN EFI_EVENT Event,
|
||||
IN VOID *Context
|
||||
);
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user