static int ping_mdm_cb_func(struct msm_rpc_client *client, void *buffer, int in_size) { int rc = 0; struct rpc_request_hdr *req; req = (struct rpc_request_hdr *)buffer; switch (be32_to_cpu(req->procedure)) { case PING_MDM_CB_PROC: rc = ping_mdm_register_cb(client, buffer, in_size); break; case PING_MDM_DATA_CB_PROC: rc = ping_mdm_data_cb(client, buffer, in_size); break; default: pr_err("%s: procedure not supported %d\n", __func__, be32_to_cpu(req->procedure)); msm_rpc_start_accepted_reply(client, be32_to_cpu(req->xid), RPC_ACCEPTSTAT_PROC_UNAVAIL); rc = msm_rpc_send_accepted_reply(client, 0); if (rc) pr_err("%s: sending reply failed: %d\n", __func__, rc); break; } return rc; }
static int ping_mdm_cb_func(struct msm_rpc_client *client, struct rpc_request_hdr *req, struct msm_rpc_xdr *xdr) { int rc = 0; switch (req->procedure) { case PING_MDM_CB_PROC: rc = ping_mdm_register_cb(client, xdr); break; case PING_MDM_DATA_CB_PROC: rc = ping_mdm_data_cb(client, xdr); break; default: pr_err("%s: procedure not supported %d\n", __func__, req->procedure); xdr_start_accepted_reply(xdr, RPC_ACCEPTSTAT_PROC_UNAVAIL); rc = xdr_send_msg(xdr); if (rc) pr_err("%s: sending reply failed: %d\n", __func__, rc); break; } return rc; }