STRUCT RZG2L_HWCFG(9)
πΈ NAME πΈ
struct rzg2l_hwcfg β the hardware configuration data structure, bestie. It's literally the vibe-check sheet for the hardware, no cap π
This lil page lives in the Kernel API Manual, and it's all about struct rzg2l_hwcfg(9) β ok so let's get into it β¨
β¨ SYNOPSIS β¨
struct rzg2l_hwcfg {
const struct rzg2l_register_offsets regs;
u16 iolh_groupa_ua[RZG2L_IOLH_IDX_MAX];
u16 iolh_groupb_ua[RZG2L_IOLH_IDX_MAX];
u16 iolh_groupc_ua[RZG2L_IOLH_IDX_MAX];
u16 iolh_groupb_oi[4];
u16 tint_start_index;
bool drive_strength_ua;
bool oen_pwpr_lock;
u8 func_base;
u8 oen_max_pin;
u8 oen_max_port;
};
Like, look at her. Iconic struct. Every field copied character for character, periodt π
π Members π
Ok so these are the fields, and yes we're going through all of them, because nobody gets left out on my watch π«Ά
regsβ hardware specific register offsets. It's aconst struct rzg2l_register_offsets, so it's giving very much "do not touch, this is the blueprint" energy π₯iolh_groupa_uaβ IOLH group A uA specific values. Lowkey au16array sizedRZG2L_IOLH_IDX_MAXπiolh_groupb_uaβ IOLH group B uA specific values. Same deal,u16,RZG2L_IOLH_IDX_MAXπΈiolh_groupc_uaβ IOLH group C uA specific values. Yep, group C also showed up and she's alsou16[RZG2L_IOLH_IDX_MAX]β¨iolh_groupb_oiβ IOLH group B output impedance specific values. This one's au16[4]bestie, exactly4, don't come for me πtint_start_indexβ the start index for the TINT interrupts. Very "where do we begin" of her πdrive_strength_uaβ aboolthat says drive strength in uA is supported (otherwise mA is supported). So like, it's uA or mA, pick a lane πoen_pwpr_lockβ flag indicating if the OEN register is locked by PWPR. It's abool, it's a flag, it's giving "locked or not locked, no in between" πfunc_baseβ base number for port function (see register PFC). A lilu8with main character energy πoen_max_pinβ the maximum pin number supporting output enable.u8, and yes, it's the maximum pin number π¦oen_max_portβ the maximum port number supporting output enable. Alsou8, also the maximum port number, they're a matching set fr fr π
Ngl bestie, every field here matters β this struct is literally the hardware config, so please don't go renaming or merging anything. The facts stay exactly where they are π
π¦ SEE ALSO π¦
Go read these next, iykyk:
- Kernel file
./drivers/pinctrl/renesas/pinctrl-rzg2l.c struct rzg2l_register_offsets(9)enum rzg2l_iolh_index(9)struct rzg2l_pinctrl_pin_settings(9)struct rzg2l_pinctrl_reg_cache(9)rzg2l_oen_write_with_pwpr(9)
Ok that's the whole page, you ate that π
β¨ This one came from ./drivers/pinctrl/renesas, dated October 2026, and the page itself is struct rzg2l_hwcfg(9) β mwah, go read a pinctrl driver, ily π«Άππ
π¦ 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