STRUCT OMAP_HWMOD_OMAP4_PRCM(9)
π struct omap_hwmod_omap4_prcm(9) β the Kernel API Manual, but make it make sense π
okay bestie, so this is a page straight outta the Kernel API Manual, and it's all about struct omap_hwmod_omap4_prcm β the OMAP4-specific PRCM data situation. ngl the header on this thing is literally struct omap_...d_omap4_prcm(9) and the manual name is right there in the corner, so now you know. let's get into it π«Ά
πΈ NAME πΈ
struct omap_hwmod_omap4_prcm β OMAP4-specific PRCM data. that's the whole vibe. iconic, concise, we love her π
β¨ SYNOPSIS β¨
here's the whole struct, character for character, no cap:
struct omap_hwmod_omap4_prcm {
u16 clkctrl_offs;
u16 rstctrl_offs;
u16 rstst_offs;
u16 context_offs;
u32 lostcontext_mask;
u8 submodule_wkdep_bit;
u8 modulemode;
u8 flags;
int context_lost_counter;
};
she's got range π look at all those fields.
π Members π
okay so let's meet the cast, one field at a time:
clkctrl_offsβ the offset of the PRCM clock control register. clock stuff? offset? she's got the coordinates βrstctrl_offsβ the offset of theXXX_RSTCTRLregister, which lives in the PRM. yes, literallyXXX_RSTCTRL, that's the name, i don't make the rules πcontext_offsβ the offset of theRM_*_CONTEXTregister. context queen πlostcontext_maskβ a bitmask for picking which bits you want out of thatRM_*_CONTEXTregister. selective, as she should be π¦submodule_wkdep_bitβ the bit shift of the WKDEP range. it's giving very specific energy and honestly? slay β¨modulemodeβ the allowable modulemodes. all lowercase, very chill, very "we don't gatekeep modes here" πflagsβ the PRCM register capabilities for this IP block. the receipts, basically πcontext_lost_counterβ the count of module level context lost π tragic but someone's gotta keep track fr fr
side note bestie: rstst_offs is chillin' right there in the struct up top, but this page does not describe it. not me noticing π i'm just reporting what's on the page, don't come for me π
π§ Description π§
okay so here's the important part, listen up:
if lostcontext_mask is not defined, the context loss check code just uses the whole register without any masking. no filter, raw dogging the register, main character energy.
lostcontext_mask should only be defined in the cases where the context_offs register is shared by two or more hwmods. that's it, that's the rule. don't be out here defining masks for no reason, it's not the vibe π
π SEE ALSO π
go read these next, bestie, they're all in the family:
- Kernel file
./arch/arm/mach-omap2/omap_hwmod.hstruct omap_hwmod_rst_info(9)struct omap_hwmod_opt_clk(9)struct omap_hwmod_omap2_firewall(9)struct omap_hwmod_ocp_if(9)struct omap_hwmod_class_sysconfig(9)struct omap_hwmod_omap2_prcm(9)struct omap_hwmod_class(9)struct omap_hwmod(9)
iykyk π₯
and that's the whole page, bestie!! π this one came from ./arch/arm/mach-omap2, version 9 of the manual, dated October 2026 β shoutout to whoever wrote it, and to you for reading the whole thing. mwah π periodt. π«Άβ¨
π¦ 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