_enable_sysc(9)
π
_enable_sysc(9) β Kernel API Manual π
okay bestie, welcome to the _enable_sysc(9) page from the Kernel API Manual. itβs giving βtiny function, big hwmod energy,β and weβre gonna get through it together π«Ά
β¨ NAME β¨
_enable_sysc β try to bring a module out of idle via OCP_SYSCONFIG π
π¦ SYNOPSIS π¦
void _enable_sysc (struct omap_hwmod *oh );
π ARGUMENTS π
ohβ astruct omap_hwmod *. thatβs the hwmod for the IP block weβre talking about, bestie π
π₯ DESCRIPTION π₯
so the whole vibe here is: make sure the OCP_SYSCONFIG register for the IP block represented by oh is set to tell the PRCM that the IP block is active. literally just βhey PRCM, this oneβs awake, no capβ β¨
usually that means placing the module into smart-idle mode and smart-standby. but if there is a bug in the automatic idle handling for the IP block, it may need to be placed into the force-idle or no-idle variants of these modes instead. so yeah, sometimes the auto-idle situation is a little messy and needs the manual route π
No return value. like, none. zero. it does the thing and dips π
π SEE ALSO π
Kernel file: ./arch/arm/mach-omap2/omap_hwmod.c β thatβs the main character source file, fr fr π
and okay, the linked-lore lineup is HUGE, but every single one is here because we do not skip references in this house:
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)_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)
and thatβs the page, bestie π source/version: ./arch/arm/mach-omap2, date stamp: October 2026, and yeah β still _enable_sysc(9) πβ¨
π¦ 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