diff options
-rw-r--r-- | board/spring/board.c | 34 |
1 files changed, 15 insertions, 19 deletions
diff --git a/board/spring/board.c b/board/spring/board.c index 2abc1d8425..b6e4ccd415 100644 --- a/board/spring/board.c +++ b/board/spring/board.c @@ -274,6 +274,21 @@ int board_pmu_init(void) { int failure = 0; + /* + * Adjust charging parameters to match the expectations + * of the hardware fixing the cap ringing on DVT+ machines. + */ + failure |= pmu_set_term_current(RANGE_T01, TERM_I0875); + failure |= pmu_set_term_current(RANGE_T12, TERM_I0875); + failure |= pmu_set_term_current(RANGE_T23, TERM_I0875); + failure |= pmu_set_term_current(RANGE_T34, TERM_I0875); + failure |= pmu_set_term_current(RANGE_T40, TERM_I1000); + failure |= pmu_set_term_voltage(RANGE_T01, TERM_V2100); + failure |= pmu_set_term_voltage(RANGE_T12, TERM_V2100); + failure |= pmu_set_term_voltage(RANGE_T23, TERM_V2100); + failure |= pmu_set_term_voltage(RANGE_T34, TERM_V2100); + failure |= pmu_set_term_voltage(RANGE_T40, TERM_V2100); + /* Set fast charging timeout to 6 hours*/ if (!failure) failure = pmu_set_fastcharge(TIMEOUT_6HRS); @@ -288,25 +303,6 @@ int board_pmu_init(void) if (!failure) failure = pmu_low_current_charging(1); - /* - * High temperature charging - * termination voltage: 2.1V - * termination current: 100% - */ - if (!failure) - failure = pmu_set_term_voltage(RANGE_T34, TERM_V2100); - if (!failure) - failure = pmu_set_term_current(RANGE_T34, TERM_I1000); - /* - * Standard temperature charging - * termination voltage: 2.1V - * termination current: 100% - */ - if (!failure) - failure = pmu_set_term_voltage(RANGE_T23, TERM_V2100); - if (!failure) - failure = pmu_set_term_current(RANGE_T23, TERM_I1000); - return failure ? EC_ERROR_UNKNOWN : EC_SUCCESS; } #endif /* CONFIG_BOARD_PMU_INIT */ |