snd_soc_dap...e_bias_level(9)
π snd_soc_dap...e_bias_level β Kernel API Manual β¨
okay so bestie, we're in the kernel API manual today (yes, that manual) and the star of the show is snd_soc_dapm_force_bias_level. buckle up π
πΈ NAME πΈ
snd_soc_dapm_force_bias_level β sets the DAPM bias level, and it does it forcefully. main character energy fr fr π
π¦ SYNOPSIS π¦
int snd_soc_dapm_force_bias_level (struct snd_soc_dapm_context *dapm ,
enum snd_soc_bias_level level );
β¨ ARGUMENTS β¨
dapmβ the DAPM context whose level you're setting. it's giving "here's the thing I'm about to mess with" π«Άlevelβ the level to set. literally the destination. that's it. π―
π DESCRIPTION π
so this function forces the DAPM bias level to a specific state. no negotiating, no vibes check, it just does it. π€
it will call the bias level callback of the DAPM context with the level you specified β and the way that it does this even when the context is already sitting at that same level?? obsessed. no early-out, no "oh you're already there", it calls the callback anyway. π₯
also super important: it will not go through the normal bias level sequencing. meaning any intermediate states between your current state and your target state? not entered. skipped. they simply do not get a seat at the table π
β οΈ heads up bestie: the change in bias level is only temporary. the next time snd_soc_dapm_sync is called, the state gets set to whatever level the DAPM core decides. so don't get too attached, okay? π
the function is mainly intended to be used during probe or resume from suspend, to power up the device so initialization can be done β all before the DAPM core takes over. it's the little pre-game warmup before the main event π§
π SEE ALSO π
kernel file ./sound/soc/soc-dapm.c, plus this whole squad right here:
snd_soc_dapm_kcontrol_to_widget(9)snd_soc_dapm_kcontrol_to_dapm(9)snd_soc_dapm_kcontrol_to_component(9)snd_soc_dapm_init_bias_level(9)snd_soc_dapm_set_bias_level(9)snd_soc_dapm_get_bias_level(9)snd_soc_dapm_dai_get_connected_widgets(9)snd_soc_dapm_free_widget(9)snd_soc_dapm_sync_unlocked(9)snd_soc_dapm_sync(9)snd_soc_dapm_add_routes(9)snd_soc_dapm_del_routes(9)snd_soc_dapm_new_widgets(9)snd_soc_dapm_get_volsw(9)snd_soc_dapm_put_volsw(9)snd_soc_dapm_get_enum_double(9)snd_soc_dapm_put_enum_double(9)snd_soc_dapm_info_pin_switch(9)snd_soc_dapm_get_pin_switch(9)snd_soc_dapm_get_component_pin_switch(9)snd_soc_dapm_put_pin_switch(9)snd_soc_dapm_put_component_pin_switch(9)snd_soc_dapm_new_control(9)snd_soc_dapm_new_controls(9)snd_soc_dapm_new_dai_widgets(9)snd_soc_dapm_stream_event(9)snd_soc_dapm_enable_pin_unlocked(9)snd_soc_dapm_enable_pin(9)snd_soc_dapm_force_enable_pin_unlocked(9)snd_soc_dapm_force_enable_pin(9)snd_soc_dapm_disable_pin_unlocked(9)snd_soc_dapm_disable_pin(9)snd_soc_dapm_get_pin_status(9)snd_soc_dapm_ignore_suspend(9)snd_soc_dapm_pin_has_prefix(9)snd_soc_dapm_free(9)
and that's the whole page, bestie!! π«Άπβ¨ this one came from ./sound/soc, dated October 2026, and it's page snd_soc_dap...e_bias_level(9) of the Kernel API Manual. go forth and force those bias levels, ilysm πππ
π¦ 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