summaryrefslogtreecommitdiff
path: root/board/poppy/board.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/poppy/board.c')
-rw-r--r--board/poppy/board.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/board/poppy/board.c b/board/poppy/board.c
index ab3f3b40b0..38183c0da0 100644
--- a/board/poppy/board.c
+++ b/board/poppy/board.c
@@ -58,6 +58,9 @@
#define USB_PD_PORT_ANX74XX 0
+/* Minimum input current limit. */
+#define ILIM_MIN_MA 472
+
static void tcpc_alert_event(enum gpio_signal signal)
{
if ((signal == GPIO_USB_C0_PD_INT_ODL) &&
@@ -676,8 +679,8 @@ int board_set_active_charge_port(int charge_port)
* @param charge_ma Desired charge limit (mA).
* @param charge_mv Negotiated charge voltage (mV).
*/
-__override void board_set_charge_limit(int port, int supplier, int charge_ma,
- int max_ma, int charge_mv)
+void board_set_charge_limit(int port, int supplier, int charge_ma, int max_ma,
+ int charge_mv)
{
/* Adjust ILIM according to measurements to eliminate overshoot. */
charge_ma = (charge_ma - 500) * 31 / 32 + 472;
@@ -685,7 +688,7 @@ __override void board_set_charge_limit(int port, int supplier, int charge_ma,
if (charge_mv > 5000)
charge_ma -= 52;
- charge_set_input_current_limit(charge_ma, charge_mv);
+ charge_set_input_current_limit(MAX(charge_ma, ILIM_MIN_MA), charge_mv);
}
void board_hibernate(void)