summaryrefslogtreecommitdiff
path: root/driver/battery/max17055.h
diff options
context:
space:
mode:
authorTom Hughes <tomhughes@chromium.org>2022-09-21 14:08:36 -0700
committerTom Hughes <tomhughes@chromium.org>2022-09-22 12:59:38 -0700
commitc453fd704268ef72de871b0c5ac7a989de662334 (patch)
treefcf6ce5810f9ff9e3c8cce434812dd75492269ed /driver/battery/max17055.h
parent6c1587ca70f558b4f96b3f0b18ad8b027d3ba99d (diff)
parent28712dae9d7ed1e694f7622cc083afa71090d4d5 (diff)
downloadchrome-ec-firmware-fpmcu-dartmonkey-release.tar.gz
Merge remote-tracking branch cros/main into firmware-fpmcu-dartmonkey-releasefirmware-fpmcu-dartmonkey-release
Generated by: ./util/update_release_branch.py --board dartmonkey --relevant_paths_file ./util/fingerprint-relevant-paths.txt firmware-fpmcu-dartmonkey-release Relevant changes: git log --oneline 6c1587ca70..28712dae9d -- board/nocturne_fp board/dartmonkey common/fpsensor docs/fingerprint driver/fingerprint util/getversion.sh ded9307b79 util/getversion.sh: Fix version when not in a git repo 956055e692 board: change Google USB vendor info 71b2ef709d Update license boilerplate text in source code files 33e11afda0 Revert "fpsensor: Build fpsensor source file with C++" c8d0360723 fpsensor: Build fpsensor source file with C++ bc113abd53 fpsensor: Fix g++ compiler error 150a58a0dc fpsensor: Fix fp_set_sensor_mode return type b33b5ce85b fpsensor: Remove nested designators for C++ compatibility 2e864b2539 tree-wide: const-ify argv for console commands 56d8b360f9 test: Add test for get ikm failure when seed not set 3a3d6c3690 test: Add test for fpsensor trivial key failure 233e6bbd08 fpsensor_crypto: Abstract calls to hmac_SHA256 0a041b285b docs/fingerprint: Typo correction c03fab67e2 docs/fingerprint: Fix the path of fputils.py 0b5d4baf5a util/getversion.sh: Fix empty file list handling 6e128fe760 FPMCU dev board environment with Satlab 3eb29b6aa5 builtin: Move ssize_t to sys/types.h 345d62ebd1 docs/fingerprint: Update power numbers for latest dartmonkey release c25ffdb316 common: Conditionally support printf %l and %i modifiers 9a3c514b45 test: Add a test to check if the debugger is connected 54e603413f Move standard library tests to their own file 43fa6b4bf8 docs/fingerprint: Update power numbers for latest bloonchipper release 25536f9a84 driver/fingerprint/fpc/bep/fpc_sensor_spi.c: Format with clang-format 4face99efd driver/fingerprint/fpc/libfp/fpc_sensor_pal.h: Format with clang-format 738de2b575 trng: Rename rand to trng_rand 14b8270edd docs/fingerprint: Update dragonclaw power numbers 0b268f93d1 driver/fingerprint/fpc/libfp/fpc_private.c: Format with clang-format f80da163f2 driver/fingerprint/fpc/libfp/fpc_private.h: Format with clang-format a0751778f4 board/nocturne_fp/ro_workarounds.c: Format with clang-format 5e9c85c9b1 driver/fingerprint/fpc/libfp/fpc_sensor_pal.c: Format with clang-format c1f9dd3cf8 driver/fingerprint/fpc/libfp/fpc_bio_algorithm.h: Format with clang-format eb1e1bed8d driver/fingerprint/fpc/libfp/fpc1145_private.h: Format with clang-format 6e7b611821 driver/fingerprint/fpc/bep/fpc_bio_algorithm.h: Format with clang-format e0589cd5e2 driver/fingerprint/fpc/bep/fpc1035_private.h: Format with clang-format 58f0246dbe board/nocturne_fp/board_ro.c: Format with clang-format 7905e556a0 common/fpsensor/fpsensor_crypto.c: Format with clang-format 21289d170c driver/fingerprint/fpc/bep/fpc1025_private.h: Format with clang-format 98a20f937e common/fpsensor/fpsensor_state.c: Format with clang-format a2d255d8af common/fpsensor/fpsensor.c: Format with clang-format 84e53a65da board/nocturne_fp/board.h: Format with clang-format 73055eeb3f driver/fingerprint/fpc/bep/fpc_private.c: Format with clang-format 0f7b5cb509 common/fpsensor/fpsensor_private.h: Format with clang-format 1ceade6e65 driver/fingerprint/fpc/bep/fpc_private.h: Format with clang-format dca9d74321 Revert "trng: Rename rand to trng_rand" a6b0b3554f trng: Rename rand to trng_rand 28d0b75b70 third_party/boringssl: Remove unused header BRANCH=None BUG=b:244387210 b:242720240 b:215613183 b:242720910 b:236386294 BUG=b:234181908 b:244781166 b:234781655 b:234143158 b:234181908 BUG=b:237344361 b:236025198 b:234181908 b:180945056 chromium:1098010 BUG=b:246424843 b:234181908 b:131913998 TEST=`make -j buildall` TEST=./util/run_device_tests.py --board dartmonkey Test "aes": PASSED Test "cec": PASSED Test "cortexm_fpu": PASSED Test "crc": PASSED Test "flash_physical": PASSED Test "flash_write_protect": PASSED Test "fpsensor_hw": PASSED Test "fpsensor_spi_ro": PASSED Test "fpsensor_spi_rw": PASSED Test "fpsensor_uart_ro": PASSED Test "fpsensor_uart_rw": PASSED Test "mpu_ro": PASSED Test "mpu_rw": PASSED Test "mutex": PASSED Test "pingpong": PASSED Test "printf": PASSED Test "queue": PASSED Test "rollback_region0": PASSED Test "rollback_region1": PASSED Test "rollback_entropy": PASSED Test "rtc": PASSED Test "sha256": PASSED Test "sha256_unrolled": PASSED Test "static_if": PASSED Test "stdlib": PASSED Test "system_is_locked_wp_on": PASSED Test "system_is_locked_wp_off": PASSED Test "timer_dos": PASSED Test "utils": PASSED Test "utils_str": PASSED Test "panic_data_dartmonkey_v2.0.2887": PASSED Test "panic_data_nocturne_fp_v2.2.64": PASSED Test "panic_data_nami_fp_v2.2.144": PASSED Force-Relevant-Builds: all Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: I2c312583a709fedae8fe11d92c22328c3b634bc7
Diffstat (limited to 'driver/battery/max17055.h')
-rw-r--r--driver/battery/max17055.h187
1 files changed, 93 insertions, 94 deletions
diff --git a/driver/battery/max17055.h b/driver/battery/max17055.h
index 0f97fb90f0..6828ed6502 100644
--- a/driver/battery/max17055.h
+++ b/driver/battery/max17055.h
@@ -1,4 +1,4 @@
-/* Copyright 2017 The Chromium OS Authors. All rights reserved.
+/* Copyright 2017 The ChromiumOS Authors
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*
@@ -8,105 +8,105 @@
#ifndef __CROS_EC_MAX17055_H
#define __CROS_EC_MAX17055_H
-#define MAX17055_ADDR_FLAGS 0x36
-#define MAX17055_DEVICE_ID 0x4010
-#define MAX17055_OCV_TABLE_SIZE 48
-
-#define REG_STATUS 0x00
-#define REG_VALRTTH 0x01
-#define REG_TALRTTH 0x02
-#define REG_SALRTTH 0x03
-#define REG_AT_RATE 0x04
-#define REG_REMAINING_CAPACITY 0x05
-#define REG_STATE_OF_CHARGE 0x06
-#define REG_TEMPERATURE 0x08
-#define REG_VOLTAGE 0x09
-#define REG_CURRENT 0x0a
-#define REG_AVERAGE_CURRENT 0x0b
-#define REG_MIXCAP 0x0f
-#define REG_FULL_CHARGE_CAPACITY 0x10
-#define REG_TIME_TO_EMPTY 0x11
-#define REG_QR_TABLE00 0x12
-#define REG_CONFIG 0x1D
-#define REG_AVERAGE_TEMPERATURE 0x16
-#define REG_CYCLE_COUNT 0x17
-#define REG_DESIGN_CAPACITY 0x18
-#define REG_AVERAGE_VOLTAGE 0x19
-#define REG_MAX_MIN_TEMP 0x1a
-#define REG_MAX_MIN_VOLT 0x1b
-#define REG_MAX_MIN_CURR 0x1c
-#define REG_CHARGE_TERM_CURRENT 0x1e
-#define REG_TIME_TO_FULL 0x20
-#define REG_DEVICE_NAME 0x21
-#define REG_QR_TABLE10 0x22
-#define REG_FULLCAPNOM 0x23
-#define REG_LEARNCFG 0x28
-#define REG_QR_TABLE20 0x32
-#define REG_RCOMP0 0x38
-#define REG_TEMPCO 0x39
-#define REG_EMPTY_VOLTAGE 0x3a
-#define REG_FSTAT 0x3d
-#define REG_TIMER 0x3e
-#define REG_QR_TABLE30 0x42
-#define REG_DQACC 0x45
-#define REG_DPACC 0x46
-#define REG_VFSOC0 0x48
-#define REG_COMMAND 0x60
-#define REG_LOCK1 0x62
-#define REG_LOCK2 0x63
-#define REG_OCV_TABLE_START 0x80
-#define REG_STATUS2 0xb0
-#define REG_IALRTTH 0xb4
-#define REG_HIBCFG 0xba
-#define REG_CONFIG2 0xbb
-#define REG_TIMERH 0xbe
-#define REG_MODELCFG 0xdb
-#define REG_VFSOC 0xff
+#define MAX17055_ADDR_FLAGS 0x36
+#define MAX17055_DEVICE_ID 0x4010
+#define MAX17055_OCV_TABLE_SIZE 48
+
+#define REG_STATUS 0x00
+#define REG_VALRTTH 0x01
+#define REG_TALRTTH 0x02
+#define REG_SALRTTH 0x03
+#define REG_AT_RATE 0x04
+#define REG_REMAINING_CAPACITY 0x05
+#define REG_STATE_OF_CHARGE 0x06
+#define REG_TEMPERATURE 0x08
+#define REG_VOLTAGE 0x09
+#define REG_CURRENT 0x0a
+#define REG_AVERAGE_CURRENT 0x0b
+#define REG_MIXCAP 0x0f
+#define REG_FULL_CHARGE_CAPACITY 0x10
+#define REG_TIME_TO_EMPTY 0x11
+#define REG_QR_TABLE00 0x12
+#define REG_CONFIG 0x1D
+#define REG_AVERAGE_TEMPERATURE 0x16
+#define REG_CYCLE_COUNT 0x17
+#define REG_DESIGN_CAPACITY 0x18
+#define REG_AVERAGE_VOLTAGE 0x19
+#define REG_MAX_MIN_TEMP 0x1a
+#define REG_MAX_MIN_VOLT 0x1b
+#define REG_MAX_MIN_CURR 0x1c
+#define REG_CHARGE_TERM_CURRENT 0x1e
+#define REG_TIME_TO_FULL 0x20
+#define REG_DEVICE_NAME 0x21
+#define REG_QR_TABLE10 0x22
+#define REG_FULLCAPNOM 0x23
+#define REG_LEARNCFG 0x28
+#define REG_QR_TABLE20 0x32
+#define REG_RCOMP0 0x38
+#define REG_TEMPCO 0x39
+#define REG_EMPTY_VOLTAGE 0x3a
+#define REG_FSTAT 0x3d
+#define REG_TIMER 0x3e
+#define REG_QR_TABLE30 0x42
+#define REG_DQACC 0x45
+#define REG_DPACC 0x46
+#define REG_VFSOC0 0x48
+#define REG_COMMAND 0x60
+#define REG_LOCK1 0x62
+#define REG_LOCK2 0x63
+#define REG_OCV_TABLE_START 0x80
+#define REG_STATUS2 0xb0
+#define REG_IALRTTH 0xb4
+#define REG_HIBCFG 0xba
+#define REG_CONFIG2 0xbb
+#define REG_TIMERH 0xbe
+#define REG_MODELCFG 0xdb
+#define REG_VFSOC 0xff
/* Status reg (0x00) flags */
-#define STATUS_POR BIT(1)
-#define STATUS_IMN BIT(2)
-#define STATUS_BST BIT(3)
-#define STATUS_IMX BIT(6)
-#define STATUS_VMN BIT(8)
-#define STATUS_TMN BIT(9)
-#define STATUS_SMN BIT(10)
-#define STATUS_VMX BIT(12)
-#define STATUS_TMX BIT(13)
-#define STATUS_SMX BIT(14)
-#define STATUS_ALL_ALRT \
- (STATUS_IMN | STATUS_IMX | STATUS_VMN | STATUS_VMX | STATUS_TMN | \
+#define STATUS_POR BIT(1)
+#define STATUS_IMN BIT(2)
+#define STATUS_BST BIT(3)
+#define STATUS_IMX BIT(6)
+#define STATUS_VMN BIT(8)
+#define STATUS_TMN BIT(9)
+#define STATUS_SMN BIT(10)
+#define STATUS_VMX BIT(12)
+#define STATUS_TMX BIT(13)
+#define STATUS_SMX BIT(14)
+#define STATUS_ALL_ALRT \
+ (STATUS_IMN | STATUS_IMX | STATUS_VMN | STATUS_VMX | STATUS_TMN | \
STATUS_TMX | STATUS_SMN | STATUS_SMX)
/* Alert disable values (0x01, 0x02, 0x03, 0xb4) */
-#define VALRT_DISABLE 0xff00
-#define TALRT_DISABLE 0x7f80
-#define SALRT_DISABLE 0xff00
-#define IALRT_DISABLE 0x7f80
+#define VALRT_DISABLE 0xff00
+#define TALRT_DISABLE 0x7f80
+#define SALRT_DISABLE 0xff00
+#define IALRT_DISABLE 0x7f80
/* Config reg (0x1d) flags */
-#define CONF_AEN BIT(2)
-#define CONF_IS BIT(11)
-#define CONF_VS BIT(12)
-#define CONF_TS BIT(13)
-#define CONF_SS BIT(14)
-#define CONF_TSEL BIT(15)
-#define CONF_ALL_STICKY (CONF_IS | CONF_VS | CONF_TS | CONF_SS)
+#define CONF_AEN BIT(2)
+#define CONF_IS BIT(11)
+#define CONF_VS BIT(12)
+#define CONF_TS BIT(13)
+#define CONF_SS BIT(14)
+#define CONF_TSEL BIT(15)
+#define CONF_ALL_STICKY (CONF_IS | CONF_VS | CONF_TS | CONF_SS)
/* FStat reg (0x3d) flags */
-#define FSTAT_DNR 0x0001
-#define FSTAT_FQ 0x0080
+#define FSTAT_DNR 0x0001
+#define FSTAT_FQ 0x0080
/* Config2 reg (0xbb) flags */
-#define CONFIG2_LDMDL BIT(5)
+#define CONFIG2_LDMDL BIT(5)
/* ModelCfg reg (0xdb) flags */
-#define MODELCFG_REFRESH BIT(15)
-#define MODELCFG_VCHG BIT(10)
+#define MODELCFG_REFRESH BIT(15)
+#define MODELCFG_VCHG BIT(10)
/* Smart battery status bits (sbs reg 0x16) */
-#define BATTERY_DISCHARGING 0x40
-#define BATTERY_FULLY_CHARGED 0x20
+#define BATTERY_DISCHARGING 0x40
+#define BATTERY_FULLY_CHARGED 0x20
/*
* Before we have the battery fully characterized, we use these macros to
@@ -125,28 +125,27 @@
* VE. max17055 reenables empty detection when the cell voltage rises above VR.
* VE ranges from 0 to 5110mV, and VR ranges from 0 to 5080mV.
*/
-#define MAX17055_VEMPTY_REG(ve_mv, vr_mv) \
- (((ve_mv / 10) << 7) | (vr_mv / 40))
+#define MAX17055_VEMPTY_REG(ve_mv, vr_mv) (((ve_mv / 10) << 7) | (vr_mv / 40))
#define MAX17055_MAX_MIN_REG(mx, mn) ((((int16_t)(mx)) << 8) | ((mn)))
/* Converts voltages alert range for VALRTTH_REG */
#define MAX17055_VALRTTH_RESOLUTION 20
-#define MAX17055_VALRTTH_REG(mx, mn) \
- MAX17055_MAX_MIN_REG((uint8_t)(mx / MAX17055_VALRTTH_RESOLUTION), \
+#define MAX17055_VALRTTH_REG(mx, mn) \
+ MAX17055_MAX_MIN_REG((uint8_t)(mx / MAX17055_VALRTTH_RESOLUTION), \
(uint8_t)(mn / MAX17055_VALRTTH_RESOLUTION))
/* Converts temperature alert range for TALRTTH_REG */
-#define MAX17055_TALRTTH_REG(mx, mn) \
+#define MAX17055_TALRTTH_REG(mx, mn) \
MAX17055_MAX_MIN_REG((int8_t)(mx), (int8_t)(mn))
/* Converts state-of-charge alert range for SALRTTH_REG */
-#define MAX17055_SALRTTH_REG(mx, mn) \
+#define MAX17055_SALRTTH_REG(mx, mn) \
MAX17055_MAX_MIN_REG((uint8_t)(mx), (uint8_t)(mn))
/* Converts current alert range for IALRTTH_REG */
/* Current resolution: 0.4mV/RSENSE */
#define MAX17055_IALRTTH_MUL (10 * BATTERY_MAX17055_RSENSE)
#define MAX17055_IALRTTH_DIV 4
-#define MAX17055_IALRTTH_REG(mx, mn) \
- MAX17055_MAX_MIN_REG( \
- (int8_t)(mx * MAX17055_IALRTTH_MUL / MAX17055_IALRTTH_DIV), \
+#define MAX17055_IALRTTH_REG(mx, mn) \
+ MAX17055_MAX_MIN_REG( \
+ (int8_t)(mx * MAX17055_IALRTTH_MUL / MAX17055_IALRTTH_DIV), \
(int8_t)(mn * MAX17055_IALRTTH_MUL / MAX17055_IALRTTH_DIV))
/*