omap2_dflt_clk_enable(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… omap2_dflt_clk_enable(9) πŸ’…

okay so welcome to the Kernel API Manual bestie, and today's main character is omap2_dflt_clk_enable β€” the girl whose whole job is turning a clock ON. in the hardware. fr fr. πŸ•βœ¨


✨ NAME ✨

omap2_dflt_clk_enable β€” enable a clock in the hardware 🌸


πŸ¦‹ SYNOPSIS πŸ¦‹

int omap2_dflt_clk_enable (struct clk_hw *hw );

πŸŽ€ ARGUMENTS πŸŽ€

  • hw β€” a struct clk_hw *, aka the clock you're trying to enable. this is the one, the only, the pointer in question πŸ’…

πŸ’– DESCRIPTION πŸ’–

so like. we're enabling the clock hw in the hardware. and it's a whole little ritual, bestie, let me walk you through it:

  1. first we call into the OMAP clockdomain code to "enable" the corresponding clockdomain β€” but only if this is the first enabled user of that clockdomain. no cap, first one in switches the lights on for everybody. πŸ”₯
  2. then we program the hardware to actually enable the clock. iconic.
  3. then we wait for the IP block that uses this clock to leave idle (if that's applicable β€” sometimes it's just vibing and doesn't need the wait). 😌

and what do we return, you ask? 🫢

  • the error value from clkdm_clk_enable if that call terminated with an error 😭
  • -EINVAL if hw has a null clock enable_reg πŸ’€
  • zero upon success β€” slay ✨

πŸ‘‘ SEE ALSO πŸ‘‘


okay that's the whole page, go enable some clocks responsibly bb 🩷 this came from ./drivers/clk/ti and the date on it is October 2026 β€” mwah, talk later! πŸ“πŸ’«

πŸ“¦ where this page comes from