summaryrefslogtreecommitdiff
path: root/drivers/power
diff options
context:
space:
mode:
authorTirupathi Reddy <tirupath@codeaurora.org>2018-01-11 15:34:54 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2019-02-15 03:16:06 -0800
commit7acdf203cfc3cbd30c51e9f3f8db70e614bb9b32 (patch)
treec5b24fb1c837707dad9e110893003341edcecf49 /drivers/power
parent6c36a602f34b8907e9416b1330db54575284cc85 (diff)
drivers: fix 32bit compilation for QPNP drivers
Use div_s64() for signed 64bit division with 32bit divider and div64_s64() for signed 64bit division with 64bit divider. CRs-Fixed: 2170745 Change-Id: I1dcf9e83ba492559df2a8b6be9484196f53d6193 Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org> Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/supply/qcom/qpnp-fg.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/power/supply/qcom/qpnp-fg.c b/drivers/power/supply/qcom/qpnp-fg.c
index 3ddc10689707..1ace44f121b4 100644
--- a/drivers/power/supply/qcom/qpnp-fg.c
+++ b/drivers/power/supply/qcom/qpnp-fg.c
@@ -3259,13 +3259,13 @@ static int estimate_battery_age(struct fg_chip *chip, int *actual_capacity)
/* calculate soc_cutoff_new */
val = (1000000LL + temp_rs_to_rslow) * battery_esr;
- do_div(val, 1000000);
+ val = div64_s64(val, 1000000);
ocv_cutoff_new = div64_s64(chip->evaluation_current * val, 1000)
+ chip->cutoff_voltage;
/* calculate soc_cutoff_aged */
val = (1000000LL + temp_rs_to_rslow) * esr_actual;
- do_div(val, 1000000);
+ val = div64_s64(val, 1000000);
ocv_cutoff_aged = div64_s64(chip->evaluation_current * val, 1000)
+ chip->cutoff_voltage;
@@ -3715,11 +3715,11 @@ static void fg_cap_learning_post_process(struct fg_chip *chip)
max_inc_val = chip->learning_data.learned_cc_uah
* (1000 + chip->learning_data.max_increment);
- do_div(max_inc_val, 1000);
+ max_inc_val = div_s64(max_inc_val, 1000);
min_dec_val = chip->learning_data.learned_cc_uah
* (1000 - chip->learning_data.max_decrement);
- do_div(min_dec_val, 1000);
+ min_dec_val = div_s64(min_dec_val, 1000);
old_cap = chip->learning_data.learned_cc_uah;
if (chip->learning_data.cc_uah > max_inc_val)