Lines Matching refs:ic
409 struct mmc_ioc_cmd ic; member
431 if (copy_from_user(&idata->ic, user, sizeof(idata->ic))) { in mmc_blk_ioctl_copy_from_user()
436 idata->buf_bytes = (u64) idata->ic.blksz * idata->ic.blocks; in mmc_blk_ioctl_copy_from_user()
448 idata->ic.data_ptr, idata->buf_bytes); in mmc_blk_ioctl_copy_from_user()
465 struct mmc_ioc_cmd *ic = &idata->ic; in mmc_blk_ioctl_copy_to_user() local
467 if (copy_to_user(&(ic_ptr->response), ic->response, in mmc_blk_ioctl_copy_to_user()
468 sizeof(ic->response))) in mmc_blk_ioctl_copy_to_user()
471 if (!idata->ic.write_flag) { in mmc_blk_ioctl_copy_to_user()
472 if (copy_to_user((void __user *)(unsigned long)ic->data_ptr, in mmc_blk_ioctl_copy_to_user()
517 cmd.opcode = idata->ic.opcode; in __mmc_blk_ioctl_cmd()
518 cmd.arg = idata->ic.arg; in __mmc_blk_ioctl_cmd()
519 cmd.flags = idata->ic.flags; in __mmc_blk_ioctl_cmd()
524 data.blksz = idata->ic.blksz; in __mmc_blk_ioctl_cmd()
525 data.blocks = idata->ic.blocks; in __mmc_blk_ioctl_cmd()
529 if (idata->ic.write_flag) in __mmc_blk_ioctl_cmd()
538 if (idata->ic.data_timeout_ns) in __mmc_blk_ioctl_cmd()
539 data.timeout_ns = idata->ic.data_timeout_ns; in __mmc_blk_ioctl_cmd()
550 if (idata->ic.is_acmd) { in __mmc_blk_ioctl_cmd()
563 sbc.arg = data.blocks | (idata->ic.write_flag & BIT(31)); in __mmc_blk_ioctl_cmd()
565 sbc.arg = prev_idata->ic.arg; in __mmc_blk_ioctl_cmd()
572 return mmc_sanitize(card, idata->ic.cmd_timeout_ms); in __mmc_blk_ioctl_cmd()
575 busy_timeout_ms = idata->ic.cmd_timeout_ms ? : MMC_BLK_TIMEOUT_MS; in __mmc_blk_ioctl_cmd()
581 memcpy(&idata->ic.response, cmd.resp, sizeof(cmd.resp)); in __mmc_blk_ioctl_cmd()
584 memcpy(&prev_idata->ic.response, sbc.resp, sizeof(sbc.resp)); in __mmc_blk_ioctl_cmd()
637 if (idata->ic.postsleep_min_us) in __mmc_blk_ioctl_cmd()
638 usleep_range(idata->ic.postsleep_min_us, idata->ic.postsleep_max_us); in __mmc_blk_ioctl_cmd()
641 if (idata->ic.write_flag || r1b_resp || cmd.flags & MMC_RSP_SPI_BUSY) in __mmc_blk_ioctl_cmd()
652 if (idata->rpmb || idata->ic.write_flag || r1b_resp) { in __mmc_blk_ioctl_cmd()
660 idata->ic.response[0] = cb_data.status; in __mmc_blk_ioctl_cmd()
694 idata->ic.write_flag ? REQ_OP_DRV_OUT : REQ_OP_DRV_IN, 0); in mmc_blk_ioctl_cmd()
767 idata[0]->ic.write_flag ? REQ_OP_DRV_OUT : REQ_OP_DRV_IN, 0); in mmc_blk_ioctl_multi_cmd()
1089 if (idata[i - 1]->ic.opcode == MMC_SET_BLOCK_COUNT && in mmc_blk_check_sbc()
1090 mmc_op_multi(idata[i]->ic.opcode)) { in mmc_blk_check_sbc()
2822 idata->ic.opcode = opcode; in set_idata()
2823 idata->ic.flags = MMC_RSP_R1 | MMC_CMD_ADTC; in set_idata()
2824 idata->ic.write_flag = write_flag; in set_idata()
2825 idata->ic.blksz = RPMB_FRAME_SIZE; in set_idata()
2826 idata->ic.blocks = buf_bytes / idata->ic.blksz; in set_idata()