TianoCore EDK2 master
|
Go to the source code of this file.
Data Structures | |
struct | USB_HEADER_FUN_DESCRIPTOR |
struct | USB_UNION_FUN_DESCRIPTOR |
struct | USB_ETHERNET_FUN_DESCRIPTOR |
struct | USB_CONNECT_SPEED_CHANGE |
struct | NIC_DATA |
struct | EDKII_USB_ETHERNET_UNDI |
struct | _EDKII_USB_ETHERNET_PROTOCOL |
Variables | |
EFI_GUID | gEdkIIUsbEthProtocolGuid |
Header file contains code for USB Ethernet Protocol definitions
Copyright (c) 2023, American Megatrends International LLC. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file UsbEthernetProtocol.h.
#define EDKII_USB_ETHERNET_PROTOCOL_GUID {0x8d8969cc, 0xfeb0, 0x4303, {0xb2, 0x1a, 0x1f, 0x11, 0x6f, 0x38, 0x56, 0x43}} |
Definition at line 12 of file UsbEthernetProtocol.h.
#define ETHERNET_FUN_DESCRIPTOR 0x0F |
Definition at line 34 of file UsbEthernetProtocol.h.
#define GET_ETH_POWER_MANAGEMENT_PATTERN_FILTER_REQ 0x42 |
Definition at line 89 of file UsbEthernetProtocol.h.
#define GET_ETH_STATISTIC_REQ 0x44 |
Definition at line 91 of file UsbEthernetProtocol.h.
#define HEADER_FUN_DESCRIPTOR 0x00 |
Definition at line 32 of file UsbEthernetProtocol.h.
#define MAC_FILTERS_MASK 0x7FFF |
Definition at line 45 of file UsbEthernetProtocol.h.
#define MAX_LAN_INTERFACE 0x10 |
Definition at line 36 of file UsbEthernetProtocol.h.
#define NETWORK_CONNECTED 0x01 |
Definition at line 42 of file UsbEthernetProtocol.h.
#define NETWORK_DISCONNECT 0x00 |
Definition at line 43 of file UsbEthernetProtocol.h.
Definition at line 172 of file UsbEthernetProtocol.h.
#define NIC_DATA_SIGNATURE SIGNATURE_32('n', 'i', 'c', 'd') |
Definition at line 171 of file UsbEthernetProtocol.h.
#define SET_ETH_MULTICAST_FILTERS_REQ 0x40 |
Definition at line 87 of file UsbEthernetProtocol.h.
#define SET_ETH_PACKET_FILTER_REQ 0x43 |
Definition at line 90 of file UsbEthernetProtocol.h.
#define SET_ETH_POWER_MANAGEMENT_PATTERN_FILTER_REQ 0x41 |
Definition at line 88 of file UsbEthernetProtocol.h.
#define UNION_FUN_DESCRIPTOR 0x06 |
Definition at line 33 of file UsbEthernetProtocol.h.
#define USB_CDC_ACM_SUBCLASS 0x02 |
Definition at line 18 of file UsbEthernetProtocol.h.
#define USB_CDC_CLASS 0x02 |
Definition at line 17 of file UsbEthernetProtocol.h.
#define USB_CDC_DATA_CLASS 0x0A |
Definition at line 21 of file UsbEthernetProtocol.h.
#define USB_CDC_DATA_SUBCLASS 0x00 |
Definition at line 22 of file UsbEthernetProtocol.h.
#define USB_CDC_ECM_SUBCLASS 0x06 |
Definition at line 19 of file UsbEthernetProtocol.h.
#define USB_CDC_NCM_SUBCLASS 0x0D |
Definition at line 20 of file UsbEthernetProtocol.h.
#define USB_CDC_NETWORK_CONNECTION 0x00 |
Definition at line 39 of file UsbEthernetProtocol.h.
#define USB_ETH_BROADCAST_BYTES_RCV 0x10 |
Definition at line 123 of file UsbEthernetProtocol.h.
#define USB_ETH_BROADCAST_BYTES_XMIT 0x0A |
Definition at line 117 of file UsbEthernetProtocol.h.
#define USB_ETH_BROADCAST_FRAMES_RCV 0x11 |
Definition at line 124 of file UsbEthernetProtocol.h.
#define USB_ETH_BROADCAST_FRAMES_XMIT 0x0B |
Definition at line 118 of file UsbEthernetProtocol.h.
#define USB_ETH_DIRECTED_BYTES_RCV 0x0C |
Definition at line 119 of file UsbEthernetProtocol.h.
#define USB_ETH_DIRECTED_BYTES_XMIT 0x06 |
Definition at line 113 of file UsbEthernetProtocol.h.
#define USB_ETH_DIRECTED_FRAMES_RCV 0x0D |
Definition at line 120 of file UsbEthernetProtocol.h.
#define USB_ETH_DIRECTED_FRAMES_XMIT 0x07 |
Definition at line 114 of file UsbEthernetProtocol.h.
#define USB_ETH_MULTICAST_BYTES_RCV 0x0E |
Definition at line 121 of file UsbEthernetProtocol.h.
#define USB_ETH_MULTICAST_BYTES_XMIT 0x08 |
Definition at line 115 of file UsbEthernetProtocol.h.
#define USB_ETH_MULTICAST_FRAMES_RCV 0x0F |
Definition at line 122 of file UsbEthernetProtocol.h.
#define USB_ETH_MULTICAST_FRAMES_XMIT 0x09 |
Definition at line 116 of file UsbEthernetProtocol.h.
#define USB_ETH_PACKET_FILTER_LENGTH 0 |
Definition at line 95 of file UsbEthernetProtocol.h.
#define USB_ETH_PACKET_TYPE_ALL_MULTICAST BIT1 |
Definition at line 101 of file UsbEthernetProtocol.h.
#define USB_ETH_PACKET_TYPE_BROADCAST BIT3 |
Definition at line 103 of file UsbEthernetProtocol.h.
#define USB_ETH_PACKET_TYPE_DIRECTED BIT2 |
Definition at line 102 of file UsbEthernetProtocol.h.
#define USB_ETH_PACKET_TYPE_MULTICAST BIT4 |
Definition at line 104 of file UsbEthernetProtocol.h.
#define USB_ETH_PACKET_TYPE_PROMISCUOUS BIT0 |
Definition at line 100 of file UsbEthernetProtocol.h.
#define USB_ETH_POWER_FILTER_LENGTH 2 |
Definition at line 94 of file UsbEthernetProtocol.h.
#define USB_ETH_RCV_CRC_ERROR 0x12 |
Definition at line 125 of file UsbEthernetProtocol.h.
#define USB_ETH_RCV_ERROR 0x04 |
Definition at line 111 of file UsbEthernetProtocol.h.
#define USB_ETH_RCV_ERROR_ALIGNMENT 0x14 |
Definition at line 127 of file UsbEthernetProtocol.h.
#define USB_ETH_RCV_NO_BUFFER 0x05 |
Definition at line 112 of file UsbEthernetProtocol.h.
#define USB_ETH_RCV_OK 0x02 |
Definition at line 109 of file UsbEthernetProtocol.h.
#define USB_ETH_RCV_OVERRUN 0x19 |
Definition at line 132 of file UsbEthernetProtocol.h.
#define USB_ETH_STATISTIC 4 |
Definition at line 96 of file UsbEthernetProtocol.h.
#define USB_ETH_TRANSMIT_QUEUE_LENGTH 0x13 |
Definition at line 126 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_DEFERRED 0x17 |
Definition at line 130 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_ERROR 0x03 |
Definition at line 110 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_HEARTBEAT_FAILURE 0x1B |
Definition at line 134 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_LATE_COLLISIONS 0x1D |
Definition at line 136 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_MAX_COLLISIONS 0x18 |
Definition at line 131 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_MORE_COLLISIONS 0x16 |
Definition at line 129 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_OK 0x01 |
Definition at line 108 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_ONE_COLLISION 0x15 |
Definition at line 128 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_TIMES_CRS_LOST 0x1C |
Definition at line 135 of file UsbEthernetProtocol.h.
#define USB_ETH_XMIT_UNDERRUN 0x1A |
Definition at line 133 of file UsbEthernetProtocol.h.
#define USB_ETHERNET_GET_REQ_TYPE 0xA1 |
Definition at line 82 of file UsbEthernetProtocol.h.
#define USB_ETHERNET_SET_REQ_TYPE 0x21 |
Definition at line 83 of file UsbEthernetProtocol.h.
#define USB_MISC_CLASS 0xEF |
Definition at line 27 of file UsbEthernetProtocol.h.
#define USB_NCM_NTB_PROTOCOL 0x01 |
Definition at line 24 of file UsbEthernetProtocol.h.
#define USB_NO_CLASS_PROTOCOL 0x00 |
Definition at line 23 of file UsbEthernetProtocol.h.
#define USB_RNDIS_ETHERNET_PROTOCOL 0x01 |
Definition at line 29 of file UsbEthernetProtocol.h.
#define USB_RNDIS_SUBCLASS 0x04 |
Definition at line 28 of file UsbEthernetProtocol.h.
#define USB_VENDOR_PROTOCOL 0xFF |
Definition at line 25 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETH_MAX_BULK_SIZE) (IN EDKII_USB_ETHERNET_PROTOCOL *This, OUT UINTN *BulkSize) |
Retrieves the USB Ethernet Bulk transfer data size.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[out] | BulkSize | A pointer to the Bulk transfer data size. |
EFI_SUCCESS | The USB Header Functional descriptor was retrieved successfully. |
EFI_INVALID_PARAMETER | UsbHeaderFunDescriptor is NULL. |
EFI_NOT_FOUND | The USB Header Functional descriptor was not found. |
Definition at line 670 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_FUNCTIONAL_DESCRIPTOR) (IN EDKII_USB_ETHERNET_PROTOCOL *This, OUT USB_ETHERNET_FUN_DESCRIPTOR *UsbEthFunDescriptor) |
Retrieves the USB Ethernet functional Descriptor.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[out] | UsbEthFunDescriptor | A pointer to the caller allocated USB Ethernet Functional Descriptor. |
EFI_SUCCESS | The USB Ethernet Functional descriptor was retrieved successfully. |
EFI_INVALID_PARAMETER | UsbEthFunDescriptor is NULL. |
EFI_NOT_FOUND | The USB Ethernet Functional descriptor was not found. |
Definition at line 721 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_GET_ETH_POWER_MANAGE_PATTERN_FILTER) (IN EDKII_USB_ETHERNET_PROTOCOL *This, IN UINT16 Value, OUT BOOLEAN *PatternActive) |
This request retrieves the status of the specified Ethernet power management pattern filter from the device.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in] | Value | The filter number. |
[out] | PatternActive | A pointer to the pattern active boolean. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 788 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_GET_ETH_STATISTIC) (IN EDKII_USB_ETHERNET_PROTOCOL *This, IN UINT16 FeatureSelector, OUT VOID *Statistic) |
This request is used to retrieve a statistic based on the feature selector.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in] | FeatureSelector | Value of the feature selector. |
[out] | Statistic | A pointer to the 32 bit unsigned integer. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 828 of file UsbEthernetProtocol.h.
This command resets the network adapter and initializes UNDI using the parameters supplied in the CPB.
[in] | Cdb | A pointer to the command descriptor block. |
[in,out] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 541 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_INTERRUPT) (IN EDKII_USB_ETHERNET_PROTOCOL *This, IN BOOLEAN IsNewTransfer, IN UINTN PollingInterval, IN EFI_USB_DEVICE_REQUEST *Request) |
This function is used to manage a USB device with an interrupt transfer pipe.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in] | IsNewTransfer | If TRUE, a new transfer will be submitted to USB controller. If FALSE, the interrupt transfer is deleted from the device's interrupt transfer queue. |
[in] | PollingInterval | Indicates the periodic rate, in milliseconds, that the transfer is to be executed.This parameter is required when IsNewTransfer is TRUE. The value must be between 1 to 255, otherwise EFI_INVALID_PARAMETER is returned. The units are in milliseconds. |
[in] | Request | A pointer to the EFI_USB_DEVICE_REQUEST data. |
EFI_SUCCESS | The asynchronous USB transfer request transfer has been successfully executed. |
EFI_DEVICE_ERROR | The asynchronous USB transfer request failed. |
Definition at line 634 of file UsbEthernetProtocol.h.
typedef struct _EDKII_USB_ETHERNET_PROTOCOL EDKII_USB_ETHERNET_PROTOCOL |
Definition at line 15 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_RECEIVE) (IN PXE_CDB *Cdb, IN EDKII_USB_ETHERNET_PROTOCOL *This, IN OUT VOID *Packet, IN OUT UINTN *PacketLength) |
This function is used to manage a USB device with the bulk transfer pipe. The endpoint is Bulk in.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in,out] | Packet | A pointer to the buffer of data that will be transmitted to USB device or received from USB device. |
[in,out] | PacketLength | A pointer to the PacketLength. |
EFI_SUCCESS | The bulk transfer has been successfully executed. |
EFI_DEVICE_ERROR | The transfer failed. The transfer status is returned in status. |
EFI_INVALID_PARAMETER | One or more parameters are invalid. |
EFI_OUT_OF_RESOURCES | The request could not be submitted due to a lack of resources. |
EFI_TIMEOUT | The control transfer fails due to timeout. |
Definition at line 584 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_SET_ETH_MULTICAST_FILTERS) (IN EDKII_USB_ETHERNET_PROTOCOL *This, IN UINT16 Value, IN VOID *McastAddr) |
This request sets the Ethernet device multicast filters as specified in the sequential list of 48 bit Ethernet multicast addresses.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in] | Value | Number of filters. |
[in] | McastAddr | A pointer to the value of the multicast addresses. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 742 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_SET_ETH_PACKET_FILTER) (IN EDKII_USB_ETHERNET_PROTOCOL *This, IN UINT16 Value) |
This request is used to configure device Ethernet packet filter settings.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in] | Value | Packet Filter Bitmap. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 808 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_SET_ETH_POWER_MANAGE_PATTERN_FILTER) (IN EDKII_USB_ETHERNET_PROTOCOL *This, IN UINT16 Value, IN UINT16 Length, IN VOID *PatternFilter) |
This request sets up the specified Ethernet power management pattern filter as described in the data structure.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in] | Value | Number of filters. |
[in] | Length | Size of the power management pattern filter data. |
[in] | PatternFilter | A pointer to the power management pattern filter structure. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 765 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_STATISTICS) (IN NIC_DATA *Nic, IN UINT64 DbAddr, IN UINT16 DbSize) |
This command is used to read and clear the NIC traffic statistics.
[in] | Nic | A pointer to the Network interface controller data. |
[in] | DbAddr | Data Block Address. |
[in] | DbSize | Data Block Size. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 561 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_TRANSMIT) (IN PXE_CDB *Cdb, IN EDKII_USB_ETHERNET_PROTOCOL *This, IN OUT VOID *Packet, IN OUT UINTN *PacketLength) |
This function is used to manage a USB device with the bulk transfer pipe. The endpoint is Bulk out.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[in,out] | Packet | A pointer to the buffer of data that will be transmitted to USB device or received from USB device. |
[in,out] | PacketLength | A pointer to the PacketLength. |
EFI_SUCCESS | The bulk transfer has been successfully executed. |
EFI_DEVICE_ERROR | The transfer failed. The transfer status is returned in status. |
EFI_INVALID_PARAMETER | One or more parameters are invalid. |
EFI_OUT_OF_RESOURCES | The request could not be submitted due to a lack of resources. |
EFI_TIMEOUT | The control transfer fails due to timeout. |
Definition at line 608 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_FILL_HEADER) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to fill the media header(s) in transmit packet(s).
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 482 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_GET_CONFIG_INFO) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to retrieve configuration information about the NIC being controlled by the UNDI.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 265 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_GET_INIT_INFO) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to retrieve initialization information that is needed by drivers and applications to initialized UNDI.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 245 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_GET_STATE) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to determine the operational state of the UNDI.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 187 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_GET_STATUS) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command returns the current interrupt status and/or the transmitted buffer addresses and the current media status.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 463 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_INITIALIZE) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command resets the network adapter and initializes UNDI using the parameters supplied in the CPB.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 285 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_INTERRUPT_ENABLE) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
The Interrupt Enables command can be used to read and/or change the current external interrupt enable settings.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 345 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_MCAST_IPTOMAC) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
Translate a multicast IPv4 or IPv6 address to a multicast MAC address.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 423 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_NV_DATA) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to read and write (if supported by NIC H/W) nonvolatile storage on the NIC.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 443 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_RECEIVE) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
When the network adapter has received a frame, this command is used to copy the frame into driver/application storage.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 521 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_RECEIVE_FILTER) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to read and change receive filters and, if supported, read and change the multicast MAC address filter list.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 365 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_RESET) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command resets the network adapter and reinitializes the UNDI with the same parameters provided in the Initialize command.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 305 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_SHUTDOWN) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
The Shutdown command resets the network adapter and leaves it in a safe state for another driver to initialize.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 325 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_START) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to change the UNDI operational state from stopped to started.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 206 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_STATION_ADDRESS) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to get current station and broadcast MAC addresses and, if supported, to change the current station MAC address.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 385 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_STATISTICS) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to read and clear the NIC traffic statistics.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 404 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_STOP) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
This command is used to change the UNDI operational state from started to stopped.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 225 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_ETHERNET_UNDI_TRANSMIT) (IN PXE_CDB *Cdb, IN NIC_DATA *Nic) |
The Transmit command is used to place a packet into the transmit queue.
[in] | Cdb | A pointer to the command descriptor block. |
[in] | Nic | A pointer to the Network interface controller data. |
EFI_SUCCESS | The request executed successfully. |
EFI_TIMEOUT | A timeout occurred executing the request. |
EFI_DEVICE_ERROR | The request failed due to a device error. |
EFI_INVALID_PARAMETER | One of the parameters has an invalid value. |
EFI_UNSUPPORTED | Not supported. |
Definition at line 501 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_GET_ETH_MAC_ADDRESS) (IN EDKII_USB_ETHERNET_PROTOCOL *This, OUT EFI_MAC_ADDRESS *MacAddress) |
Retrieves the USB Ethernet Mac Address.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[out] | MacAddress | A pointer to the caller allocated USB Ethernet Mac Address. |
EFI_SUCCESS | The USB Header Functional descriptor was retrieved successfully. |
EFI_INVALID_PARAMETER | UsbHeaderFunDescriptor is NULL. |
EFI_NOT_FOUND | The USB Header Functional descriptor was not found. |
Definition at line 653 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_HEADER_FUNCTIONAL_DESCRIPTOR) (IN EDKII_USB_ETHERNET_PROTOCOL *This, OUT USB_HEADER_FUN_DESCRIPTOR *UsbHeaderFunDescriptor) |
Retrieves the USB Header functional Descriptor.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[out] | UsbHeaderFunDescriptor | A pointer to the caller allocated USB Header Functional Descriptor. |
EFI_SUCCESS | The USB Header Functional descriptor was retrieved successfully. |
EFI_INVALID_PARAMETER | UsbHeaderFunDescriptor is NULL. |
EFI_NOT_FOUND | The USB Header Functional descriptor was not found. |
Definition at line 687 of file UsbEthernetProtocol.h.
typedef EFI_STATUS(EFIAPI * EDKII_USB_UNION_FUNCTIONAL_DESCRIPTOR) (IN EDKII_USB_ETHERNET_PROTOCOL *This, OUT USB_UNION_FUN_DESCRIPTOR *UsbUnionFunDescriptor) |
Retrieves the USB Union functional Descriptor.
[in] | This | A pointer to the EDKII_USB_ETHERNET_PROTOCOL instance. |
[out] | UsbUnionFunDescriptor | A pointer to the caller allocated USB Union Functional Descriptor. |
EFI_SUCCESS | The USB Union Functional descriptor was retrieved successfully. |
EFI_INVALID_PARAMETER | UsbUnionFunDescriptor is NULL. |
EFI_NOT_FOUND | The USB Union Functional descriptor was not found. |
Definition at line 704 of file UsbEthernetProtocol.h.