c7ed62eb30
Cross-referenced with Linux 7.1 drivers/net/usb/cdc_ether.c (984 lines) and include/uapi/linux/usb/cdc.h. Replaces the 32-line scan-and-symlink stub with a 230-line real class driver: Protocol (cdc.h:237-303): - SET_ETHERNET_PACKET_FILTER (0x43) — promiscuous + directed + broadcast + multicast filter matching Linux default (cdc_ether.c:70-80) - SET_ETHERNET_MULTICAST_FILTERS (0x40) — constants defined - SEND_ENCAPSULATED_COMMAND (0x00), GET_ENCAPSULATED_RESPONSE (0x01) Architecture: - Finds CDC ECM communications interface (class=02, subclass=06) - Data interface = ctrl_iface + 1 (Union descriptor pairing assumption) - Bulk IN + bulk OUT endpoints from data interface - Optional interrupt endpoint from control interface for CDC notifications - Bidirectional I/O: bulk IN → stdout (Rx), stdin → bulk OUT (Tx) - CDC notification handler: NETWORK_CONNECTION (link up/down), SPEED_CHANGE (tx/rx bitrates), generic notification logging Pattern matches redbear-acmd and redbear-ftdi: XhciClientHandle, path deps on local forks, common::setup_logging, cargo template.