STRUCT SDCA_ENTITY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

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

okay so bestie, welcome to struct sdca_entity(9) β€” a page from the Kernel API Manual ✨ and honestly? it's giving "one little struct holds an entire SDCA Entity's whole personality." like every single thing you'd ever wanna know about a single Entity lives in here 🫢


🌸 NAME 🌸

struct sdca_entity β€” literally all the info for one SDCA Entity, no cap πŸ’…


✨ SYNOPSIS ✨

struct sdca_entity {
    const char *label;
    int id;
    enum sdca_entity_type type;
    struct sdca_entity *group;
    struct sdca_entity **sources;
    struct sdca_control *controls;
    int num_sources;
    int num_controls;
    union {
      struct sdca_entity_iot iot;
      struct sdca_entity_cs cs;
      struct sdca_entity_pde pde;
      struct sdca_entity_ge ge;
      struct sdca_entity_hide hide;
      struct sdca_entity_xu xu;
    };
 };

like look at it. a whole struct. so organized. we stan a structured struct πŸŽ€


πŸ¦‹ Members πŸ¦‹

okay so member by member, here's the tea β˜•

  • label β€” a string, like "OT 12" β€” yes literally that kind of string, that's the example the page gives, iconic πŸ’«
  • id β€” the identifier used for addressing. that's its whole job. addressing. periodt πŸ‘‘
  • type β€” the type code for the Entity, iykyk
  • group β€” pointer to the Group Entity that controls this one; it's NULL if N/A, so don't go dereferencing it without a vibe check πŸ’€
  • sources β€” a dynamically allocated array pointing to each input Entity connected to this Entity πŸ”—
  • controls β€” a dynamically allocated array of Controls πŸŽ›οΈ
  • num_sources β€” the number of sources for the Entity
  • num_controls β€” the number of Controls for the Entity
  • {unnamed_union} β€” anonymous 🌫️ (yes it's literally just the anonymous union member, no name, mysterious main character energy)

πŸ’œ and inside that anonymous union πŸ’œ

  • iot β€” Input/Output Terminal specific Entity properties 🌈
  • cs β€” Clock Source specific Entity properties ⏰
  • pde β€” Power Domain Entity specific Entity properties ⚑
  • ge β€” Group Entity specific Entity properties πŸ‘―
  • hide β€” HIDE Entity specific Entity properties πŸ™ˆ
  • xu β€” XU Entity specific Entity properties πŸ”₯

πŸ” SEE ALSO πŸ”

bestie. sit down. this list is long and every single one of these is a real reference, so here's the entire squad, no skips, no edits πŸ’–

  • the Kernel file ./include/sound/sdca_function.h
  • enum sdca_function_type(9)
  • struct sdca_init_write(9)
  • SDCA_CTL_TYPE(9)
  • SDCA_CTL_TYPE_S(9)
  • enum sdca_messageoffset_range(9)
  • enum sdca_ump_mode(9)
  • enum sdca_ump_owner(9)
  • enum sdca_it_controls(9)
  • enum sdca_ot_controls(9)
  • enum sdca_usage_range(9)
  • enum sdca_dataport_selector_range(9)
  • enum sdca_mu_controls(9)
  • enum sdca_su_controls(9)
  • enum sdca_fu_controls(9)
  • enum sdca_volume_range(9)
  • enum sdca_xu_controls(9)
  • enum sdca_fdl_set_index_range(9)
  • enum sdca_cs_controls(9)
  • enum sdca_samplerateindex_range(9)
  • enum sdca_cx_controls(9)
  • enum sdca_pde_controls(9)
  • enum sdca_requested_ps_range(9)
  • enum sdca_ge_controls(9)
  • enum sdca_selected_mode_range(9)
  • enum sdca_detected_mode_values(9)
  • enum sdca_spe_controls(9)
  • enum sdca_cru_controls(9)
  • enum sdca_udmpu_controls(9)
  • enum sdca_mfpu_controls(9)
  • enum sdca_smpu_controls(9)
  • enum sdca_sapu_controls(9)
  • enum sdca_ppu_controls(9)
  • enum sdca_tg_controls(9)
  • enum sdca_hide_controls(9)
  • enum sdca_entity0_controls(9)
  • enum sdca_control_datatype(9)
  • enum sdca_access_mode(9)
  • enum sdca_access_layer(9)
  • struct sdca_control_range(9)
  • struct sdca_control(9)
  • enum sdca_terminal_type(9)
  • enum sdca_connector_type(9)
  • struct sdca_entity_iot(9)
  • enum sdca_clock_type(9)
  • struct sdca_entity_cs(9)
  • enum sdca_pde_power_state(9)
  • struct sdca_pde_delay(9)
  • struct sdca_entity_pde(9)
  • enum sdca_entity_type(9)
  • struct sdca_ge_control(9)
  • struct sdca_ge_mode(9)
  • struct sdca_entity_ge(9)
  • struct sdca_entity_hide(9)
  • enum sdca_xu_reset_mechanism(9)
  • struct sdca_entity_xu(9)
  • enum sdca_channel_purpose(9)
  • enum sdca_channel_relationship(9)
  • struct sdca_channel(9)
  • struct sdca_cluster(9)
  • enum sdca_cluster_range(9)
  • struct sdca_fdl_file(9)
  • struct sdca_fdl_set(9)
  • struct sdca_fdl_data(9)
  • struct sdca_function_hid(9)
  • struct sdca_function_data(9)

like... that's the whole friend group and they ALL showed up to the party πŸŽ‰πŸ’…


and that's the page bestie!! πŸŽ€ lowkey a serve. this one lives over in ./include/sound and it's dated October 2026 β€” so yeah, mark your calendar, screenshot it, put it on the fridge, mwah πŸ’–πŸ¦‹βœ¨

πŸ“¦ where this page comes from