STRUCT SDCA_FUNCTION_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

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

okay bestie, welcome to the Kernel API Manual β€” this is the page for struct sdca_function_data, and it is literally the top-level information for one SDCA function. Think main-character data structure: it keeps the descriptor, init table, entities, clusters, delays, and the optional FDL/HID extras all cute and organized. Let's get into it 🫢


✨ NAME ✨

struct sdca_function_data β€” top-level information for one SDCA function. That's the whole vibe: one SDCA function, all the top-level details, no cap.


πŸ’… SYNOPSIS πŸ’…

Here's the struct in all its glory β€” keep the braces, semicolons, and spacing exactly where they are, bestie:

       struct sdca_function_data {
           struct sdca_function_desc *desc;
           struct sdca_init_write *init_table;
           struct sdca_entity *entities;
           struct sdca_cluster *clusters;
           int num_init_table;
           int num_entities;
           int num_clusters;
           unsigned int busy_max_delay;
           unsigned int reset_max_delay;
           struct sdca_fdl_data fdl_data;
           union {
             struct sdca_function_hid hid;
           };
        };

πŸŽ€ Members πŸŽ€

Every member is doing its own little job, and we are not skipping any of them:

  • desc β€” pointer to the short descriptor from initial parsing. First-impression energy ✨
  • init_table β€” pointer to a table of initialization writes. Like the to-do list of writes 🫑
  • entities β€” dynamically allocated array of Entities.
  • clusters β€” dynamically allocated array of Channel Clusters.
  • num_init_table β€” number of initialization writes.
  • num_entities β€” number of Entities reported in this Function.
  • num_clusters β€” number of Channel Clusters reported in this Function.
  • busy_max_delay β€” maximum Function busy delay in microseconds, before an error should be reported. Respect the limit or catch an error 😭
  • reset_max_delay β€” maximum Function reset delay in microseconds, before an error should be reported. Same energy, reset edition πŸ’€
  • fdl_data β€” FDL data for this Function, if available.
  • {unnamed_union} β€” anonymous. That's literally what it says, bestie; the union has no name and we respect its privacy πŸ™ˆ
  • hid β€” HID data for this Function, if available.

🌈 SEE ALSO 🌈

Okay, this is the whole extended friend group. The kernel file is the home base, and every single one of these is invited to the group chat:

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

mwah πŸ’‹ that's the page! Source/version: ./include/sound. Date: October 2026. Title: struct sdca_function_data(9). Now go forth and slay those SDCA functions, bestie πŸ’–

πŸ“¦ where this page comes from