Skip to content

Commit d445d64

Browse files
committed
Merge tag 'for-v5.16-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply
Pull power supply fixes from Sebastian Reichel: "Three fixes for the 5.16 cycle: - Avoid going beyond last capacity in the power-supply core - Replace 1E6L with NSEC_PER_MSEC to avoid floating point calculation in LLVM resulting in a build failure - Fix ADC measurements in bq25890 charger driver" * tag 'for-v5.16-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: power: reset: ltc2952: Fix use of floating point literals power: bq25890: Enable continuous conversion for ADC at charging power: supply: core: Break capacity loop
2 parents 622e42a + 644106c commit d445d64

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

drivers/power/reset/ltc2952-poweroff.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,8 +159,8 @@ static void ltc2952_poweroff_kill(void)
159159

160160
static void ltc2952_poweroff_default(struct ltc2952_poweroff *data)
161161
{
162-
data->wde_interval = 300L * 1E6L;
163-
data->trigger_delay = ktime_set(2, 500L*1E6L);
162+
data->wde_interval = 300L * NSEC_PER_MSEC;
163+
data->trigger_delay = ktime_set(2, 500L * NSEC_PER_MSEC);
164164

165165
hrtimer_init(&data->timer_trigger, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
166166
data->timer_trigger.function = ltc2952_poweroff_timer_trigger;

drivers/power/supply/bq25890_charger.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -581,12 +581,12 @@ static irqreturn_t __bq25890_handle_irq(struct bq25890_device *bq)
581581

582582
if (!new_state.online && bq->state.online) { /* power removed */
583583
/* disable ADC */
584-
ret = bq25890_field_write(bq, F_CONV_START, 0);
584+
ret = bq25890_field_write(bq, F_CONV_RATE, 0);
585585
if (ret < 0)
586586
goto error;
587587
} else if (new_state.online && !bq->state.online) { /* power inserted */
588588
/* enable ADC, to have control of charge current/voltage */
589-
ret = bq25890_field_write(bq, F_CONV_START, 1);
589+
ret = bq25890_field_write(bq, F_CONV_RATE, 1);
590590
if (ret < 0)
591591
goto error;
592592
}

drivers/power/supply/power_supply_core.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -853,6 +853,10 @@ power_supply_find_ocv2cap_table(struct power_supply_battery_info *info,
853853
return NULL;
854854

855855
for (i = 0; i < POWER_SUPPLY_OCV_TEMP_MAX; i++) {
856+
/* Out of capacity tables */
857+
if (!info->ocv_table[i])
858+
break;
859+
856860
temp_diff = abs(info->ocv_temp[i] - temp);
857861

858862
if (temp_diff < best_temp_diff) {

0 commit comments

Comments
 (0)