wm8960_configure_sysclk(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– wm8960_configure_sysclk(9) πŸ’–

okay so this is a page from the Kernel API Manual bestie, and it's all about wm8960_configure_sysclk β€” literally the function that checks if there's a sysclk frequency available for you. πŸŽ€

✨ NAME ✨

wm8960_configure_sysclk β€” checks if there is a sysclk frequency available 🌸

The sysclk must be chosen such that:

  • sysclk = MCLK / sysclk_divs
  • lrclk = sysclk / dac_divs
  • 10 * bclk = sysclk / bclk_divs

like, those three relationships are the whole vibe check. no cap. πŸ¦‹


🌈 SYNOPSIS 🌈

int wm8960_configure_sysclk (struct wm8960_priv *wm8960 , int mclk , int
*sysclk_idx , int *dac_idx , int *bclk_idx );

🫢 ARGUMENTS 🫢

  • wm8960 β€” the codec private data, i.e. the main character's personal info πŸ’…
  • mclk β€” the MCLK that's used to derive sysclk, the raw ingredient basically ✨
  • sysclk_idx β€” the sysclk_divs index for the found sysclk πŸ“
  • dac_idx β€” the dac_divs index for the found lrclk πŸ“
  • bclk_idx β€” the bclk_divs index for the found bclk πŸ“

πŸ”₯ RETURN πŸ”₯

  • -1 β€” in case no sysclk frequency available is found 😭 (sad girl hours)
  • >=0 β€” in case we could derive bclk and lrclk from sysclk using the (sysclk_idx, dac_idx, bclk_idx) dividers πŸŽ‰ slay!!
fr fr, that >=0 is the good ending β€” it means all three divider indices got filled in and everything lines up πŸ’–

πŸ‘‘ SEE ALSO πŸ‘‘

  • Kernel file ./sound/soc/codecs/wm8960.c πŸ“„
  • wm8960_configure_pll(9) β€” its sibling, go read that one too 🧚

and that's the whole page, bestie!! tysm for reading πŸ’œ this little gem lives in ./sound/soc/codecs and the version on the tin is dated October 2026 β€” catch you in the next manpage, mwah πŸŽ€βœ¨πŸ’…

πŸ“¦ where this page comes from