diff options
Diffstat (limited to 'common/usbc/usb_pd_dpm.c')
-rw-r--r-- | common/usbc/usb_pd_dpm.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/common/usbc/usb_pd_dpm.c b/common/usbc/usb_pd_dpm.c index 9b42119bef..b1e6bad468 100644 --- a/common/usbc/usb_pd_dpm.c +++ b/common/usbc/usb_pd_dpm.c @@ -474,3 +474,16 @@ __overridable int dpm_get_source_pdo(const uint32_t **src_pdo, const int port) *src_pdo = pd_src_pdo; return pd_src_pdo_cnt; } + +int dpm_get_source_current(const int port) +{ + if (pd_get_power_role(port) == PD_ROLE_SINK) + return 0; + + if (max_current_claimed & BIT(port)) + return 3000; + else if (CONFIG_USB_PD_PULLUP == TYPEC_RP_1A5) + return 1500; + else + return 500; +} |