FreeCalypso > hg > fc-tourmaline
view src/cs/drivers/drv_app/fchg/bsim_etm_cmd.h @ 261:841a848ba762
SPI SWE: clear any pending boot-time interrupts in spi_init()
Charger plug/unplug hw logic in the Iota ABB has no built-in debouncing,
thus electrical contact bounce on the charging power connection interface
produces a lot of charger plug/unplug interrupts. When we boot in
charging mode (charging power present at boot time and is presumably
the cause of Switch-ON), some bounce may occur between the initial
Iota Switch-ON action and Calypso firmware booting. By clearing any
accumulated ITSTATREG interrupts on boot, we prevent these pre-boot
interrupts from generating charger plug/unplug events to FCHG, which
would upset smooth from-boot charging.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 14 May 2021 02:49:05 +0000 |
parents | aec644728174 |
children |
line wrap: on
line source
/* * This header file defines ETM commands that can be sent from a * development host to FCHG operating in BSIM mode. */ #ifndef __BSIM_ETM_CMD_H #define __BSIM_ETM_CMD_H /* ETM_BSIM command opcodes */ #define BSIM_CMD_QUERY 0x00 #define BSIM_CMD_DISCHARGE 0x01 /* 1 byte with battery % follows */ #define BSIM_CMD_CHG_START 0x02 #define BSIM_CMD_CHG_CI2CV 0x03 #define BSIM_CMD_CHG_COMPLETE 0x04 #define BSIM_CMD_SET_ICHG 0x05 /* 2 bytes of Ichg value follow */ #define BSIM_CMD_START_ENABLE 0x06 /* 1 byte with flag follows */ /* status response codes */ #define BSIM_STAT_OK 0x00 #define BSIM_ERR_BAD_CMD 0x02 #define BSIM_ERR_WRONG_STATE 0x03 #define BSIM_ERR_INV_PERCENT 0x04 #define BSIM_ERR_INV_DISCHARGE 0x05 #endif /* include guard */