[PATCH] power: supply: bq256xx: drop always-true inner condition
From: Anas Khan
Date: Thu Jul 02 2026 - 15:48:54 EST
In bq256xx_array_parse() the inner "if (val < array[i])" repeats the
second half of the enclosing "if (val > array[i - 1] && val < array[i])",
so it is always true and the "else return i" arm is dead code. The
function performs a round-down table lookup, so returning i - 1 for a
value that falls strictly between two entries is the intended result.
Collapse the redundant branch into a single "return i - 1;"; no
functional change.
Signed-off-by: Anas Khan <anxkhn28@xxxxxxxxx>
---
drivers/power/supply/bq256xx_charger.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/power/supply/bq256xx_charger.c b/drivers/power/supply/bq256xx_charger.c
index 5a6634fde837..e5042582da16 100644
--- a/drivers/power/supply/bq256xx_charger.c
+++ b/drivers/power/supply/bq256xx_charger.c
@@ -347,12 +347,8 @@ static int bq256xx_array_parse(int array_size, int val, const int array[])
if (val == array[i])
return i;
- if (val > array[i - 1] && val < array[i]) {
- if (val < array[i])
- return i - 1;
- else
- return i;
- }
+ if (val > array[i - 1] && val < array[i])
+ return i - 1;
}
return -EINVAL;
}
--
2.54.0