diff options
-rw-r--r-- | common/charge_state_v2.c | 3 | ||||
-rw-r--r-- | common/charger_base.c | 7 | ||||
-rw-r--r-- | include/charger_base.h | 4 |
3 files changed, 11 insertions, 3 deletions
diff --git a/common/charge_state_v2.c b/common/charge_state_v2.c index a570f00ab9..bd52a682f5 100644 --- a/common/charge_state_v2.c +++ b/common/charge_state_v2.c @@ -1106,8 +1106,9 @@ static void charger_setup(const struct charger_info *info) chg_ctl_mode = CHARGE_CONTROL_NORMAL; shutdown_target_time.val = 0UL; battery_seems_dead = 0; + if (IS_ENABLED(CONFIG_EC_EC_COMM_BATTERY_CLIENT)) + charger_base_setup(); #ifdef CONFIG_EC_EC_COMM_BATTERY_CLIENT - base_responsive = 0; curr.input_voltage = CHARGE_VOLTAGE_UNINITIALIZED; battery_dynamic[BATT_IDX_BASE].flags = EC_BATT_FLAG_INVALID_DATA; charge_base = -1; diff --git a/common/charger_base.c b/common/charger_base.c index af76b1f51c..127229068c 100644 --- a/common/charger_base.c +++ b/common/charger_base.c @@ -21,7 +21,7 @@ #define CPRINTF(format, args...) cprintf(CC_CHARGER, format, ##args) /* Base has responded to one of our commands already. */ -int base_responsive; +static int base_responsive; int charge_base; int prev_charge_base; static int prev_current_base; @@ -642,5 +642,10 @@ DECLARE_CONSOLE_COMMAND(chgdualdebug, command_chgdualdebug, "[charge (auto|<current>)|discharge (auto|<current>)]", "Manually control dual-battery charging algorithm."); +void charger_base_setup(void) +{ + base_responsive = 0; +} + /* Reset the base on S5->S0 transition. */ DECLARE_HOOK(HOOK_CHIPSET_STARTUP, board_base_reset, HOOK_PRIO_DEFAULT); diff --git a/include/charger_base.h b/include/charger_base.h index 2f9a589e05..511ec2b4ab 100644 --- a/include/charger_base.h +++ b/include/charger_base.h @@ -12,7 +12,6 @@ struct charge_state_data; -extern int base_responsive; extern int charge_base; extern int prev_charge_base; @@ -42,4 +41,7 @@ bool base_connected(void) } #endif +/* Set up the charger task for the base */ +void charger_base_setup(void); + #endif /* __CROS_EC_CHARGER_BASE_H */ |