diff options
-rw-r--r-- | board/servo_v4/usb_pd_policy.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/board/servo_v4/usb_pd_policy.c b/board/servo_v4/usb_pd_policy.c index a54393d9b5..4a318a91e8 100644 --- a/board/servo_v4/usb_pd_policy.c +++ b/board/servo_v4/usb_pd_policy.c @@ -64,6 +64,12 @@ #define CONFIG_DRPDTS(c) CONFIG_SET_CLEAR(c, \ CC_ALLOW_SRC | CC_ENABLE_DRP, \ CC_DISABLE_DTS | CC_SNK_WITH_PD) +#define CONFIG_DTSOFF(c) CONFIG_SET_CLEAR(c, \ + CC_DISABLE_DTS, \ + 0) +#define CONFIG_DTSON(c) CONFIG_SET_CLEAR(c, \ + 0, \ + CC_DISABLE_DTS) /* Macros to apply Rd/Rp to CC lines */ #define DUT_ACTIVE_CC_SET(r, flags) \ @@ -1132,6 +1138,10 @@ static int command_cc(int argc, char **argv) cc_config_new = CONFIG_PDSNKDTS(cc_config_new); else if (!strcasecmp(argv[1], "drpdts")) cc_config_new = CONFIG_DRPDTS(cc_config_new); + else if (!strcasecmp(argv[1], "dtsoff")) + cc_config_new = CONFIG_DTSOFF(cc_config_new); + else if (!strcasecmp(argv[1], "dtson")) + cc_config_new = CONFIG_DTSON(cc_config_new); else return EC_ERROR_PARAM2; } @@ -1150,7 +1160,7 @@ static int command_cc(int argc, char **argv) } DECLARE_CONSOLE_COMMAND(cc, command_cc, "[off|on|src|snk|pdsnk|drp|srcdts|snkdts|pdsnkdts|" - "drpdts] [cc1|cc2]", + "drpdts|dtsoff|dtson] [cc1|cc2]", "Servo_v4 DTS and CHG mode"); static void fake_disconnect_end(void) |