firefly: add VBUS detection

Enable the VBUS detection to be able to re-negociate a PD contract when
we are losing power.
The VBUS_WAKE GPIO is broken on the current hardware (not triggered when
VBUS is 5V), so we fall back on using the ADC on VBUS_SENSE.

Signed-off-by: Vincent Palatin <vpalatin@chromium.org>

BRANCH=none
BUG=none
TEST=With a Firefly connected to a Zinger,"fault" the power supply to
get it to turn off its output. See Firefly detecting the cut-off and
re-negotiating voltage.

Change-Id: Ia5f0734cbd8f20d84ce170cea191410bb72a87c3
Reviewed-on: https://chromium-review.googlesource.com/206944
Tested-by: Vincent Palatin <vpalatin@chromium.org>
Reviewed-by: Alec Berg <alecaberg@chromium.org>
Commit-Queue: Vincent Palatin <vpalatin@chromium.org>
This commit is contained in:
Vincent Palatin
2014-07-07 19:20:35 -07:00
committed by chrome-internal-fetch
parent 3becb4c5c3
commit eaddeb502e

View File

@@ -107,7 +107,8 @@ static inline int pd_adc_read(int cc)
static inline int pd_snk_is_vbus_provided(void)
{
return 1;
/* VBUS_WAKE is broken (not detecting 5V), use the ADC instead */
return adc_read_channel(ADC_CH_VBUS_SENSE) > 4000;
}
/* Standard-current DFP : no-connect voltage is 1.55V */