STRUCT SND_SOC_ACPI_ADR_DEVICE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct snd_soc_acpi_adr_device β€” the descriptor bestie for a device that gets enumerated through _ADR, no cap ✨

So this is from the Kernel API Manual (yes, the kernel has lore too πŸŽ€), and it's basically the little ID card a device carries around when it shows up via ACPI _ADR instead of the usual ways. Slay.


🌸 SYNOPSIS 🌸

struct snd_soc_acpi_adr_device {
    u64 adr;
    u8 num_endpoints;
    const struct snd_soc_acpi_endpoint *endpoints;
    const char *name_prefix;
 };

Look at her. Four members. Iconic. πŸ’…


✨ Members ✨

  • adr β€” a 64 bit ACPI _ADR value. Literally the device's whole address vibe check, in 64 bits of glory πŸ¦‹
  • num_endpoints β€” how many endpoints this device has. The headcount, the roster size, the "how many besties are we talking" number 🫢
  • endpoints β€” an array of endpoints. Pointing at the whole squad of struct snd_soc_acpi_endpoint, one after another πŸ’œ
  • name_prefix β€” a string used for codec controls. It's the little name tag that gets stuck on the codec controls so everyone knows whose they are πŸŽ€

πŸ”₯ SEE ALSO πŸ”₯

  • Kernel file ./include/sound/soc-acpi.h
  • struct snd_soc_acpi_mach_params(9)
  • struct snd_soc_acpi_endpoint(9)
  • struct snd_soc_acpi_link_adr(9)
  • struct snd_soc_acpi_mach(9)
  • struct snd_soc_acpi_codecs(9)

Go read those too, iykyk πŸ‘‘ they're all part of the same friend group fr fr.


⭐ Reminder bestie: this page lives in ./include/sound and it's dated October 2026 β€” so if you're reading it from the future, hiiii 😭

That's the whole page babes, go forth and enumerate your _ADR devices with main character energy πŸŒˆπŸ’–πŸ’…

πŸ“¦ where this page comes from