MdePkg[all]  1.08
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
VlanConfig.h File Reference

Data Structures

struct  EFI_VLAN_FIND_DATA
 
struct  _EFI_VLAN_CONFIG_PROTOCOL
 

Macros

#define EFI_VLAN_CONFIG_PROTOCOL_GUID
 

Typedefs

typedef struct
_EFI_VLAN_CONFIG_PROTOCOL 
EFI_VLAN_CONFIG_PROTOCOL
 
typedef EFI_STATUS(EFIAPIEFI_VLAN_CONFIG_SET )(IN EFI_VLAN_CONFIG_PROTOCOL *This, IN UINT16 VlanId, IN UINT8 Priority)
 
typedef EFI_STATUS(EFIAPIEFI_VLAN_CONFIG_FIND )(IN EFI_VLAN_CONFIG_PROTOCOL *This, IN UINT16 *VlanId, OUT UINT16 *NumberOfVlan, OUT EFI_VLAN_FIND_DATA **Entries)
 
typedef EFI_STATUS(EFIAPIEFI_VLAN_CONFIG_REMOVE )(IN EFI_VLAN_CONFIG_PROTOCOL *This, IN UINT16 VlanId)
 

Variables

EFI_GUID gEfiVlanConfigProtocolGuid
 

Detailed Description

EFI VLAN Config protocol is to provide manageability interface for VLAN configuration.

Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Revision Reference:
This Protocol is introduced in UEFI Specification 2.2

Macro Definition Documentation

#define EFI_VLAN_CONFIG_PROTOCOL_GUID
Value:
{ \
0x9e23d768, 0xd2f3, 0x4366, {0x9f, 0xc3, 0x3a, 0x7a, 0xba, 0x86, 0x43, 0x74 } \
}

Typedef Documentation

typedef EFI_STATUS(EFIAPI * EFI_VLAN_CONFIG_FIND)(IN EFI_VLAN_CONFIG_PROTOCOL *This, IN UINT16 *VlanId, OUT UINT16 *NumberOfVlan, OUT EFI_VLAN_FIND_DATA **Entries)

Find configuration information for specified VLAN or all configured VLANs.

The Find() function is used to find the configuration information for matching VLAN and allocate a buffer into which those entries are copied.

Parameters
[in]ThisPoints to the EFI_VLAN_CONFIG_PROTOCOL.
[in]VlanIdPointer to VLAN identifier. Set to NULL to find all configured VLANs.
[out]NumberOfVlanThe number of VLANs which is found by the specified criteria.
[out]EntriesThe buffer which receive the VLAN configuration.
Return values
EFI_SUCCESSThe VLAN is successfully found.
EFI_INVALID_PARAMETEROne or more of following conditions is TRUE:
  • This is NULL.
  • Specified VlanId is invalid.
EFI_NOT_FOUNDNo matching VLAN is found.
typedef EFI_STATUS(EFIAPI * EFI_VLAN_CONFIG_REMOVE)(IN EFI_VLAN_CONFIG_PROTOCOL *This, IN UINT16 VlanId)

Remove the configured VLAN device.

The Remove() function is used to remove the specified VLAN device. If the VlanId is out of the scope of (0-4094), EFI_INVALID_PARAMETER is returned. If specified VLAN hasn't been previously configured, EFI_NOT_FOUND is returned.

Parameters
[in]ThisPoints to the EFI_VLAN_CONFIG_PROTOCOL.
[in]VlanIdIdentifier (0-4094) of the VLAN to be removed.
Return values
EFI_SUCCESSThe VLAN is successfully removed.
EFI_INVALID_PARAMETEROne or more of following conditions is TRUE:
  • This is NULL.
  • VlanId is an invalid parameter.
EFI_NOT_FOUNDThe to-be-removed VLAN does not exist.
typedef EFI_STATUS(EFIAPI * EFI_VLAN_CONFIG_SET)(IN EFI_VLAN_CONFIG_PROTOCOL *This, IN UINT16 VlanId, IN UINT8 Priority)

Create a VLAN device or modify the configuration parameter of an already-configured VLAN.

The Set() function is used to create a new VLAN device or change the VLAN configuration parameters. If the VlanId hasn't been configured in the physical Ethernet device, a new VLAN device will be created. If a VLAN with this VlanId is already configured, then related configuration will be updated as the input parameters.

If VlanId is zero, the VLAN device will send and receive untagged frames. Otherwise, the VLAN device will send and receive VLAN-tagged frames containing the VlanId. If VlanId is out of scope of (0-4094), EFI_INVALID_PARAMETER is returned. If Priority is out of the scope of (0-7), then EFI_INVALID_PARAMETER is returned. If there is not enough system memory to perform the registration, then EFI_OUT_OF_RESOURCES is returned.

Parameters
[in]ThisPoints to the EFI_VLAN_CONFIG_PROTOCOL.
[in]VlanIdA unique identifier (1-4094) of the VLAN which is being created or modified, or zero (0).
[in]Priority3 bit priority in VLAN header. Priority 0 is default value. If VlanId is zero (0), Priority is ignored.
Return values
EFI_SUCCESSThe VLAN is successfully configured.
EFI_INVALID_PARAMETEROne or more of following conditions is TRUE:
  • This is NULL.
  • VlanId is an invalid VLAN Identifier.
  • Priority is invalid.
EFI_OUT_OF_RESOURCESThere is not enough system memory to perform the registration.

Variable Documentation

EFI_GUID gEfiVlanConfigProtocolGuid