diff options
author | Anton Staaf <robotboy@chromium.org> | 2015-02-09 10:53:58 -0800 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2015-02-10 23:07:25 +0000 |
commit | f154f32f9ed483bc974c7a0f21ed641cf308a7b0 (patch) | |
tree | 83ad5f62812f02f93180cdb9d7d6e13114a0f5a4 | |
parent | 98345fdfc1c89d77f429c6a2ed9bdef1bfc1e1ab (diff) | |
download | chrome-ec-f154f32f9ed483bc974c7a0f21ed641cf308a7b0.tar.gz |
CCD: Enable CCD when a debug peripheral is detected
This includes an additional call to board_set_usb_mux to
ensure that the USB lines are correctly muxed for Case
Closed Debugging to work.
Signed-off-by: Anton Staaf <robotboy@chromium.org>
BRANCH=None
BUG=None
TEST=make buildall -j
Change-Id: I80694a1bc6cabb9c2ac2437552a68210855e94f0
Reviewed-on: https://chromium-review.googlesource.com/247722
Trybot-Ready: Anton Staaf <robotboy@chromium.org>
Tested-by: Anton Staaf <robotboy@chromium.org>
Reviewed-by: Vic Yang <victoryang@chromium.org>
Commit-Queue: Anton Staaf <robotboy@chromium.org>
-rw-r--r-- | common/usb_pd_protocol.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/common/usb_pd_protocol.c b/common/usb_pd_protocol.c index 77329ef5a4..c8004d3daf 100644 --- a/common/usb_pd_protocol.c +++ b/common/usb_pd_protocol.c @@ -6,6 +6,7 @@ #include "adc.h" #include "battery.h" #include "board.h" +#include "case_closed_debug.h" #include "charge_manager.h" #include "chipset.h" #include "common.h" @@ -1987,6 +1988,16 @@ void pd_task(void) /* Remove VBUS */ pd_power_supply_reset(port); #endif + +#ifdef CONFIG_USBC_SS_MUX + board_set_usb_mux(port, TYPEC_MUX_USB, + pd[port].polarity); +#endif + +#ifdef CONFIG_CASE_CLOSED_DEBUG + if (new_cc_state == PD_CC_DEBUG_ACC) + ccd_set_mode(CCD_MODE_ENABLED); +#endif set_state(port, PD_STATE_SRC_ACCESSORY); } break; @@ -2003,6 +2014,9 @@ void pd_task(void) (pd[port].cc_state == PD_CC_DEBUG_ACC && (!CC_RD(cc1_volt) || !CC_RD(cc2_volt)))) { set_state(port, PD_STATE_SRC_DISCONNECTED); +#ifdef CONFIG_CASE_CLOSED_DEBUG + ccd_set_mode(CCD_MODE_DISABLED); +#endif timeout = 10*MSEC; } break; |