STRUCT PMIC_MPP_PAD(9)
π struct pmic_mpp_pad(9) β like, the whole kernel API manual vibe
okay bestie, welcome to the Kernel API Manual, section 9, and today's main character is literally a struct called pmic_mpp_pad β¨ no cap, this is the glow-up page for it.
β¨ NAME β¨
struct pmic_mpp_pad β keep current MPP settings π
That's it. That's the job. It holds onto the MPP settings so they don't wander off. Iconic, honestly.
πΈ SYNOPSIS πΈ
struct pmic_mpp_pad {
u16 base;
bool is_enabled;
bool out_value;
bool output_enabled;
bool input_enabled;
bool paired;
bool has_pullup;
unsigned int num_sources;
unsigned int power_source;
unsigned int amux_input;
unsigned int aout_level;
unsigned int pullup;
unsigned int function;
unsigned int drive_strength;
unsigned int dtest;
};
look at her. fifteen fields. all accounted for. not one of them skipped, because we do not do that here π
π¦ Members π¦
okay so let's meet the squad, one by one, because each of them matters:
baseβ address base in SPMI device. like, where she lives πis_enabledβ set tofalsewhen the MPP should be put in high Z state. that's the off-switch energy, bestie.out_valueβ cached pin output value. her little memory of what she was outputting π«Άoutput_enabledβ set totrueif MPP output logic is enabled. yes queen, output πinput_enabledβ set totrueif MPP input buffer logic is enabled. she's listening π§pairedβ pin operates in paired mode. it takes two, fr fr π―has_pullupβ pin has support to configure pullup. not everyone can, she can πͺnum_sourcesβ number of power-sources supported by this MPP. count 'em π’power_sourceβ current power-source used. the one actively powering the vibe β‘amux_inputβ set the source for analog input. analog girlies rise πaout_levelβ analog output level πΆpullupβ pullup resistor value. valid in Bidirectional mode only β like, do not try her in other modes, it will not go well πfunctionβ seepmic_mpp_functions[]. iykyk π₯drive_strengthβ amount of current in sink mode πdtestβ DTEST route selector. choose your route, main character π
π SEE ALSO π
- Kernel file
./drivers/pinctrl/qcom/pinctrl-spmi-mpp.cβ go read the source, bestie, it's giving lore β
lowkey reminder: pullup is only valid in Bidirectional mode, so don't be out here setting it in other modes and then acting surprised π
and that's the page, babe π· this little number lives under ./drivers/pinctrl/qcom, dated October 2026, and it's filed as struct pmic_mpp_pad(9) β 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