fizz: Enable charge_manager safe mode and never leave it

Fizz has no battery, so any port / ILIM selection logic that could lead
to de-powering the device should be relaxed.

BUG=b:68953563
BRANCH=None
TEST=Boot fizz with both zinger and barrel charger, verify no panic /
brownout occurs.

Change-Id: I3bf353f5a26fe6210c67f8ee3f785012d4c063f0
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/756924
Commit-Ready: Shawn N <shawnn@chromium.org>
Tested-by: Shawn N <shawnn@chromium.org>
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
This commit is contained in:
Shawn Nematbakhsh
2017-11-07 09:18:00 -08:00
committed by chrome-bot
parent 887e3962ca
commit bdb3f44ef2
2 changed files with 10 additions and 1 deletions

View File

@@ -67,7 +67,6 @@
/* Charger */
#define CONFIG_CHARGE_MANAGER
#undef CONFIG_CHARGE_MANAGER_SAFE_MODE
#define CONFIG_CHARGER_LIMIT_POWER_THRESH_CHG_MW 50000

View File

@@ -219,6 +219,16 @@ int pd_custom_vdm(int port, int cnt, uint32_t *payload,
return 0;
}
/*
* Since fizz has no battery, it must source all of its power from either
* USB-C or the barrel jack (preferred). Fizz operates in continuous safe
* mode (charge_manager_leave_safe_mode() will never be called), which
* modifies port / ILIM selection as follows:
*
* - Dual-role / dedicated capability of the port partner is ignored.
* - Charge ceiling on PD voltage transition is ignored.
* - CHARGE_PORT_NONE will never be selected.
*/
static void board_charge_manager_init(void)
{
int input_voltage;