Lines Matching refs:req

75     FSdifMsgRequest req;  member
161 static rt_err_t sdif_pre_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *req) in sdif_pre_request() argument
169 if ((req->cmd->cmd_code == SD_IO_SEND_OP_COND) || in sdif_pre_request()
170 (req->cmd->cmd_code == SD_IO_RW_DIRECT)) in sdif_pre_request()
172 req->cmd->err = -1; in sdif_pre_request()
181 if ((req->cmd->cmd_code == SD_APP_OP_COND) || in sdif_pre_request()
182 (req->cmd->cmd_code == APP_CMD)) in sdif_pre_request()
184 req->cmd->err = -1; in sdif_pre_request()
191 if ((req->cmd->cmd_code == SD_SEND_IF_COND) && in sdif_pre_request()
192 (req->cmd->arg == 0x1AA)) /* 0x1AA is the send_if_cond pattern, use it by care */ in sdif_pre_request()
194 req->cmd->err = -1; in sdif_pre_request()
200 if ((req->cmd->cmd_code == READ_MULTIPLE_BLOCK) || in sdif_pre_request()
201 (req->cmd->cmd_code == WRITE_MULTIPLE_BLOCK)) /* set block count */ in sdif_pre_request()
210 RT_ASSERT(req->data); in sdif_pre_request()
211 sbc_cmd.arg = req->data->blks; in sdif_pre_request()
214 LOG_I("set block_count = %d", req->data->blks); in sdif_pre_request()
223 if (req->cmd->busy_timeout < 1000) /* in case rt-thread do not give wait timeout */ in sdif_pre_request()
225 req->cmd->busy_timeout = 5000; in sdif_pre_request()
294 static uint32_t sdif_prepare_raw_command(struct rt_mmcsd_req *req) in sdif_prepare_raw_command() argument
296 struct rt_mmcsd_cmd *input_cmd = req->cmd; in sdif_prepare_raw_command()
297 struct rt_mmcsd_data *input_data = req->data; in sdif_prepare_raw_command()
350 void sdif_prepare_data_transfer(FSdifMsgDataStartData *msg_data, struct rt_mmcsd_req *req) in sdif_prepare_data_transfer() argument
352 struct rt_mmcsd_cmd *input_cmd = req->cmd; in sdif_prepare_data_transfer()
353 struct rt_mmcsd_data *input_data = req->data; in sdif_prepare_data_transfer()
358 msg_data->raw_cmd = sdif_prepare_raw_command(req); in sdif_prepare_data_transfer()
377 static uint32_t sdif_prepare_sd_command_flags(struct rt_mmcsd_req *req) in sdif_prepare_sd_command_flags() argument
379 struct rt_mmcsd_cmd *input_cmd = req->cmd; in sdif_prepare_sd_command_flags()
462 static uint32_t sdif_prepar_emmc_command_flags(struct rt_mmcsd_req *req) in sdif_prepar_emmc_command_flags() argument
464 struct rt_mmcsd_cmd *input_cmd = req->cmd; in sdif_prepar_emmc_command_flags()
531 void sdif_prepare_command_trasnfer(FSdifMsgDataStartCmd *msg_cmd, struct rt_mmcsd_req *req, rt_uint… in sdif_prepare_command_trasnfer() argument
533 struct rt_mmcsd_cmd *input_cmd = req->cmd; in sdif_prepare_command_trasnfer()
539 msg_cmd->raw_cmd = sdif_prepare_raw_command(req); in sdif_prepare_command_trasnfer()
543 msg_cmd->flags = sdif_prepare_sd_command_flags(req); in sdif_prepare_command_trasnfer()
547 msg_cmd->flags = sdif_prepar_emmc_command_flags(req); in sdif_prepare_command_trasnfer()
553 static void sdif_send_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *req) in sdif_send_request() argument
559 FSdifMsgRequest *request = &host_info->req; in sdif_send_request()
561 rt_err_t err = sdif_pre_request(host, req); in sdif_send_request()
572 if (req->data) in sdif_send_request()
575 req_data->buf = (void *)(req->data->buf); in sdif_send_request()
579 sdif_prepare_data_transfer(&(req_data->datainfo), req); in sdif_send_request()
591 sdif_prepare_command_trasnfer(&(req_cmd->cmdinfo), req, host_info->sd_type); in sdif_send_request()
593 req->cmd->err = sdif_do_transfer(host, request, req->cmd->busy_timeout); in sdif_send_request()
595 if (resp_type(req->cmd) & RESP_MASK) in sdif_send_request()
597 if (resp_type(req->cmd) == RESP_R2) in sdif_send_request()
599 req->cmd->resp[3] = req_cmd->response[3]; in sdif_send_request()
600 req->cmd->resp[2] = req_cmd->response[2]; in sdif_send_request()
601 req->cmd->resp[1] = req_cmd->response[1]; in sdif_send_request()
602 req->cmd->resp[0] = req_cmd->response[0]; in sdif_send_request()
606 req->cmd->resp[0] = req_cmd->response[0]; in sdif_send_request()