• Takashi Iwai's avatar
    ALSA: ump: Support UMP Endpoint and Function Block parsing · 37e0e141
    Takashi Iwai authored
    This patch adds the basic support for UMP Endpoint and UMP Function
    Block parsing, which are extended in the new UMP v1.1 spec.
    The patch provides a new helper function to perform the query of the
    UMP Endpoint information and builds up the UMP blocks based on UMP
    Function Block information.  For the communication over the UMP
    Endpoint, it opens the rawmidi device once internally, inquiries the
    UMP Endpoint and Function Block info by sending new UMP Stream
    messages, and waits for the response for each query.
    
    The new UMP spec allows to update the FB info and change its
    associated groups or its activeness on the fly, too.  For catching it,
    the UMP core keeps watching the incoming UMP messages, and
    snd_ump_receive() handles the incoming UMP Stream messages to refresh
    the FB info.
    
    Link: https://lore.kernel.org/r/20230612081054.17200-3-tiwai@suse.deSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    37e0e141
ump.h 7.27 KB