STRUCT SPMI_VOLTAGE_RANGE(9)
π struct spmi_voltage_range(9) π
okay so bestie, welcome to the Kernel API Manual β this page is your little group chat for struct spmi_voltage_range(9), and it is literally giving regulator set point voltage mapping. no cap, every field matters π
β¨ NAME β¨
struct spmi_voltage_range β regulator set point voltage mapping description.
π¦ SYNOPSIS π¦
struct spmi_voltage_range {
int min_uV;
int max_uV;
int step_uV;
int set_point_min_uV;
int set_point_max_uV;
unsigned n_voltages;
u8 range_sel;
};
π Members π
okay, here is the cast β every member is a main character:
min_uVβ Minimum programmable output voltage resulting from set point register value0x00.max_uVβ Maximum programmable output voltage.step_uVβ Output voltage increase resulting from the set point register value increasing by1.set_point_min_uVβ Minimum allowed voltage.set_point_max_uVβ Maximum allowed voltage. This may be tweaked in order to pick which range should be used in the case of overlapping set points.n_voltagesβ Number of preferred voltage set points present in this range.range_selβ Voltage range register value corresponding to this range.
πΈ Description πΈ
okay so the following relationships must be true for the values used in this struct β like, non-negotiable bestie:
(max_uV - min_uV) % step_uV == 0
(set_point_min_uV - min_uV) % step_uV == 0*
(set_point_max_uV - min_uV) % step_uV == 0*
n_voltages = (set_point_max_uV - set_point_min_uV) / step_uV + 1
*Note,set_point_min_uV == set_point_max_uV == 0is allowed in order to specify that the voltage range has meaning, but is not preferred.
π₯ SEE ALSO π₯
- Kernel file
./drivers/regulator/qcom_spmi-regulator.candstruct spmi_regulator_init_data(9).
thatβs the whole vibe, bestie β source/version ./drivers/regulator, date October 2026, page struct spmi_voltage_range(9). byeee π
β¨
π¦ 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