samsung_clk_init(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ samsung_clk_init ✨

okay so bestie, welcome to the Kernel API Manual πŸŽ€ and today's main character is samsung_clk_init β€” the function that literally births a clock provider object. no cap, it's giving "let there be clocks." πŸ’…


🌸 SYNOPSIS 🌸

struct samsung_clk_provider * samsung_clk_init (struct device *dev ,
void __iomem *base , unsigned long nr_clks );

like… look at her. three args, returns a pointer to a struct samsung_clk_provider. iconic honestly πŸ¦‹


πŸ’– ARGUMENTS πŸ’–

  • dev β€” the CMU device that gets runtime PM enabled ✨ β€” or <italic>NULL</italic> if RPM is not needed, in which case she simply doesn't need that energy and we respect it πŸ™ˆ
  • base β€” the start address (mapped!) of the CMU registers πŸ“ the actual physical spot where the magic lives
  • nr_clks β€” total clock count to allocate in the clock provider object πŸ•°οΈ yes, you gotta tell her how many clocks up front, no vibes-based guessing

🌈 DESCRIPTION 🌈

So what does she actually do? She sets up the essentials required to support clock lookup using the Common Clock Framework πŸ”₯ that's it, that's the whole job β€” but it's a whole lot of essential-setup energy, fr fr. like she's the one laying the foundation so everything else can slay later πŸ‘‘


⭐ RETURN ⭐

An allocated and initialized clock provider object πŸ’– like she hands you back a fully-formed, ready-to-go struct samsung_clk_provider *. a whole new object, fresh out the box, vibes immaculate ✨


πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./drivers/clk/samsung/clk.c β€” the source, go read her, iykyk πŸ“–
  • samsung_cmu_register_clocks(9) β€” her bestie, the next function you'll be calling πŸ’œ

ngl the whole point is: allocate + init the provider, then go register clocks. do not skip step one, she is not optional 😭

and that's the tea, bestie πŸ“ this page came to you from ./drivers/clk/samsung, dated October 2026 β€” go forth and initialize your clocks, periodt πŸ’…πŸ‘‘

πŸ“¦ where this page comes from