diff --git a/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c b/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c index 4b1b9c3b1e99..6522edefb9cf 100644 --- a/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c +++ b/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c @@ -617,8 +617,12 @@ int bq2589x_set_input_current_limit(struct bq2589x *bq, int curr) if (curr < BQ2589X_IINLIM_BASE) val = 0; /*for HW accuracy issue, so icl >= 3A we need to set 0x3F*/ - else if (curr >= BQ2589X_IINLIM_MAX) - val = 0x3F; + else if (curr >= BQ2589X_IINLIM_MAX){ + if (bq->part_no == SC89890H) + val = 0x3A; + else + val = 0x3F; + } else val = (curr - BQ2589X_IINLIM_BASE) / BQ2589X_IINLIM_LSB;