mirror of https://github.com/ipxe/ipxe.git
[efi] Create VLAN autoboot device automatically
When chainloading iPXE from an EFI VLAN device, configure the corresponding iPXE VLAN device to be created automatically. Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/852/head
parent
f07630c74f
commit
2dcef4b7a1
|
@ -25,6 +25,8 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
|||
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
#include <ipxe/if_ether.h>
|
||||
#include <ipxe/vlan.h>
|
||||
#include <ipxe/efi/efi.h>
|
||||
#include <ipxe/efi/efi_path.h>
|
||||
#include <ipxe/efi/efi_autoboot.h>
|
||||
|
@ -81,6 +83,13 @@ int efi_set_autoboot_ll_addr ( EFI_HANDLE device,
|
|||
efi_handle_name ( device ), vlan );
|
||||
}
|
||||
|
||||
/* Configure automatic VLAN device, if applicable */
|
||||
if ( vlan && ( mode->HwAddressSize == ETH_ALEN ) ) {
|
||||
vlan_auto ( &mode->CurrentAddress, vlan );
|
||||
DBGC ( device, "EFI %s configured automatic VLAN %d\n",
|
||||
efi_handle_name ( device ), vlan );
|
||||
}
|
||||
|
||||
/* Close protocol */
|
||||
bs->CloseProtocol ( device, &efi_simple_network_protocol_guid,
|
||||
efi_image_handle, NULL );
|
||||
|
|
Loading…
Reference in New Issue