diff options
author | Marc Zyngier <maz@kernel.org> | 2023-08-06 21:45:58 +0100 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2023-08-27 10:32:57 +0100 |
commit | b648a146d8754020a9163ce836a7468e0fd9e41d (patch) | |
tree | 65bdddf0fdcfbe34f56906cf936816cc15f47141 | |
parent | c824aa5ddd5b79b10f0d99b441dae9c89cee9730 (diff) | |
download | cs-sw-b648a146d8754020a9163ce836a7468e0fd9e41d.tar.gz |
Turn VBUS off in DISCONNECTED state without CC
Signed-off-by: Marc Zyngier <maz@kernel.org>
-rw-r--r-- | vdmtool.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -576,9 +576,12 @@ static void state_machine(struct vdm_context *cxt) int16_t cc1 = -1, cc2 = -1; fusb302_tcpm_get_cc(PORT(cxt), &cc1, &cc2); dprintf(cxt, "Poll: cc1=%d cc2=%d\n", (int)cc1, (int)cc2); - sleep_ms(200); - if (cc1 >= 2 || cc2 >= 2) + if (cc1 >= 2 || cc2 >= 2) { + sleep_ms(200); evt_dfpconnect(cxt); + } else { + vbus_off(cxt); + } break; } case STATE_CONNECTED:{ |