• Takashi Iwai's avatar
    ALSA: usb-audio: Accept multiple protocols in GTBs · b2865423
    Takashi Iwai authored
    It's valid to give different protocols via multiple GTBs; e.g. a MIDI
    1.0 port is embedded in a MIDI 2.0 device that talks with MIDI 2.0
    protocol.  However, the current driver implementation assumes only a
    single protocol over the whole Endpoint, and it can't handle such a
    scenario.
    
    This patch changes the driver's behavior to parse GTBs to accept
    multiple protocols.  Instead of switching to the last given protocol,
    it adds the protocol capability bits now.  Meanwhile, the default
    protocol is chosen by the first given protocol in GTBs.
    
    Practically seen, this should be a minor issue, as new devices should
    specify the protocols properly via UMP Endpoint Info messages, so this
    is rather just covering a corner case.
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    Link: https://patch.msgid.link/20240807092303.1935-3-tiwai@suse.de
    b2865423
midi2.c 32.4 KB