STRUCT SDW_PREPARE_CH(9)
π struct sdw_prepare_ch(9) β like, the Kernel API Manual but make it make sense π
okay so bestie, welcome to the <pink>Kernel API Manual</pink> entry for struct sdw_prepare_ch β yes it's giving "SoundWire data port channel goes brrr" and honestly? iconic. this little struct is the whole personality behind preparing (and de-preparing!) a Data Port channel, and we're gonna get into it β¨
πΈ NAME πΈ
struct sdw_prepare_ch β Prepare/De-prepare Data Port channel. that's it, that's the vibe. one struct, one job, no cap π
π¦ SYNOPSIS π¦
struct sdw_prepare_ch {
unsigned int num;
unsigned int ch_mask;
bool prepare;
unsigned int bank;
};
look at her. four members. flawless. no notes. π
β¨ Members β¨
okay so let's meet the cast, because every one of these lil fields is a main character in their own right:
numβ the Port number. literally just which port, bestie. that's the whole thing π«Άch_maskβ the Active channel mask. it's the mask of the channels that are actually active, iykyk πprepareβ the switch!truemeans prepare the channel,falsemeans de-prepare it. bi-energy fr fr πbankβ the Register bank β the bank that the Slave/Master driver should program for implementation defined registers. and ngl, this one's got lore: it's always updated to thenext_bankvalue read from bus params. always. no exceptions. periodt π
π₯ SEE ALSO π₯
bestie the cross-reference list is long and we're not skipping a single one, because every link deserves its moment:
- 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)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)struct sdw_stream_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)
thirty-four links. thirty-four. we ate and left zero crumbs ππ
quick vibe check, bestie:bankis not something you set and forget β it gets updated tonext_bankfrom the bus params, every time. don't fight it, that's just how she is π
and that's the page!! π§ this one came from ./include/linux/soundwire, version circa October 2026, filed under struct sdw_prepare_ch(9) β catch you in the next manpage, mwah πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms