snd_soc_dai_set_bclk_clk(9)
π snd_soc_dai_set_bclk_clk(9) π
okay so bestie, welcome to the Kernel API Manual β¨ β this is the page for snd_soc_dai_set_bclk_clk, and honestly? it's a little baddie. let's get into it π
πΈ NAME πΈ
snd_soc_dai_set_bclk_clk β set the BCLK clock for shared clock detection β¨
π¦ SYNOPSIS π¦
void snd_soc_dai_set_bclk_clk (struct snd_soc_dai *dai , struct clk *bclk );
like, that's the whole vibe. two args, no return value, she just does things π
π ARGUMENTS π
daiβ the DAI. that's it. that's the descriptor. she's the main character here πbclkβ the BCLK clock pointer (orNULLto clear it, iykyk π«Ά)
β DESCRIPTION β
okay so here's the tea β β when multiple DAIs share the same physical BCLK (and yes, that's detected via clk_is_match, no cap π), the ASoC core will automatically constrain their hw_params so that the resulting BCLK rates are compatible. literally the core doing the matchmaking for you so your clocks don't fight πβ¨
it's giving "group project but everyone actually coordinates" π§
π₯ SEE ALSO π₯
bestie the whole squad is here, it's a full friend group and they all show up π«Ά
Kernel file: ./sound/soc/soc-dai.c
snd_soc_dai_set_sysclk(9)snd_soc_dai_set_clkdiv(9)snd_soc_dai_set_pll(9)snd_soc_dai_set_bclk_ratio(9)snd_soc_dai_set_fmt(9)snd_soc_xlate_tdm_slot_mask(9)snd_soc_dai_set_tdm_slot(9)snd_soc_dai_set_tdm_idle(9)snd_soc_dai_set_channel_map(9)snd_soc_dai_get_channel_map(9)snd_soc_dai_set_tristate(9)snd_soc_dai_digital_mute(9)
ngl if you're setting a shared BCLK, run that vibe check first β compatibility constraints are not a drill π
β¨ and that's the page, periodt β¨ this icon came from the source at ./sound/soc and it's stamped October 2026 β so yeah, she's fresh ππ mwah, go read the other ones, ily π
π¦ 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