Message ID | 20241208131532.1028581-1-csokas.bence@prolan.hu |
---|---|
State | New |
Headers | show |
Series | power: ip5xxx_power: Fix uninitialized variable read | expand |
On Sun, 08 Dec 2024 14:15:31 +0100, Bence Csókás wrote: > The check for whether a charger supports the requested > battery voltage was incorrectly added to the > `ip5xxx_battery_get_voltage_max()` function, instead of > `set_voltage_max()`. This commit fixes it. > > Applied, thanks! [1/1] power: ip5xxx_power: Fix uninitialized variable read commit: 94ba531bf9cb3c4ef725ffc37b8ed09006533f25 Best regards,
diff --git a/drivers/power/supply/ip5xxx_power.c b/drivers/power/supply/ip5xxx_power.c index 46f8eb7100c1..d076b4e46194 100644 --- a/drivers/power/supply/ip5xxx_power.c +++ b/drivers/power/supply/ip5xxx_power.c @@ -367,9 +367,6 @@ static int ip5xxx_battery_get_voltage_max(struct ip5xxx *ip5xxx, int *val) if (ret) return ret; - if (*val > ip5xxx->vbat_max) - return -EINVAL; - /* * It is not clear what this will return if * IP5XXX_CHG_CTL4_BAT_TYPE_SEL_EN is not set... @@ -504,6 +501,9 @@ static int ip5xxx_battery_set_voltage_max(struct ip5xxx *ip5xxx, int val) unsigned int rval; int ret; + if (val > ip5xxx->vbat_max) + return -EINVAL; + switch (val) { case 4200000: rval = IP5XXX_BAT_TYPE_4_2V;
The check for whether a charger supports the requested battery voltage was incorrectly added to the `ip5xxx_battery_get_voltage_max()` function, instead of `set_voltage_max()`. This commit fixes it. Reported-by: Kees Bakker <kees@ijzerbout.nl> Closes: https://lore.kernel.org/linux-kernel/b547c228-df70-4137-9e96-175923f62404@ijzerbout.nl/ Fixes: 8584bc5df539 ("power: ip5xxx_power: Allow for more parameters to be configured") Signed-off-by: Bence Csókás <csokas.bence@prolan.hu> --- drivers/power/supply/ip5xxx_power.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)