On Mon, Sep 21, 2020 at 01:49:14PM +0200, Oliver Neukum wrote: > Am Montag, den 21.09.2020, 13:36 +0200 schrieb Johan Hovold: > > On Mon, Sep 21, 2020 at 12:29:16PM +0200, Oliver Neukum wrote: > > Hi, > > > I meant that instead of falling back to "combined-interface" probing we > > could assume that all interfaces with three endpoints are "combined" and > > simply ignore the union and call managementy. descriptors and all the ways > > that devices may have gotten those wrong. > > I am afraid we would break the spec. I cannot recall a prohibition on > having more endpoints than necessary. Heuristics and ignoring invalid > descriptors is one things. Ignoring valid descriptors is something > else. That depends on how you read the spec (see "3.3.1 Communication Class Interface"). But sure, it's probably be better to err on the safe-side. > > I was thinking more of the individual entries in the device-id table > > whose control interfaces may not even be of the Communication class. But > > hopefully that was verified when adding them. > > Now you are confusing me. In case of a quirky device, why change > the current logic? Just because they have a quirk defined, doesn't mean they don't rely on the generic probe algorithm (e.g. a USB_DEVICE entry which matches all interface classes and only specifies SEND_ZERO_PACKET). Johan