FreeCalypso > hg > fc-selenite
diff src/cs/drivers/drv_app/pwr/pwr_messages_i.c @ 0:b6a5e36de839
src/cs: initial import from Magnetite
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 15 Jul 2018 04:39:26 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/cs/drivers/drv_app/pwr/pwr_messages_i.c Sun Jul 15 04:39:26 2018 +0000 @@ -0,0 +1,65 @@ +/******************************************************************************* + * + * pwr_messages_i.c + * + * Purpose: Contains functions used by PWR SWE to send events to the SPI task. + * + * + * Author Candice Bazanegue (c-brille@ti.com) + * + * (C) Texas Instruments 2001 + * + ******************************************************************************/ + +#include "rv/rv_defined_swe.h" // for RVM_PWR_SWE + +#ifdef RVM_PWR_SWE + +#include "rvm/rvm_use_id_list.h" +#include "rvf/rvf_api.h" +#include "pwr/pwr_messages_i.h" +#include "pwr/pwr_env.h" +#include "spi/spi_env.h" + + +/********************************************************************************/ +/* */ +/* Function Name: pwr_spi_battery_info */ +/* */ +/* Purpose: This function is used to send a PWR_SPI_INFO_BATTERY_EVT */ +/* message to the SPI task. */ +/* */ +/********************************************************************************/ +T_RV_RET pwr_spi_battery_info(CALLBACK_FUNC CallBack) +{ + T_RV_HDR *msgPtr; + + /* check if the driver has been started */ + if (pwr_env_ctrl_blk == NULL) + return (RVM_NOT_READY); + + if(SPI_GBL_INFO_PTR->SpiTaskReady == FALSE) + return(RVM_NOT_READY); + + if (rvf_get_buf (pwr_env_ctrl_blk->prim_id, sizeof (T_RV_HDR),(void **) &msgPtr) == RVF_RED) + { + rvf_send_trace ("PWR ERROR: Not enough memory", + 28, + NULL_PARAM, + RV_TRACE_LEVEL_ERROR, + PWR_USE_ID); + + return (RV_MEMORY_ERR); + } + + msgPtr->msg_id = PWR_SPI_INFO_BATTERY_EVT; + msgPtr->dest_addr_id = pwr_env_ctrl_blk->addr_id; + msgPtr->callback_func = (CALLBACK_FUNC) CallBack; + + rvf_send_msg (pwr_env_ctrl_blk->addr_id, msgPtr); + + return (RV_OK); +} + +#endif /* #ifdef RVM_PWR_SWE */ +