_setup_reset(9)
π _setup_reset(9) β like, the whole vibe
okay so real talk: you're in the Kernel API Manual, section 9, and the star of the show today is _setup_reset. she resets an IP block during the setup process and honestly? she ate. let's get into it π«Ά
β¨ SYNOPSIS β¨
int _setup_reset (struct omap_hwmod *oh );
that's it. that's the whole signature. iconic behaviour, no notes. π
π ARGUMENTS π
ohβ typestruct omap_hwmod *. yes bestie, that's the whole description. she's a pointer to a hwmod struct, that's the moment, that's the assignment. π¦
πΈ DESCRIPTION πΈ
okay so picture this: you've got an IP block, right? and you want it reset β but specifically during the setup process, not whenever you feel like it. _setup_reset is the girl for that job. she takes the hwmod oh, finds the IP block that corresponds to it, and resets it. periodt. π
and here's the lil detail that matters (iykyk): the IP block gets first enabled so that it can actually be successfully reset. you can't reset a block that's asleep, that's not a vibe, that's just chaos. so she wakes her up first, then does the reset. π
what does she give you back? returns 0 upon success, or a negative error code upon failure. so like β check your return values, bestie. no cap, 0 is the green flag, negative is the "we need to talk" text. π
π₯ SEE ALSO π₯
so there's a lot here and I'm not skipping a single one, because every single one is part of the family. also heads up: the kernel file for all this is ./arch/arm/mach-omap2/omap_hwmod.c β that's the address, that's where the lore lives. π§
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_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 I said. entire family. every single cousin showed up to the function call. π
ok that's the page bestie, go reset something responsibly π
mwah π β this one's from ./arch/arm/mach-omap2, dated October 2026, and the page you just read is _setup_reset(9). take care of her, she's iconic πβ
π¦ 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