summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/banjo/battery.c44
-rw-r--r--board/banjo/board.h2
2 files changed, 18 insertions, 28 deletions
diff --git a/board/banjo/battery.c b/board/banjo/battery.c
index af5c275e05..3f13a431d7 100644
--- a/board/banjo/battery.c
+++ b/board/banjo/battery.c
@@ -12,20 +12,23 @@
#include "host_command.h"
#include "util.h"
-/* Shutdown mode parameter to write to manufacturer access register */
-#define SB_SHUTDOWN_DATA 0x0010
+#define SB_SHIP_MODE_ADDR 0x3a
+#define SB_SHIP_MODE_DATA 0xc574
+/* Values for 48Wh 4UAF495780-1-T1186/AC011353-PRR14G01 battery */
static const struct battery_info info = {
- .voltage_max = 12900, /* mV */
- .voltage_normal = 11400,
- .voltage_min = 9000,
- .precharge_current = 256, /* mA */
- .start_charging_min_c = 0,
- .start_charging_max_c = 50,
- .charging_min_c = 0,
- .charging_max_c = 60,
- .discharging_min_c = 0,
- .discharging_max_c = 75,
+
+ .voltage_max = 17200,
+ .voltage_normal = 15200, /* Average of max & min */
+ .voltage_min = 12000,
+ /* Pre-charge values. */
+ .precharge_current = 256, /* mA */
+ .start_charging_min_c = 0,
+ .start_charging_max_c = 50,
+ .charging_min_c = 0,
+ .charging_max_c = 60,
+ .discharging_min_c = 0,
+ .discharging_max_c = 40,
};
const struct battery_info *battery_get_info(void)
@@ -33,29 +36,16 @@ const struct battery_info *battery_get_info(void)
return &info;
}
-static int cutoff(void)
-{
- int rv;
-
- /* Ship mode command must be sent twice to take effect */
- rv = sb_write(SB_MANUFACTURER_ACCESS, SB_SHUTDOWN_DATA);
-
- if (rv != EC_SUCCESS)
- return rv;
-
- return sb_write(SB_MANUFACTURER_ACCESS, SB_SHUTDOWN_DATA);
-}
-
static int battery_command_cut_off(struct host_cmd_handler_args *args)
{
- return cutoff() ? EC_RES_ERROR : EC_RES_SUCCESS;
+ return sb_write(SB_SHIP_MODE_ADDR, SB_SHIP_MODE_DATA);
}
DECLARE_HOST_COMMAND(EC_CMD_BATTERY_CUT_OFF, battery_command_cut_off,
EC_VER_MASK(0));
static int command_battcutoff(int argc, char **argv)
{
- return cutoff();
+ return sb_write(SB_SHIP_MODE_ADDR, SB_SHIP_MODE_DATA);
}
DECLARE_CONSOLE_COMMAND(battcutoff, command_battcutoff,
NULL,
diff --git a/board/banjo/board.h b/board/banjo/board.h
index bacb748b35..9697bf08a8 100644
--- a/board/banjo/board.h
+++ b/board/banjo/board.h
@@ -14,7 +14,7 @@
#define CONFIG_BATTERY_SMART
#define CONFIG_BOARD_VERSION
#define CONFIG_CHARGER
-#define CONFIG_CHARGER_BQ24715
+#define CONFIG_CHARGER_BQ24717
#define CONFIG_CHARGER_DISCHARGE_ON_AC
#define CONFIG_CHARGER_INPUT_CURRENT 2176 /* 45 W adapter, 19 V, 2A */
#define CONFIG_CHARGER_SENSE_RESISTOR 10 /* Charge sense resistor, mOhm */