18#define USB_SUBCLASS_CDC_ECM 0x06
21#define ECM_SET_ETHERNET_PACKET_FILTER \
22 ( USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_INTERFACE | \
23 USB_REQUEST_TYPE ( 0x43 ) )
73#define ECM_INTR_MAX_FILL 2
79#define ECM_IN_MAX_FILL 8
85#define ECM_IN_MTU ( ETH_FRAME_LEN + 4 )
USB Communications Device Class (CDC)
ecm_ethernet_packet_filter
Ethernet packet types.
@ ECM_PACKET_TYPE_ALL_MULTICAST
All multicast packets.
@ ECM_PACKET_TYPE_PROMISCUOUS
Promiscuous mode.
@ ECM_PACKET_TYPE_MULTICAST
Specified multicast packets.
@ ECM_PACKET_TYPE_BROADCAST
Broadcast packets.
@ ECM_PACKET_TYPE_DIRECTED
Unicast packets.
int ecm_fetch_mac(struct usb_function *func, struct ecm_ethernet_descriptor *desc, struct net_device *netdev)
Get hardware MAC address.
struct ecm_ethernet_descriptor * ecm_ethernet_descriptor(struct usb_configuration_descriptor *config, struct usb_interface_descriptor *interface)
Locate Ethernet functional descriptor.
struct ena_llq_option desc
Descriptor counts.
static struct net_device * netdev
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
Universal Serial Bus (USB)
A CDC-ECM network device.
struct usb_bus * bus
USB bus.
struct usb_device * usb
USB device.
struct usbnet_device usbnet
USB network device.
struct net_device * netdev
Network device.
An Ethernet Functional Descriptor.
uint8_t wol
Number of wake-on-LAN filters.
uint16_t mtu
Maximum segment size.
uint8_t mac
MAC address string.
struct usb_descriptor_header header
Descriptor header.
uint32_t statistics
Ethernet statistics bitmap.
uint8_t subtype
Descriptor subtype.
uint16_t mcast
Multicast filter configuration.
A USB configuration descriptor.
A USB interface descriptor.