void SysUsbRpc_GenReq(InterTaskMsg_t *msg) { UInt32 cid, tid; Boolean rsp = FALSE; if(!msg) { Log_DebugPrintf(LOGID_USB, "%s SysUsbRpc_GenReq: Null Msg\n", PROC_TYPE); return; } cid = *(UInt32 *)&msg->sender[0]; tid = *(UInt32 *)&msg->sender[4]; // Log_DebugPrintf(LOGID_USB, "%s SysUsbRpc_GenReq: Msg:%p type:%d", PROC_TYPE, msg, msg->msgType); if(sSysUsbRpc_Handler) rsp = sSysUsbRpc_Handler(msg); if(rsp) { IPC_SendInterTask_RSP(tid, cid, msg); FreeInterTaskMsg(msg); } }
Boolean SysUsbAp_MsgHandler(InterTaskMsg_t *msg) { Boolean result = 0; Boolean rsp = TRUE; SYS_TRACE("AP SysUsbAp_MsgHandler msg:%p", msg); Log_EnableLogging(LOGID_USB,TRUE); if(!msg) { Log_DebugPrintf(LOGID_USB, "%s SysUsbAp_MsgHandler: NULL msg!!\n", PROC_TYPE); return FALSE; } switch(msg->msgType) { case USB_IPC_MSC_INIT: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_INIT call ipcMsc_Init", PROC_TYPE); break; case USB_IPC_MSC_UNINIT: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_UNINIT Nothing to do", PROC_TYPE); break; case USB_IPC_MSC_MEDIA_INSERT: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_MEDIA_INSERT ", PROC_TYPE); sysMscRpc_Insert(msg); break; case USB_IPC_MSC_MEDIA_MOUNT: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_MEDIA_MOUNT ", PROC_TYPE); sysMscRpc_Mount(msg); rsp = FALSE; break; case USB_IPC_MSC_MEDIA_REMOVE: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_MEDIA_REMOVE ", PROC_TYPE); sysMscRpc_Remove(msg); break; case USB_IPC_MSC_DEVICE_ATTACH: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_DEVICE_ATTACH Nothing to do", PROC_TYPE); break; case USB_IPC_MSC_DEVICE_DETACH: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_DEVICE_DETACH Nothing to do", PROC_TYPE); break; case USB_IPC_MSC_READ: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_READ Nothing to do", PROC_TYPE); break; case USB_IPC_MSC_WRITE: Log_DebugPrintf(LOGID_USB, "%s USB_IPC_MSC_WRITE Nothing to do", PROC_TYPE); break; #if defined (ENABLE_USB_MEGASIM) case USB_IPC_EEM_CTRL: { usbEemCtrl_t *ctrl = (usbEemCtrl_t *)msg->dataBuf; Log_DebugPrintf(LOGID_SYSEEMRPC, "EEM_Task MSG USB_IPC_EEM_CTRL Recvd EEM Msg:%d Value:%d", ctrl->msg, ctrl->value); result = JusbAdapter_SendMsg(0, (USB_MSG_TYPES)ctrl->msg, &ctrl->value, sizeof(ctrl->value)); FreeInterTaskMsg(msg); rsp = FALSE; break; } case USB_IPC_NOTIFY: Log_DebugPrintf(LOGID_USB, "%s usb cb USB_IPC_NOTIFY val:%d ", PROC_TYPE, *(UInt32 *)msg->dataBuf); if(sysUsbRpcNotifyCb) { sysUsbRpcNotifyCb(*(UInt32 *)msg->dataBuf); } break; #endif default: Log_DebugPrintf(LOGID_USB, "%s USB msg Default Type:%d len:%d buf:%p", PROC_TYPE, msg->msgType, msg->dataLength, msg->dataBuf); } if(!result) { Log_DebugPrintf(LOGID_USB, "%s USB JusbAdapter_SendMsg failed type:%d", PROC_TYPE, msg->msgType); } return rsp; }