_init_opt_clks(9)
π
_init_opt_clks(9) β fresh out of the Kernel API Manual
okay so bestie, welcome to _init_opt_clks(9), straight from the Kernel API Manual, and it's giving "small function, big job" energy. she's short, she's sweet, she handles the optional clocks. let's get into it π«Ά
β¨ NAME β¨
_init_opt_clks β get a struct clk * for the hwmod's optional clocks
like yes, that's the whole vibe. it goes and gets you a struct clk * pointer for the hwmod's optional clocks. no cap π
πΈ SYNOPSIS πΈ
int _init_opt_clks (struct omap_hwmod *oh );
that's it. one function, one argument, returns an int. iconic, honestly π
π ARGUMENTS π
ohβ this bad boy is astruct omap_hwmod *. that's your hwmod. she's the main character here and everything happens to her β¨
π¦ DESCRIPTION π¦
so here's the tea: _init_opt_clks gets called from _init_clocks. yep, that's the caller, that's the whole origin story.
what does she actually do? she populates the oh omap_hwmod_opt_clk clock pointers. lowkey the entire job. she fills in those clock pointers on your oh so they're not just sitting there empty π
and the returns? extremely simple:
0on success β she ate, no notes π₯-EINVALon error β something's off, go check your inputs π
fr fr that's the whole description. no hidden options, no tiny print, no "see below for caveats." she's a short queen and she knows it π
π SEE ALSO π
first up, the source file itself, keep it sacred:
./arch/arm/mach-omap2/omap_hwmod.c
and then the whole extended friend group β every single one of these, no skips, no cutting for time π
struct clkctrl_provider(9)struct omap_hwmod_reset(9)struct omap_hwmod_soc_ops(9)_update_sysc_cache(9)_write_sysconfig(9)_set_master_standbymode(9)_set_slave_idlemode(9)_set_clockactivity(9)_set_softreset(9)_clear_softreset(9)_wait_softreset_complete(9)_set_dmadisable(9)_set_module_autoidle(9)_enable_wakeup(9)_add_initiator_dep(9)_del_initiator_dep(9)_init_main_clk(9)_init_interface_clks(9)_enable_clocks(9)_omap4_clkctrl_managed_by_clkfwk(9)_omap4_has_clkctrl_clock(9)_disable_clocks(9)_omap4_enable_module(9)_omap4_wait_target_disable(9)_save_mpu_port_index(9)_find_mpu_rt_port(9)_enable_sysc(9)_idle_sysc(9)_shutdown_sysc(9)_lookup(9)_init_clkdm(9)_init_clocks(9)_lookup_hardreset(9)_assert_hardreset(9)_deassert_hardreset(9)_read_hardreset(9)_are_all_hardreset_lines_asserted(9)_are_any_hardreset_lines_asserted(9)_omap4_disable_module(9)_ocp_softreset(9)_reset(9)_omap4_update_context_lost(9)_omap4_get_context_lost(9)_enable(9)_idle(9)_shutdown(9)of_dev_hwmod_lookup(9)omap_hwmod_fix_mpu_rt_idx(9)omap_hwmod_parse_module_range(9)_init_mpu_rt_base(9)_init(9)_setup_iclk_autoidle(9)_setup_reset(9)_setup_postsetup(9)_setup(9)_register(9)_add_link(9)_register_link(9)_omap2xxx_3xxx_wait_target_ready(9)_omap4_wait_target_ready(9)_omap2_assert_hardreset(9)_omap2_deassert_hardreset(9)_omap2_is_hardreset_asserted(9)_omap4_assert_hardreset(9)_omap4_deassert_hardreset(9)_omap4_is_hardreset_asserted(9)_omap4_disable_direct_prcm(9)_am33xx_deassert_hardreset(9)omap_hwmod_softreset(9)omap_hwmod_lookup(9)omap_hwmod_for_each(9)omap_hwmod_register_links(9)_ensure_mpu_hwmod_is_setup(9)omap_hwmod_setup_one(9)omap_hwmod_check_sysc(9)omap_hwmod_init_regbits(9)omap_hwmod_init_reg_offs(9)omap_hwmod_init_sysc_flags(9)omap_hwmod_init_idlemodes(9)omap_hwmod_check_module(9)omap_hwmod_allocate_module(9)omap_hwmod_init_module(9)omap_hwmod_setup_earlycon_flags(9)omap_hwmod_setup_all(9)omap_hwmod_enable(9)omap_hwmod_idle(9)omap_hwmod_shutdown(9)omap_hwmod_get_mpu_rt_va(9)omap_hwmod_assert_hardreset(9)omap_hwmod_deassert_hardreset(9)omap_hwmod_for_each_by_class(9)omap_hwmod_set_postsetup_state(9)omap_hwmod_init(9)
likeβ¦ that's the whole hwmod cinematic universe and honestly we stan a well-cross-referenced page π
and that's the page, bestie!! mwah π this one's stamped from ./arch/arm/mach-omap2, dated October 2026, and it will forever answer to the name _init_opt_clks(9). go populate those clock pointers, you absolute icon π§ββοΈβ¨
π¦ 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