diff options
author | Ikjoon Jang <ikjn@chromium.org> | 2020-06-17 13:56:48 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-06-19 10:33:44 +0000 |
commit | 4df277da323b87bebb27209971670e6862d6f435 (patch) | |
tree | 6d6fa0dc76decb34530d754d4e81e48447dd51af /baseboard | |
parent | 46b89211e0480f7acf8d1cb832aac2e20827a48e (diff) | |
download | chrome-ec-4df277da323b87bebb27209971670e6862d6f435.tar.gz |
baseboard/kukui: Do not consider FET states in battery presence check
When Juniper is powered up with fully drained LGC battery, its FET
states indicates battery is disconnected even it's still i2c responsive.
In MT8183 platform, !battery_is_presence() isn't blocking power on,
this function does not need to return BP_NO when battery is i2c
responsive but DFET state is off.
This patch fixes the problem of sbs-battery probe fail from host side
when a device is powered up from external power source with fully
drained battery reporting DFET state is off.
BUG=b:153710351
TEST=none
BRANCH=none
Signed-off-by: Ikjoon Jang <ikjn@chromium.org>
Change-Id: I67b750b7586fcad149c65e88e73dcbd872ca76bc
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2247972
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
Diffstat (limited to 'baseboard')
-rw-r--r-- | baseboard/kukui/battery_smart.c | 12 | ||||
-rw-r--r-- | baseboard/kukui/battery_smart.h | 20 |
2 files changed, 3 insertions, 29 deletions
diff --git a/baseboard/kukui/battery_smart.c b/baseboard/kukui/battery_smart.c index 3cd8facd5e..ba2af17443 100644 --- a/baseboard/kukui/battery_smart.c +++ b/baseboard/kukui/battery_smart.c @@ -16,7 +16,7 @@ enum battery_present batt_pres_prev = BP_NOT_SURE; /* * Physical detection of battery. */ -__overridable enum battery_present battery_check_present_status(void) +static enum battery_present battery_check_present_status(void) { enum battery_present batt_pres = BP_NOT_SURE; @@ -49,14 +49,8 @@ __overridable enum battery_present battery_check_present_status(void) if (battery_get_disconnect_state() == BATTERY_DISCONNECT_ERROR) return BP_NOT_SURE; - /* - * Ensure that battery is: - * 1. Not in cutoff - * 2. Not disconnected - * 3. Initialized - */ - if (battery_is_cut_off() != BATTERY_CUTOFF_STATE_NORMAL || - battery_get_disconnect_state() != BATTERY_NOT_DISCONNECTED) + /* Ensure the battery is not in cutoff state */ + if (battery_is_cut_off() != BATTERY_CUTOFF_STATE_NORMAL) return BP_NO; return batt_pres; diff --git a/baseboard/kukui/battery_smart.h b/baseboard/kukui/battery_smart.h deleted file mode 100644 index 2171bfb95d..0000000000 --- a/baseboard/kukui/battery_smart.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2019 The Chromium OS Authors. All rights reserved. - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - * - * Battery pack vendor provided charging profile - */ - -#ifndef __CROS_EC_BATTERY_SMART_H -#define __CROS_EC_BATTERY_SMART_H - -#include "battery.h" - -/* - * Physical detection of battery. - */ -__override_proto enum battery_present battery_check_present_status(void); - -extern enum battery_present batt_pres_prev; - -#endif /* __CROS_EC_BATTERY_SMART_H */ |