summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/usbc/usb_pe_drp_sm.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/common/usbc/usb_pe_drp_sm.c b/common/usbc/usb_pe_drp_sm.c
index f6d150c47d..e599097f43 100644
--- a/common/usbc/usb_pe_drp_sm.c
+++ b/common/usbc/usb_pe_drp_sm.c
@@ -4979,6 +4979,13 @@ static void pe_init_port_vdm_identity_request_run(int port)
/* PE_INIT_PORT_VDM_Identity_ACKed embedded here */
dfp_consume_identity(port, sop, cnt, payload);
+
+#ifdef CONFIG_CHARGE_MANAGER
+ /* Evaluate whether this is an allow-listed charger */
+ if (pd_charge_from_device(pd_get_identity_vid(port),
+ pd_get_identity_pid(port)))
+ charge_manager_update_dualrole(port, CAP_DEDICATED);
+#endif
break;
}
case VDM_RESULT_NAK: