STRUCT SOF_IPC4_CONTROL_DATA(9)
β¨ struct sof_ipc4_control_data - IPC data for kcontrol IO β¨
Okay bestie, so this one's from the Kernel API Manual (that's the manual name, iykyk π ) and it's literally the struct that carries the IPC data for kcontrol IO. Very main character energy for the audio stack. πΈ
π SYNOPSIS π
struct sof_ipc4_control_data {
struct sof_ipc4_msg msg;
int index;
union {
struct sof_ipc4_ctrl_value_chan chanv[];
struct sof_abi_hdr data[];
};
};
π Members π
msgβ the message structure for kcontrol IO. That's the whole point of this struct, tbh. πindexβ the pipeline ID. Not a list index, a pipeline index, don't get it twisted. π«Ά{unnamed_union}β the anonymous union. No name, all vibes. β¨chanvβ channel ID and value array, and it's used by volume type controls. Slay. πdataβ the data for binary kcontrols. Binary kcontrols said "I'll have my own array, thanks." π
π SEE ALSO π
Kernel file ./sound/soc/sof/ipc4-topology.h is the home base, and it's giving a whole friend group of structs β all of these are .so-style manpage refs with the (9) section:
struct sof_ipc4_pipeline(9)struct ipc4_pipeline_set_state_data(9)struct sof_ipc4_pin_format(9)struct sof_ipc4_available_audio_format(9)struct sof_copier_gateway_cfg(9)struct sof_ipc4_copier_data(9)struct sof_ipc4_gtw_attributes(9)struct sof_ipc4_dma_device_stream_ch_map(9)struct sof_ipc4_dma_stream_ch_map(9)struct sof_ipc4_dma_config(9)struct sof_ipc4_dma_config_tlv(9)struct sof_ipc4_copier(9)struct sof_ipc4_ctrl_value_chan(9)struct sof_ipc4_control_msg_payload(9)struct sof_ipc4_gain_params(9)struct sof_ipc4_gain_data(9)struct sof_ipc4_gain(9)struct sof_ipc4_mixer(9)struct sof_ipc4_src(9)struct sof_ipc4_asrc(9)struct sof_ipc4_base_module_cfg_ext(9)struct sof_ipc4_process(9)
Like, that's the whole IPC4 topology cinematic universe. Go read them all, bestie. π¦
Also lowkey the header shows up truncated as struct sof_i...control_data(9) because the title got cut off β that's just how it renders, not a typo in your code. π
Okay that's the page! It's from ./sound/soc/sof and the date on it is October 2026, version is literally the struct sof_i...control_data(9) header line. Byeee, go forth and control your kcontrols. π π π
π¦ 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