Bug 297294

Summary: umb: missing mentioned fallback to IAD in case UD is not present
Product: Base System Reporter: Luca Piccirillo <luca.piccirillo>
Component: usbAssignee: freebsd-usb (Nobody) <usb>
Status: New ---    
Severity: Affects Many People CC: mike, wireless
Priority: ---    
Version: 16.0-CURRENT   
Hardware: Any   
OS: Any   

Description Luca Piccirillo 2026-08-05 08:19:00 UTC
The current if_umb.c implementation do only support finding the MBIM interfaces by CDC Union Descriptor (UD). An existing comment in the code tells finding by Interface Association Descriptors (IAD) is also supported as fallback for some legacy devices lacking UD, but the actual code does not implement that fallback, thus making many MBIM devices not usable.

This is the comment:
	/*
	 * Some MBIM hardware does not provide the mandatory CDC Union
	 * Descriptor, so we also look at matching Interface
	 * Association Descriptors to find out the MBIM Data Interface
	 * number.
	 */

I think supproting those legacy MBIM devices is valuable since those includes many 4G/LTE dongles by Sierra Wireless that incidentally stopped working in Direct IP mode (which presents CDC-ECM interfaces) since FreeBSD 14+ cdce driver improvements for link detection.

I currently pushed a patch for review here: https://reviews.freebsd.org/D58641