diff --git a/board/zinger/usb_pd_policy.c b/board/zinger/usb_pd_policy.c index 04b04fca6b..e705bdf494 100644 --- a/board/zinger/usb_pd_policy.c +++ b/board/zinger/usb_pd_policy.c @@ -148,7 +148,8 @@ int pd_request_voltage(uint32_t rdo) ((pdo >> 10) & 0x3ff) * 50, (pdo & 0x3ff) * 10, ((rdo >> 10) & 0x3ff) * 10, (rdo & 0x3ff) * 10); - output_disable(); + if (idx - 1 < volt_idx) /* down voltage transition */ + output_disable(); /* TODO discharge ? */ volt_idx = idx - 1; set_output_voltage(voltages[volt_idx].select);