STRUCT SOF_IPC4_FW_LIBRARY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct sof_ipc4_fw_library(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual ✨ β€” this is the page for struct sof_ipc4_fw_library(9), and it's literally all about IPC4 library information. no cap, that's the whole vibe.


🌸 NAME 🌸

struct sof_ipc4_fw_library β€” IPC4 library information πŸŽ€


✨ SYNOPSIS ✨

struct sof_ipc4_fw_library {
    struct sof_firmware sof_fw;
    const char *name;
    u32 id;
    int num_modules;
    struct sof_ipc4_fw_module *modules;
 };

like, look at her. main character struct. πŸ‘‘


🫢 Members 🫢

okay let's do a little meet-and-greet with the fields, fr fr:

  • sof_fw β€” the SOF Firmware of the library πŸ¦‹ that's her firmware, that's the whole point.
  • id β€” the Library ID. okay so this one matters: 0 is reserved for basefw, so external libraries must have a unique ID number between 1 and (sof_ipc4_fw_data.max_libs_count - 1). like, don't touch 0, that's not yours πŸ’…
  • num_modules β€” the number of FW modules in the library. just counting the modules, bestie πŸ”’
  • modules β€” array of FW modules. the whole squad, lined up 🌈
also name is chillin' in the struct up there ☝️ β€” the original page doesn't give her a lil description, so I'm not gonna make one up. iykyk πŸ™ˆ

πŸ’€ Note πŸ’€

so if sof_ipc4_fw_data.max_libs_count == 1, that implies external libraries are not supported. periodt. if you're sitting at 1, there's no room for externals, that's the whole deal πŸ”₯


🧚 SEE ALSO 🧚

  • Kernel file ./sound/soc/sof/ipc4-priv.h
  • struct sof_ipc4_fw_module(9)
  • struct sof_ipc4_fw_data(9)

and that's the page, bestie! πŸŽ€βœ¨ this one lives in ./sound/soc/sof, and the version/date stamped on it is October 2026 β€” so, like, future vibes only πŸ’œπŸ¦‹ mwah, go read the source, ily 🫢

πŸ“¦ where this page comes from