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

power: supply: rk817: Change rk817_chg_cur_to_reg to int

Change return value of rk817_chg_cur_to_reg from u8 to int. If the
function fails to find a suitable value it returns a -EINVAL, but
defined as a u8 it would not return correctly. Additionally, change
defined variable that stores return value from u8 to int.

Fixes: 11cb8da0189b ("power: supply: Add charger driver for Rockchip RK817")
Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>

authored by

Chris Morgan and committed by
Sebastian Reichel
883babd4 172c65e6

+3 -3
+3 -3
drivers/power/supply/rk817_charger.c
··· 121 121 #define ADC_TO_CHARGE_UAH(adc_value, res_div) \ 122 122 (adc_value / 3600 * 172 / res_div) 123 123 124 - static u8 rk817_chg_cur_to_reg(u32 chg_cur_ma) 124 + static int rk817_chg_cur_to_reg(u32 chg_cur_ma) 125 125 { 126 126 if (chg_cur_ma >= 3500) 127 127 return CHG_3_5A; ··· 864 864 { 865 865 struct rk808 *rk808 = charger->rk808; 866 866 u32 tmp, max_chg_vol_mv, max_chg_cur_ma; 867 - u8 max_chg_vol_reg, chg_term_i_reg, max_chg_cur_reg; 868 - int ret, chg_term_ma; 867 + u8 max_chg_vol_reg, chg_term_i_reg; 868 + int ret, chg_term_ma, max_chg_cur_reg; 869 869 u8 bulk_reg[2]; 870 870 871 871 /* Get initial plug state */