STRUCT PRUSS(9)
π struct pruss(9) β like, the PRUSS parent structure, bestie π
okay so this is straight out of the Kernel API Manual, and no cap, it's lowkey one of those little structs that's holding the whole PRUSS situation together. it's giving main character energy for the parent structure. let's get into it π«Ά
πΈ NAME πΈ
struct pruss β the PRUSS parent structure. yep. that's the whole vibe. it's the parent, it's in charge, it's iconic π
β¨ SYNOPSIS β¨
struct pruss {
struct device *dev;
void __iomem *cfg_base;
struct regmap *cfg_regmap;
struct pruss_mem_region mem_regions[PRUSS_MEM_MAX];
struct pruss_mem_region *mem_in_use[PRUSS_MEM_MAX];
struct mutex lock;
struct clk *core_clk_mux;
struct clk *iep_clk_mux;
};
like, copy it exactly pls, this is not a drill π
π Members π
okay so every single member, one by one, because we don't skip anybody here. every member is a star β
devβ the pruss device pointer. that's the device, pointing at it, doing its thing πcfg_baseβ the base iomap for the CFG region. that's where the CFG region lives, mapped in β¨cfg_regmapβ the regmap for the config region. regmap, but for config πmem_regionsβ the data for each of the PRUSS memory regions. like, each one. all of them.PRUSS_MEM_MAXof them, plural, per the synopsis πmem_in_useβ this one's the vibe check: it indicates if a memory resource is in use. literally just tells you if it's taken π¦lockβ a mutex to serialize access to resources. no two threads in the same club at the same time, periodt πcore_clk_muxβ the clk handle for PRUSSCORE_CLK_MUXiep_clk_muxβ the clk handle for PRUSSIEP_CLK_MUX
π SEE ALSO π
- Kernel file
./include/linux/pruss_driver.h enum pru_type(9)struct pruss_mem_region(9)
go read those too, iykyk π§
ngl bestie, the mem_in_use field is the one doing the most work here β it's literally the "is this resource taken" indicator, so don't come for her π
that's the whole page, fr fr π it lives in ./include/linux and it's dated October 2026 β so like, future vibes only, we're ahead of schedule π stay hydrated, go read your pruss_driver.h, mwah ππ
π¦ 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