diff mbox series

power: ip5xxx_power: Fix uninitialized variable read

Message ID 20241208131532.1028581-1-csokas.bence@prolan.hu
State New
Headers show
Series power: ip5xxx_power: Fix uninitialized variable read | expand

Commit Message

Csókás Bence Dec. 8, 2024, 1:15 p.m. UTC
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(-)

Comments

Sebastian Reichel Dec. 10, 2024, 12:37 a.m. UTC | #1
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 mbox series

Patch

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;