FreeCalypso > hg > fc-magnetite
diff src/cs/drivers/drv_app/pwr/pwr_messages_i.c @ 145:246f4a7dd92b
src/cs/drivers/drv_app/pwr: import from MV100 source
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 09 Oct 2016 05:59:14 +0000 |
parents | |
children | c93a236e0d50 |
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 Oct 09 05:59:14 2016 +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_defined_swe.h" // for RVM_PWR_SWE + +#ifdef RVM_PWR_SWE + +#include "rvm_use_id_list.h" +#include "rvf_api.h" +#include "pwr_messages_i.h" +#include "pwr_env.h" +#include "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 */ +