FreeCalypso > hg > fc-tourmaline
view src/cs/drivers/drv_app/rtc/rtc_process.c @ 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 | 4e78acac3d88 |
children |
line wrap: on
line source
/********************************************************************************/ /* */ /* File Name: rtc_process.c */ /* */ /* Purpose: This file contains routine(s) that dispatch and process */ /* message(s) received from other entity */ /* */ /* Note: None. */ /* */ /* Revision History: */ /* 03/22/01 Laurent Sollier Create. */ /* */ /* (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved */ /* */ /********************************************************************************/ #include "rvf/rvf_api.h" #include "rv/rv_general.h" #include "rvm/rvm_use_id_list.h" #include "rtc/rtc_messages_i.h" #include "rtc/rtc_i.h" void rtc_process(T_RV_HDR * msg_ptr) { switch (msg_ptr->msg_id) { case RTC_ALARM_EVT: rvf_send_trace("RTC: received RTC_ALARM event",29, NULL_PARAM, RV_TRACE_LEVEL_DEBUG_MEDIUM, RTC_USE_ID ); RTC_ProcessAlarmEvent(); /* free memory used for the RTC message */ break; default: /* Unknow message has been received */ rvf_send_trace("RTC: Message received unknown",29, NULL_PARAM, RV_TRACE_LEVEL_ERROR, RTC_USE_ID ); break; } }