Skip to content

Commit

Permalink
u8500-charger: Delay for USB enumeration
Browse files Browse the repository at this point in the history
If charging is started before USB enumeration of an Accessory
Charger Adapter has finished, the AB8500 will generate a
VBUS_ERROR. This in turn results in timeouts and delays the
enumeration with around 15 seconds. This patch delays the
charging and then ramps currents slowly to avoid VBUS errors.
The delay allows the enumeration to have finished before
charging is turned on.

Signed-off-by: Martin Sjoblom <martin.w.sjoblom@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Tested-by: Jonas ABERG <jonas.aberg@stericsson.com>
  • Loading branch information
Paer-Olof Haakansson authored and Lee Jones committed Jan 23, 2013
1 parent 97034a1 commit 34c11a7
Show file tree
Hide file tree
Showing 2 changed files with 331 additions and 107 deletions.
6 changes: 6 additions & 0 deletions drivers/mfd/ab8500-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -749,6 +749,12 @@ static struct resource ab8500_charger_resources[] = {
.end = AB8500_INT_CH_WD_EXP,
.flags = IORESOURCE_IRQ,
},
{
.name = "VBUS_CH_DROP_END",
.start = AB8500_INT_VBUS_CH_DROP_END,
.end = AB8500_INT_VBUS_CH_DROP_END,
.flags = IORESOURCE_IRQ,
},
};

static struct resource ab8500_btemp_resources[] = {
Expand Down
Loading

0 comments on commit 34c11a7

Please sign in to comment.