STRUCT SOF_IPC4_CTRL_VALUE_CHAN(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct sof_ipc4_ctrl_value_chan(9) β€” from the Kernel API Manual, bestie ✨

Okay so picture this: you're deep in the kernel docs, right, and you stumble on struct sof_ipc4_ctrl_value_chan β€” and it's literally just a channel and a value, living their best little lives together. It's giving "generic channel mapped value data" and honestly? Iconic. Lowkey the whole point of this page is that one struct, and I'm gonna walk you through it like we're on FaceTime 🫢


🌸 NAME 🌸

struct sof_ipc4_ctrl_value_chan β€” generic channel mapped value data πŸ’–

Like, "generic" as in no cap, this is the plain-Jane container for a channel mapped to a value. Nothing extra, nothing hiding. Main character energy of the "small but essential" variety πŸ‘‘


✨ SYNOPSIS ✨

Here's the whole thing, character for character, don't touch it:

struct sof_ipc4_ctrl_value_chan {
    u32 channel;
    u32 value;
 };

Two members. Two u32s. That's the entire struct. And the way that it's so simple? Obsessed 😭


πŸŽ€ Members πŸŽ€

  • channel β€” the Channel ID, bestie. It's the "which channel are we even talking about" field. πŸ¦‹
  • value β€” the Value associated with that channel. It's the whole payload of the pairing, the part that actually does something. πŸ”₯

So like... a channel, and its value. A duo. A ship. Periodt. πŸ’…


πŸ’œ SEE ALSO πŸ’œ

Okay so the source of all this is the kernel file ./sound/soc/sof/ipc4-topology.h β€” go drink from the firehose, iykyk. And here's the full friend group, every single one, no skips (not me alphabetizing nothing, this is the order, respect it πŸ™ˆ):

  • 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_control_data(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)

Go read them all, bestie, they're all in the same friend group. 🌈


fr fr, that's the whole page. No warnings, no exit statuses, no flags β€” just one small struct being its most authentic self. πŸ’€

🌈 Sign-off time, cuties: this little gem lives in ./sound/soc/sof, it's from October 2026, and the header on this page is literally struct sof_...l_value_chan(9) β€” yes, the truncation is canon, don't come for me, I didn't write it πŸ˜­πŸ’– slay and stay mapped, mwah πŸŽ€

πŸ“¦ where this page comes from