STRUCT INTEL_SOC_PMIC(9)
π struct intel_soc_pmic(9) π
okay so picture this: you're digging through the Kernel API Manual (that's the manual name, bestie, we're in section 9 lmao) and you land on struct intel_soc_pmic β literally the Intel SoC PMIC data struct. it's giving "the little bag of goodies that describes your power management IC" and honestly? she ate. let's get into it π¦
β¨ NAME β¨
struct intel_soc_pmic β Intel SoC PMIC data. that's the whole vibe. no cap. π
πΈ SYNOPSIS πΈ
here's the struct itself, every line, character for character β do NOT come for me about formatting, this is verbatim and it's iconic:
struct intel_soc_pmic {
int irq;
struct regmap *regmap;
struct regmap_irq_chip_data *irq_chip_data;
struct regmap_irq_chip_data *irq_chip_data_pwrbtn;
struct regmap_irq_chip_data *irq_chip_data_tmu;
struct regmap_irq_chip_data *irq_chip_data_bcu;
struct regmap_irq_chip_data *irq_chip_data_adc;
struct regmap_irq_chip_data *irq_chip_data_chgr;
struct regmap_irq_chip_data *irq_chip_data_crit;
struct device *dev;
struct intel_scu_ipc_dev *scu;
enum intel_cht_wc_models cht_wc_model;
};
π MEMBERS π
bestie there are SO many members and every single one matters, so buckle up π«Ά
irqβ the master interrupt number of the parent PMIC device. the main character of interrupts, fr fr. π₯regmapβ pointer to the parent PMIC device'sregmapstructure. your map to the registers, lowkey essential. πΊοΈirq_chip_dataβ IRQ chip data for the PMIC itself. she's the original, the blueprint. β¨irq_chip_data_pwrbtnβ chained IRQ chip data for the Power Button. press it, it slays. πirq_chip_data_tmuβ chained IRQ chip data for the Time Management Unit. clock it β°irq_chip_data_bcuβ chained IRQ chip data for the Burst Control Unit. burst energy only π₯irq_chip_data_adcβ chained IRQ chip data for the General Purpose ADC. general purpose = general icon πirq_chip_data_chgrβ chained IRQ chip data for the External Charger. charge your phone bestie πirq_chip_data_critβ chained IRQ chip data for the Critical Event Handler. critical = highkey important, like, don't ignore her πdevβ pointer to the parent PMIC device. the parent in question πscuβ pointer to the SCU IPC device data structure. acronym bestie, we love her π
ngl the struct up top also carries enum intel_cht_wc_models cht_wc_model; β the Members list here doesn't describe it, so I'm not gonna make anything up about it. what you see is what you get π«Ά
π¦ SEE ALSO π¦
Kernel file ./include/linux/mfd/intel_soc_pmic.h β go read the source, iykyk ππ
and that's the whole page diva!! πβ¨ source-wise this beauty lives in ./include/linux/mfd and it's dated October 2026, so likeβ¦ future vibes. mwah, go read your headers ππΈπ
π¦ 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