STRUCT SDW_STREAM_CONFIG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct sdw_stream_config(9) ✨

okay so bestie, welcome to the <struct sdw_stream_config> glow-up πŸ’… this lil cutie lives in the Kernel API Manual and it's literally the master-or-slave stream configuration struct β€” like the outfit plan for your audio stream, no cap πŸŽ€


🌸 NAME 🌸

struct sdw_stream_config β€” Master or Slave stream configuration πŸ¦‹


✨ SYNOPSIS ✨

struct sdw_stream_config {
    unsigned int frame_rate;
    unsigned int ch_count;
    unsigned int bps;
    enum sdw_data_direction direction;
    enum sdw_stream_type type;
 };

like, that's the whole fit. five fields. iconic. πŸ‘‘


🫢 Members 🫢

okay so let's meet the squad, one by one, fr fr:

  • frame_rate β€” the audio frame rate of the stream, measured in Hz 🎡 (yes, Hz. she's precise.)
  • ch_count β€” the channel count of the stream, aka how many channels are invited to the party 🌈
  • bps β€” number of bits per audio sample, the literal bit budget per sample πŸ’€
  • direction β€” the data direction, aka which way the audio is flowing πŸ¦‹
  • type β€” the stream type: PCM, PDM or BPT πŸ‘‘ (three whole vibes, pick one)

πŸ”₯ SEE ALSO πŸ”₯

the whole extended friend group, and yes you're gonna meet all of them, iykyk πŸ’œ β€” all of these are chillin' in the kernel file ./include/linux/soundwire/sdw.h:

  • enum sdw_slave_status(9)
  • enum sdw_clk_stop_type(9)
  • enum sdw_command_response(9)
  • enum sdw_stream_type(9)
  • enum sdw_data_direction(9)
  • enum sdw_port_data_mode(9)
  • enum sdw_p15_behave(9)
  • enum sdw_dpn_type(9)
  • enum sdw_clk_stop_mode(9)
  • struct sdw_dp0_prop(9)
  • struct sdw_dpn_prop(9)
  • struct sdw_slave_prop(9)
  • struct sdw_master_prop(9)
  • struct sdw_slave_id(9)
  • struct sdw_slave_intr_status(9)
  • enum sdw_reg_bank(9)
  • struct sdw_prepare_ch(9)
  • enum sdw_port_prep_ops(9)
  • struct sdw_bus_params(9)
  • struct sdw_slave_ops(9)
  • struct sdw_slave(9)
  • struct sdw_master_device(9)
  • struct sdw_port_params(9)
  • struct sdw_transport_params(9)
  • struct sdw_enable_ch(9)
  • struct sdw_master_port_ops(9)
  • struct sdw_defer(9)
  • struct sdw_master_ops(9)
  • struct sdw_port_config(9)
  • enum sdw_stream_state(9)
  • struct sdw_stream_params(9)
  • struct sdw_stream_runtime(9)
  • struct sdw_bus(9)
  • sdw_slave_wait_for_init(9)

okay that's the whole page bestie, go forth and configure your streams πŸ’–βœ¨

sign-off szn πŸŽ€: this one's from the source file ./include/linux/soundwire, dated October 2026, and it's brought to you by struct sdw_stream_config(9) β€” periodt. πŸ’…πŸŒΈ
πŸ“¦ where this page comes from