Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

power: supply: bq25890: Fix enum conversion in bq25890_power_supply_set_property()

Clang warns:

drivers/power/supply/bq25890_charger.c:625:40: error: implicit conversion from enumeration type 'enum bq25890_fields' to different enumeration type 'enum bq25890_table_ids' [-Werror,-Wenum-conversion]
lval = bq25890_find_idx(val->intval, F_IINLIM);
~~~~~~~~~~~~~~~~ ^~~~~~~~
1 error generated.

Use the proper value from the right enumerated type, TBL_IINLIM, so
there is no more implcit conversion. The numerical values of F_IINLIM
and TBL_IINLIM happen to be the same so there is no change in behavior.

Fixes: 4a4748f28b0b ("power: supply: bq25890: Add support for setting IINLIM")
Link: https://github.com/ClangBuiltLinux/linux/issues/1707
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Marek Vasut <marex@denx.de>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>

authored by

Nathan Chancellor and committed by
Sebastian Reichel
55cafd4b f52c4d5f

+1 -1
+1 -1
drivers/power/supply/bq25890_charger.c
··· 622 622 623 623 switch (psp) { 624 624 case POWER_SUPPLY_PROP_INPUT_CURRENT_LIMIT: 625 - lval = bq25890_find_idx(val->intval, F_IINLIM); 625 + lval = bq25890_find_idx(val->intval, TBL_IINLIM); 626 626 return bq25890_field_write(bq, F_IINLIM, lval); 627 627 default: 628 628 return -EINVAL;