diff --git a/patches.kernel.org/6.2.12-078-power-supply-rk817-Fix-unsigned-comparison-wit.patch b/patches.kernel.org/6.2.12-078-power-supply-rk817-Fix-unsigned-comparison-wit.patch new file mode 100644 index 0000000..4e8df5d --- /dev/null +++ b/patches.kernel.org/6.2.12-078-power-supply-rk817-Fix-unsigned-comparison-wit.patch @@ -0,0 +1,53 @@ +From: Jiapeng Chong +Date: Wed, 14 Dec 2022 11:23:16 +0800 +Subject: [PATCH] power: supply: rk817: Fix unsigned comparison with less than + zero +References: bsc#1012628 +Patch-mainline: 6.2.12 +Git-commit: 3268a4d9b0b85a4382e93bdf7be5400a73db74c5 + +[ Upstream commit 3268a4d9b0b85a4382e93bdf7be5400a73db74c5 ] + +The tmp is defined as u32 type, which results in invalid processing of +tmp<0 in function rk817_read_or_set_full_charge_on_boot(). Therefore, +drop the comparison. + +drivers/power/supply/rk817_charger.c:828 rk817_read_or_set_full_charge_on_boot() warn: unsigned 'tmp' is never less than zero. +drivers/power/supply/rk817_charger.c:788 rk817_read_or_set_full_charge_on_boot() warn: unsigned 'tmp' is never less than zero. + +Link: https://bugzilla.openanolis.cn/show_bug.cgi?id=3444 +Reported-by: Abaci Robot +Signed-off-by: Jiapeng Chong +Tested-by: Chris Morgan +Signed-off-by: Sebastian Reichel +Signed-off-by: Sasha Levin +Signed-off-by: Jiri Slaby +--- + drivers/power/supply/rk817_charger.c | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/drivers/power/supply/rk817_charger.c b/drivers/power/supply/rk817_charger.c +index 4f9c1c41..36f807b5 100644 +--- a/drivers/power/supply/rk817_charger.c ++++ b/drivers/power/supply/rk817_charger.c +@@ -785,8 +785,6 @@ rk817_read_or_set_full_charge_on_boot(struct rk817_charger *charger, + regmap_bulk_read(rk808->regmap, RK817_GAS_GAUGE_Q_PRES_H3, + bulk_reg, 4); + tmp = get_unaligned_be32(bulk_reg); +- if (tmp < 0) +- tmp = 0; + boot_charge_mah = ADC_TO_CHARGE_UAH(tmp, + charger->res_div) / 1000; + /* +@@ -825,8 +823,6 @@ rk817_read_or_set_full_charge_on_boot(struct rk817_charger *charger, + regmap_bulk_read(rk808->regmap, RK817_GAS_GAUGE_Q_PRES_H3, + bulk_reg, 4); + tmp = get_unaligned_be32(bulk_reg); +- if (tmp < 0) +- tmp = 0; + boot_charge_mah = ADC_TO_CHARGE_UAH(tmp, charger->res_div) / 1000; + regmap_bulk_read(rk808->regmap, RK817_GAS_GAUGE_OCV_VOL_H, + bulk_reg, 2); +-- +2.35.3 + diff --git a/series.conf b/series.conf index 9fca561..eb2dcc5 100644 --- a/series.conf +++ b/series.conf @@ -2305,6 +2305,7 @@ patches.kernel.org/6.2.12-075-ARM-9290-1-uaccess-Fix-KASAN-false-positives.patch patches.kernel.org/6.2.12-076-ARM-dts-qcom-apq8026-lg-lenok-add-missing-rese.patch patches.kernel.org/6.2.12-077-arm64-dts-qcom-sa8540p-ride-correct-name-of-re.patch + patches.kernel.org/6.2.12-078-power-supply-rk817-Fix-unsigned-comparison-wit.patch ######################################################## # Build fixes that apply to the vanilla kernel too.