STRUCT R9A06G032_CLKDESC(9)
๐ struct r9a06g032_clkdesc(9) ๐
okay so bestie, buckle up โ this is a page straight out of the Kernel API Manual, and it's literally the blueprint for one (1) clock. slay. โจ
๐ธ NAME ๐ธ
struct r9a06g032_clkdesc โ describe a single clock ๐๐
๐ SYNOPSIS ๐
struct r9a06g032_clkdesc {
const char *name;
uint32_t managed:1;
enum gate_type type:3;
uint32_t index:8;
uint32_t source:8;
union {
struct r9a06g032_gate gate;
struct {
unsigned int min:10, max:10, reg:10;
u16 table[4];
} div;
struct {
u16 div, mul;
} ffc;
struct {
uint16_t group:1;
struct regbit sel, g1, r1, g2, r2;
} dual;
};
};
no cap, look at all those bitfields โ she's compact and she knows it ๐
๐ฆ Members ๐ฆ
nameโ the string describing this clock, like her little name tag ๐ท๏ธmanagedโ boolean indicating if this clock should be started/stopped as part of power management โก (yes she's on the PM grind)typeโ seeenum gate_type๐indexโ the ID of this clock element ๐ขsourceโ the ID+1 of the parent clock element. Root clock uses ID of~0(PARENT_ID); ๐ณ{unnamed_union}โ anonymous, mysterious, main character energy ๐ซถgateโ clock enable/disable ๐ฆdivโ substructure for clock divider โdiv.minโ smallest permitted clock divider ๐div.maxโ largest permitted clock divider ๐div.regโ clock divider register offset, in 32-bit words ๐div.tableโ optional list of fixed clock divider values; must be in ascending order, zero for unused ๐ (fr fr, ascending or it's a vibe violation)ffcโ substructure for fixed-factor clocks ๐งฎffc.divโ divisor for fixed-factor clock โffc.mulโ multiplier for fixed-factor clock โ๏ธdualโ substructure for dual clock gates ๐ฏdual.groupโ UART group,0=UART0/1/2,1=UART3/4/5/6/7๐dual.selโ select eitherg1/r1org2/r2as clock source ๐๏ธdual.g1โ 1st source gate (clock enable/disable) 1๏ธโฃdual.r1โ 1st source reset (module reset) ๐dual.g2โ 2nd source gate (clock enable/disable) 2๏ธโฃdual.r2โ 2nd source reset (module reset) ๐
โญ Description โญ
Describes a single element in the clock tree hierarchy. ๐ฒ And ngl, because there are quite a large number of clock elements, this structure is packed tightly to conserve space โ she is SNUG. every bit is doing its job, no wasted room, iconic ๐โจ
๐ SEE ALSO ๐
Kernel file ./drivers/clk/renesas/r9a06g032-clocks.c, struct regbit(9), struct r9a06g032_gate(9) ๐ซถ
and that's the tea bestie ๐ this lil page came from ./drivers/clk/renesas, dated October 2026, and she's officially titled struct r9a06g032_clkdesc(9) โ go off queen ๐๐
๐ฆ 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