STRUCT SDW_MASTER_PROP(9)
β¨ NAME β¨
struct sdw_master_prop β the Master properties, aka the vibe check for a SoundWire Master π (this is a page from the Kernel API Manual, bestie, so grab a snack)
πΈ SYNOPSIS πΈ
struct sdw_master_prop {
u32 *clk_gears;
u32 *clk_freq;
u64 quirks;
u32 revision;
u32 clk_stop_modes;
u32 max_clk_freq;
u32 num_clk_gears;
u32 num_clk_freq;
u32 default_frame_rate;
u32 default_row;
u32 default_col;
u32 err_threshold;
u32 mclk_freq;
bool dynamic_frame;
bool hw_disabled;
};
π Members π
Okay so literally every field, one by one, no skipping, we're doing the whole roster π
clk_gearsβ the clock gears that are supported βοΈclk_freqβ the clock frequencies that are supported, in Hzquirksβ a bitmask that flags optional behavior going beyond the scope of the MIPI spec (iykyk, vendor shenanigans)revisionβ the MIPI spec version of the implementationclk_stop_modesβ a bitmap: bit N is set when clock-stop-modeN is supported π«Άmax_clk_freqβ the maximum Bus clock frequency, in Hznum_clk_gearsβ how many clock gears are supportednum_clk_freqβ how many clock frequencies are supported, in Hzdefault_frame_rateβ the controller's default Frame rate, in Hzdefault_rowβ number of rowsdefault_colβ number of columnserr_thresholdβ the number of times software may retry sending a single command π (yes, there's a limit, don't push it)mclk_freqβ the clock reference passed to the SoundWire Master, in Hz.dynamic_frameβ dynamic frame shape is supported β¨hw_disabledβ iftrue, the Master is not functional, typically due to pin-mux π
π¦ SEE ALSO π¦
The kernel file ./include/linux/soundwire/sdw.h, and honestly the whole friend group:
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_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)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)
okay that's the whole page, you ate that π this little cutie lives in ./include/linux/soundwire, dated October 2026, and yes the footer still says struct sdw_master_prop(9) because we respect the classics πβ¨π¦
π¦ 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