omap_hwmod_f...ach_by_class(9)
π omap_hwmod_for_each_by_class β a Kernel API Manual moment
okay so bestie, you know how the kernel manual pages are out here looking like a wall of sad plaintext? yeah. not on my watch. this one lives in the Kernel API Manual and it's genuinely so useful once you get past the vibes π
β¨ NAME β¨
omap_hwmod_for_each_by_class β no cap, this one literally calls @fn for each hwmod of class @classname π
π¦ SYNOPSIS π¦
int omap_hwmod_for_each_by_class (const char *classname , int
(*fn)(struct omap_hwmod *oh, void *user) , void *user );
likeβ¦ she's a function signature, she's iconic, she takes three things. we move π
πΈ ARGUMENTS πΈ
- classname β the
struct omap_hwmod_classname you're hunting for. this is your search key, your main character filter π - fn β callback function pointer to call for each hwmod in class
classname. yes bestie, you bring the function, she brings the hwmods π«Ά - user β arbitrary context data to pass to the callback function. literally whatever you want, she's not nosy π
π DESCRIPTION π
so here's the tea: for each omap_hwmod of class classname, call fn. that's it. that's the whole vibe β¨
BUT β and this is the important part, so pay attention β if the callback function returns something other than zero, the iterator is terminated π and the callback function's return value is passed back to the caller. so your function can slam the brakes on the whole loop whenever it wants. lowkey powerful.
Returns 0 upon success, -EINVAL if classname or fn are NULL (pls don't do that), or passes back the error code from fn. periodt π
bestie reminder:-EINVALwhenclassnameorfnareNULLβ that's your vibe check failing, not a bug okurrr
π SEE ALSO π
okay this list is LONG, she ate and left no crumbs, so let's get into it π
- Kernel file
./arch/arm/mach-omap2/omap_hwmod.c 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)_init_opt_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_set_postsetup_state(9)omap_hwmod_init(9)
iykyk, that's the whole squad π
and that's the page bestie π«Ά sign-off time: this lil masterpiece comes from ./arch/arm/mach-omap2, and it's dated October 2026. go forth and iterate, 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