STRUCT MAX8998_DEV(9)
π NAME π
struct max8998_dev β the max8998 master device for sub-drivers, aka the main character that all the little sub-drivers report back to π«Ά
β¨ SYNOPSIS β¨
struct max8998_dev {
struct device *dev;
struct max8998_platform_data *pdata;
struct i2c_client *i2c;
struct i2c_client *rtc;
struct mutex iolock;
struct mutex irqlock;
unsigned int irq_base;
struct irq_domain *irq_domain;
int irq;
int ono;
u8 irq_masks_cur[MAX8998_NUM_IRQ_REGS];
u8 irq_masks_cache[MAX8998_NUM_IRQ_REGS];
unsigned long type;
bool wakeup;
};
okay bestie, that's the whole struct, copied exactly, no cap π₯
πΈ Members πΈ
devβ the master device of the chip, and yes you can use it to get at the platform data πpdataβ platform data, shared by the driver and all its subdrivers fr fri2cβ i2c client private data for the regulatorrtcβ i2c client private data for the rtciolockβ mutex for serializing io access, like a little velvet rope for io πirqlockβ mutex for the buslockirq_baseβ base IRQ number for max8998, required for IRQs (it's giving mandatory π)irqβ the generic IRQ number for max8998onoβ the power onoff IRQ number for max8998irq_masks_curβ the currently active valueirq_masks_cacheβ the cached hardware valuetypeβ indicates which max8998 "variant" is in use π
little heads up π:irq_domainandwakeupare both chillin' in the struct up there in SYNOPSIS, but the Members list doesn't describe them, so we're not gonna make stuff up about them. iykyk.
π¦ SEE ALSO π¦
- Kernel file
./include/linux/mfd/max8998-private.hβ go read it, it's iconic β
and that's the whole page bestie, slay π
β this was struct max8998_dev(9) from the Kernel API Manual, living in ./include/linux/mfd, dated October 2026. 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