1*53ee8cc1Swenshuai.xi #ifndef _API_MBX_H 2*53ee8cc1Swenshuai.xi #define _API_MBX_H 3*53ee8cc1Swenshuai.xi 4*53ee8cc1Swenshuai.xi #ifdef __cplusplus 5*53ee8cc1Swenshuai.xi extern "C" 6*53ee8cc1Swenshuai.xi { 7*53ee8cc1Swenshuai.xi #endif 8*53ee8cc1Swenshuai.xi 9*53ee8cc1Swenshuai.xi #include "MsTypes.h" 10*53ee8cc1Swenshuai.xi 11*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_Init(MBX_CPU_ID eHKCPU, MBX_ROLE_ID eHostRole, MS_U32 u32TimeoutMillSecs); 12*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_DeInit(MS_BOOL bForceDiscardPendingMsg); 13*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_RegisterMSG(MBX_Class eMsgClass, MS_U16 u16MsgQueueSize); 14*53ee8cc1Swenshuai.xi // MBX_Result MApi_MBX_RegisterMSGWithCallBack(MBX_Class eMsgClass, MS_U16 u16MsgQueueSize, MBX_QUEUE_STATUS_NOTIFY_FUNC notifier); 15*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_RegisterMSGWithCallBack(MBX_Class eMsgClass, MS_U16 u16MsgQueueSize, MBX_MAIL_ARRIVE_NOTIFY_FUNC notifier); 16*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_UnRegisterMSG(MBX_Class eMsgClass, MS_BOOL bForceDiscardMsgQueue); 17*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_ClearMSG(MBX_Class eMsgClass); 18*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_SendMsg(MBX_Msg *pMsg); 19*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_GetMsgQueueStatus(MBX_Class eTargetClass, MBX_MSGQ_Status *pMsgQueueStatus); 20*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_RecvMsg(MBX_Class eTargetClass, MBX_Msg *pMsg, MS_U32 u32WaitMillSecs, MS_U32 u32Flag); 21*53ee8cc1Swenshuai.xi // MBX_Result MApi_MBX_CheckMsg(MBX_Class eTargetClass, MBX_Msg *pMsg, MS_U32 u32WaitMillSecs, MS_U32 u32Flag); 22*53ee8cc1Swenshuai.xi // MBX_Result MApi_MBX_SendMsgLoopback(MBX_Msg *pMsg, MBX_ROLE_ID eSrcRoleId); 23*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_Enable(MS_BOOL bEnable);//Enable receiving regisited messages in kernel 24*53ee8cc1Swenshuai.xi // MBX_Result MApi_MBX_RemoveLatestMsg(void); 25*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_QueryDynamicClass(MBX_ROLE_ID eRoleID, char *name, MS_U8 *pmbx_class); 26*53ee8cc1Swenshuai.xi MBX_Result MApi_MBX_GenerateDynamicClass(MBX_ROLE_ID eRoleID, char *name, MS_U8 *pmbx_class); 27*53ee8cc1Swenshuai.xi 28*53ee8cc1Swenshuai.xi #ifdef __cplusplus 29*53ee8cc1Swenshuai.xi } 30*53ee8cc1Swenshuai.xi #endif 31*53ee8cc1Swenshuai.xi 32*53ee8cc1Swenshuai.xi #endif 33*53ee8cc1Swenshuai.xi 34