snd_ump_endpoint_new(9)
β¨ snd_ump_endpoint_new(9) β¨
okay so bestie, this is a page from the Kernel API Manual and it's literally all about making a UMP Endpoint. buckle up, it's giving kernel-core realness π
π NAME π
snd_ump_endpoint_new β create a UMP Endpoint object β¨
π¦ SYNOPSIS π¦
int snd_ump_endpoint_new (struct snd_card *card , char *id , int device
, int output , int input , struct snd_ump_endpoint **ump_ret );
like, that's the whole signature, no cap. six args, go off π
πΈ ARGUMENTS πΈ
cardβ the card instance π«Άidβ the id string for rawmidi, yep, that's the one πdeviceβ the device index for rawmidi, keep track bestie π₯outputβ1for enabling output βinputβ1for enabling input βump_retβ the pointer where the new UMP instance gets stored, main character pointer energy π
π DESCRIPTION π
So this function creates a new UMP Endpoint object. periodt. π
A UMP Endpoint is tied with one rawmidi instance that has one input and/or one output rawmidi stream β and yes, that can be uni- or bi-directional, both are valid, we love flexibility π¦. A UMP Endpoint may also contain one or multiple UMP Blocks, and those Blocks consist of one or multiple UMP Groups. it's giving nested. it's giving hierarchy. iconic honestly πΈ
Now, the important part: use snd_rawmidi_set_ops to set the operators to the new instance. iykyk π
and like β unlikesnd_rawmidi_new, this function sets up theinfo_flagsby itself depending on the givenoutputandinput. so don't come for it about flags, it handles that π
The device has the SNDRV_RAWMIDI_INFO_UMP flag set, and a different device file gets created β "umpCxDx" instead of the standard MIDI 1.x device file "midiCxDx". two different names, two different vibes, don't mix them up bestie π
π RETURN π
Zero if successful, or a negative error code on failure. so basically 0 = slay, negative = not slay π
π§ SEE ALSO π§
- Kernel file
./sound/core/ump.cπ snd_ump_receive_ump_val(9)snd_ump_receive(9)snd_ump_transmit(9)snd_ump_block_new(9)snd_ump_switch_protocol(9)snd_ump_parse_endpoint(9)
go read those too, they're all in the same friend group fr fr π«Ά
aaaand that's the whole page, bestie π this dropped from ./sound/core back in October 2026 β so yeah, source + date, all accounted for, and this manual page is now officially closed. mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms