SDCA_CTL_TYPE_S(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🫢 SDCA_CTL_TYPE_S(9) β€” like, the static version of SDCA_CTL_TYPE, bestie πŸ’…

okay so real talk, this little cutie lives in the Kernel API Manual and honestly? she's serving convenience and we love her for it ✨


🌸 NAME 🌸

SDCA_CTL_TYPE_S β€” the static version of SDCA_CTL_TYPE, and yes she ate πŸ’–


⭐ SYNOPSIS ⭐

SDCA_CTL_TYPE_S (ent , sel );

literally that's it. two args, no drama πŸŽ€


πŸ¦‹ ARGUMENTS πŸ¦‹

  • ent β€” the Entity name, like IT, MFPU, etc. ngl the cute part is you can just read this string straight off the last characters of the SDCA_ENTITY_TYPE_* macros πŸ‘‘
  • sel β€” the Control Selector name, for example MIC_BIAS, MUTE, etc. same vibe: this string is readable from the last characters of the SDCA_CTL_*_* macros 🧚

πŸ’œ DESCRIPTION πŸ’œ

It's a shorthand, bestie β€” it lets you specify a Control type statically, and it looks like this:

SDCA_CTL_TYPE_S(IT, MIC_BIAS)

that's the whole flex πŸ”₯


🌈 SEE ALSO 🌈

Kernel file ./include/sound/sdca_function.h, plus the whole friend group:

  • enum sdca_function_type(9)
  • struct sdca_init_write(9)
  • SDCA_CTL_TYPE(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)
  • struct sdca_entity(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 entire extended universe, go read them all, iykyk πŸ“šβœ¨


ok and one last thing before you go β€” this page is filed under ./include/sound and it's dated October 2026, so yeah, she's from the future and she's iconic for it πŸ’€πŸ‘‘

k bye, ily, go write some static control types πŸ«ΆπŸ’–πŸŒŸ

πŸ“¦ where this page comes from