summaryrefslogtreecommitdiff
path: root/board/dojo/battery.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/dojo/battery.c')
-rw-r--r--board/dojo/battery.c176
1 files changed, 104 insertions, 72 deletions
diff --git a/board/dojo/battery.c b/board/dojo/battery.c
index 72daf4966d..d0b5eb47d2 100644
--- a/board/dojo/battery.c
+++ b/board/dojo/battery.c
@@ -8,119 +8,151 @@
#include "battery_smart.h"
const struct board_batt_params board_battery_info[] = {
- /* Panasonic AP16L5J Battery Information */
- [BATTERY_PANASONIC_AC16L5J] = {
+ /* DynaPack CosMX Battery Information */
+ [BATTERY_DYNAPACK_COS] = {
.fuel_gauge = {
- .manuf_name = "PANASONIC",
- .device_name = "AP16L5J",
+ .manuf_name = "333-2C-DA-A",
.ship_mode = {
- .reg_addr = 0x3A,
- .reg_data = { 0xC574, 0xC574 },
+ .reg_addr = 0x00,
+ .reg_data = { 0x0010, 0x0010 },
},
.fet = {
+ .mfgacc_support = 1,
.reg_addr = 0x0,
- .reg_mask = 0x4000,
+ .reg_mask = 0x0006,
.disconnect_val = 0x0,
- }
+ },
},
.batt_info = {
- .voltage_max = 8800,
- .voltage_normal = 7700,
- .voltage_min = 6000,
- .precharge_current = 256,
- .start_charging_min_c = 0,
- .start_charging_max_c = 50,
- .charging_min_c = 0,
- .charging_max_c = 60,
- .discharging_min_c = -20,
- .discharging_max_c = 75,
+ .voltage_max = 8800, /* mV */
+ .voltage_normal = 7700,
+ .voltage_min = 6000,
+ .precharge_current = 256, /* mA */
+ .start_charging_min_c = 0,
+ .start_charging_max_c = 45,
+ .charging_min_c = 0,
+ .charging_max_c = 45,
+ .discharging_min_c = -10,
+ .discharging_max_c = 60,
},
},
- [BATTERY_PANASONIC_AC16L5J_KT00205009] = {
+
+ /* DynaPack ATL Battery Information */
+ [BATTERY_DYNAPACK_ATL] = {
.fuel_gauge = {
- .manuf_name = "PANASONIC KT00205009",
- .device_name = "AP16L5J",
+ .manuf_name = "333-27-DA-A",
.ship_mode = {
- .reg_addr = 0x3A,
- .reg_data = { 0xC574, 0xC574 },
+ .reg_addr = 0x00,
+ .reg_data = { 0x0010, 0x0010 },
},
.fet = {
+ .mfgacc_support = 1,
.reg_addr = 0x0,
- .reg_mask = 0x4000,
+ .reg_mask = 0x0006,
.disconnect_val = 0x0,
- }
+ },
},
.batt_info = {
- .voltage_max = 8800,
- .voltage_normal = 7700,
- .voltage_min = 6000,
- .precharge_current = 256,
- .start_charging_min_c = 0,
- .start_charging_max_c = 50,
- .charging_min_c = 0,
- .charging_max_c = 60,
- .discharging_min_c = -20,
- .discharging_max_c = 75,
+ .voltage_max = 8800, /* mV */
+ .voltage_normal = 7700,
+ .voltage_min = 6000,
+ .precharge_current = 256, /* mA */
+ .start_charging_min_c = 0,
+ .start_charging_max_c = 45,
+ .charging_min_c = 0,
+ .charging_max_c = 45,
+ .discharging_min_c = -10,
+ .discharging_max_c = 60,
},
},
- /* AP16L8J */
- [BATTERY_AP16L8J] = {
+
+ /* Simplo CosMX Battery Information */
+ [BATTERY_SIMPLO_COS] = {
.fuel_gauge = {
- .manuf_name = "LGC KT0020G010",
- .device_name = "AP16L8J",
+ .manuf_name = "333-1C-DA-A",
.ship_mode = {
- .reg_addr = 0x3A,
- .reg_data = { 0xC574, 0xC574 },
+ .reg_addr = 0x00,
+ .reg_data = { 0x0010, 0x0010 },
},
.fet = {
.mfgacc_support = 1,
.reg_addr = 0x0,
- .reg_mask = 0x0002,
+ .reg_mask = 0x0006,
.disconnect_val = 0x0,
- }
+ },
},
.batt_info = {
- .voltage_max = 8700,
- .voltage_normal = 7500, /* mV */
- .voltage_min = 6000, /* mV */
- .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 = -20,
- .discharging_max_c = 75,
+ .voltage_max = 8800, /* mV */
+ .voltage_normal = 7700,
+ .voltage_min = 6000,
+ .precharge_current = 256, /* mA */
+ .start_charging_min_c = 0,
+ .start_charging_max_c = 45,
+ .charging_min_c = 0,
+ .charging_max_c = 45,
+ .discharging_min_c = -10,
+ .discharging_max_c = 60,
},
},
- /* LGC AP18C8K Battery Information */
- [BATTERY_LGC_AP18C8K] = {
+
+ /* Simplo HIGHPOWER Battery Information */
+ [BATTERY_SIMPLO_HIGHPOWER] = {
.fuel_gauge = {
- .manuf_name = "LGC KT0030G020",
- .device_name = "AP18C8K",
+ .manuf_name = "333-1D-DA-A",
.ship_mode = {
- .reg_addr = 0x3A,
- .reg_data = { 0xC574, 0xC574 },
+ .reg_addr = 0x00,
+ .reg_data = { 0x0010, 0x0010 },
},
.fet = {
- .reg_addr = 0x43,
- .reg_mask = 0x0001,
+ .mfgacc_support = 1,
+ .reg_addr = 0x0,
+ .reg_mask = 0x0006,
+ .disconnect_val = 0x0,
+ },
+ },
+ .batt_info = {
+ .voltage_max = 8800, /* mV */
+ .voltage_normal = 7700,
+ .voltage_min = 6000,
+ .precharge_current = 256, /* mA */
+ .start_charging_min_c = 0,
+ .start_charging_max_c = 45,
+ .charging_min_c = 0,
+ .charging_max_c = 45,
+ .discharging_min_c = -10,
+ .discharging_max_c = 60,
+ },
+ },
+
+ /* CosMX B00C4473A9D0002 Battery Information */
+ [BATTERY_COS] = {
+ .fuel_gauge = {
+ .manuf_name = "333-AC-DA-A",
+ .ship_mode = {
+ .reg_addr = 0x00,
+ .reg_data = { 0x0010, 0x0010 },
+ },
+ .fet = {
+ .mfgacc_support = 1,
+ .reg_addr = 0x0,
+ .reg_mask = 0x0006,
.disconnect_val = 0x0,
},
},
.batt_info = {
- .voltage_max = 13050,
- .voltage_normal = 11250,
- .voltage_min = 9000,
- .precharge_current = 256,
- .start_charging_min_c = 0,
- .start_charging_max_c = 50,
- .charging_min_c = 0,
- .charging_max_c = 60,
- .discharging_min_c = -20,
- .discharging_max_c = 75,
+ .voltage_max = 8800, /* mV */
+ .voltage_normal = 7700,
+ .voltage_min = 6000,
+ .precharge_current = 256, /* mA */
+ .start_charging_min_c = 0,
+ .start_charging_max_c = 45,
+ .charging_min_c = 0,
+ .charging_max_c = 45,
+ .discharging_min_c = -10,
+ .discharging_max_c = 60,
},
},
};
BUILD_ASSERT(ARRAY_SIZE(board_battery_info) == BATTERY_TYPE_COUNT);
-const enum battery_type DEFAULT_BATTERY_TYPE = BATTERY_PANASONIC_AC16L5J;
+const enum battery_type DEFAULT_BATTERY_TYPE = BATTERY_DYNAPACK_COS;