static u32 vcd_close_in_ready (struct vcd_drv_ctxt *drv_ctxt, struct vcd_clnt_ctxt *cctxt) { u32 rc; VCD_MSG_LOW("vcd_close_in_dev_ready:"); if (cctxt->clnt_state.state_table->ev_hdlr.close) { rc = cctxt->clnt_state.state_table->ev_hdlr. close(cctxt); } else { VCD_MSG_ERROR("Unsupported API in client state %d", cctxt->clnt_state.state); rc = VCD_ERR_BAD_STATE; } if (!VCD_FAILED(rc)) vcd_handle_for_last_clnt_close(&drv_ctxt->dev_ctxt, true); return rc; }
static u32 vcd_close_in_ready (struct vcd_drv_ctxt_type_t *p_drv_ctxt, struct vcd_clnt_ctxt_type_t *p_cctxt) { u32 rc; VCD_MSG_LOW("vcd_close_in_dev_ready:"); if (p_cctxt->clnt_state.p_state_table->ev_hdlr.pf_close) { rc = p_cctxt->clnt_state.p_state_table->ev_hdlr. pf_close(p_cctxt); } else { VCD_MSG_ERROR("Unsupported API in client state %d", p_cctxt->clnt_state.e_state); rc = VCD_ERR_BAD_STATE; } if (!VCD_FAILED(rc)) vcd_handle_for_last_clnt_close(&p_drv_ctxt->dev_ctxt, TRUE); return rc; }