Lines Matching refs:cmd

181 		struct sdmmc_command cmd;  in sdmmc_mem_enable()  local
183 memset(&cmd, 0, sizeof(cmd)); in sdmmc_mem_enable()
184 cmd.c_arg = 0; in sdmmc_mem_enable()
185 cmd.c_flags = SCF_CMD_AC | SCF_RSP_R1; in sdmmc_mem_enable()
186 cmd.c_opcode = SD_VOLTAGE_SWITCH; in sdmmc_mem_enable()
188 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_enable()
251 struct sdmmc_command cmd; in sdmmc_mem_scan() local
267 bzero(&cmd, sizeof cmd); in sdmmc_mem_scan()
268 cmd.c_opcode = MMC_ALL_SEND_CID; in sdmmc_mem_scan()
269 cmd.c_flags = SCF_CMD_BCR | SCF_RSP_R2; in sdmmc_mem_scan()
271 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_scan()
294 bcopy(cmd.c_resp, sf->raw_cid, sizeof sf->raw_cid); in sdmmc_mem_scan()
334 bzero(&cmd, sizeof cmd); in sdmmc_mem_scan()
335 cmd.c_opcode = MMC_SEND_CSD; in sdmmc_mem_scan()
336 cmd.c_arg = MMC_ARG_RCA(sf->rca); in sdmmc_mem_scan()
337 cmd.c_flags = SCF_CMD_AC | SCF_RSP_R2; in sdmmc_mem_scan()
339 if (sdmmc_mmc_command(sc, &cmd) != 0) { in sdmmc_mem_scan()
344 if (sdmmc_decode_csd(sc, cmd.c_resp, sf) != 0 || in sdmmc_mem_scan()
462 struct sdmmc_command cmd; in sdmmc_mem_send_scr() local
471 memset(&cmd, 0, sizeof(cmd)); in sdmmc_mem_send_scr()
472 cmd.c_data = ptr; in sdmmc_mem_send_scr()
473 cmd.c_datalen = datalen; in sdmmc_mem_send_scr()
474 cmd.c_blklen = datalen; in sdmmc_mem_send_scr()
475 cmd.c_arg = 0; in sdmmc_mem_send_scr()
476 cmd.c_flags = SCF_CMD_ADTC | SCF_CMD_READ | SCF_RSP_R1; in sdmmc_mem_send_scr()
477 cmd.c_opcode = SD_APP_SEND_SCR; in sdmmc_mem_send_scr()
479 error = sdmmc_app_command(sc, &cmd); in sdmmc_mem_send_scr()
524 struct sdmmc_command cmd; in sdmmc_mem_send_cxd_data() local
532 memset(&cmd, 0, sizeof(cmd)); in sdmmc_mem_send_cxd_data()
533 cmd.c_data = ptr; in sdmmc_mem_send_cxd_data()
534 cmd.c_datalen = datalen; in sdmmc_mem_send_cxd_data()
535 cmd.c_blklen = datalen; in sdmmc_mem_send_cxd_data()
536 cmd.c_opcode = opcode; in sdmmc_mem_send_cxd_data()
537 cmd.c_arg = 0; in sdmmc_mem_send_cxd_data()
538 cmd.c_flags = SCF_CMD_ADTC | SCF_CMD_READ; in sdmmc_mem_send_cxd_data()
540 SET(cmd.c_flags, SCF_RSP_R1); in sdmmc_mem_send_cxd_data()
542 SET(cmd.c_flags, SCF_RSP_R2); in sdmmc_mem_send_cxd_data()
544 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_send_cxd_data()
557 struct sdmmc_command cmd; in sdmmc_mem_set_bus_width() local
560 memset(&cmd, 0, sizeof(cmd)); in sdmmc_mem_set_bus_width()
561 cmd.c_opcode = SD_APP_SET_BUS_WIDTH; in sdmmc_mem_set_bus_width()
562 cmd.c_flags = SCF_RSP_R1 | SCF_CMD_AC; in sdmmc_mem_set_bus_width()
566 cmd.c_arg = SD_ARG_BUS_WIDTH_1; in sdmmc_mem_set_bus_width()
570 cmd.c_arg = SD_ARG_BUS_WIDTH_4; in sdmmc_mem_set_bus_width()
577 error = sdmmc_app_command(sc, &cmd); in sdmmc_mem_set_bus_width()
588 struct sdmmc_command cmd; in sdmmc_mem_sd_switch() local
607 memset(&cmd, 0, sizeof(cmd)); in sdmmc_mem_sd_switch()
608 cmd.c_data = ptr; in sdmmc_mem_sd_switch()
609 cmd.c_datalen = statlen; in sdmmc_mem_sd_switch()
610 cmd.c_blklen = statlen; in sdmmc_mem_sd_switch()
611 cmd.c_opcode = SD_SEND_SWITCH_FUNC; in sdmmc_mem_sd_switch()
612 cmd.c_arg = in sdmmc_mem_sd_switch()
614 cmd.c_flags = SCF_CMD_ADTC | SCF_CMD_READ | SCF_RSP_R1; in sdmmc_mem_sd_switch()
616 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_sd_switch()
632 struct sdmmc_command cmd; in sdmmc_mem_mmc_switch() local
634 memset(&cmd, 0, sizeof(cmd)); in sdmmc_mem_mmc_switch()
635 cmd.c_opcode = MMC_SWITCH; in sdmmc_mem_mmc_switch()
636 cmd.c_arg = (MMC_SWITCH_MODE_WRITE_BYTE << 24) | in sdmmc_mem_mmc_switch()
638 cmd.c_flags = SCF_RSP_R1B | SCF_CMD_AC; in sdmmc_mem_mmc_switch()
640 return sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_mmc_switch()
1042 struct sdmmc_command cmd; in sdmmc_mem_send_op_cond() local
1054 bzero(&cmd, sizeof cmd); in sdmmc_mem_send_op_cond()
1055 cmd.c_arg = ocr; in sdmmc_mem_send_op_cond()
1056 cmd.c_flags = SCF_CMD_BCR | SCF_RSP_R3; in sdmmc_mem_send_op_cond()
1059 cmd.c_opcode = SD_APP_OP_COND; in sdmmc_mem_send_op_cond()
1060 error = sdmmc_app_command(sc, &cmd); in sdmmc_mem_send_op_cond()
1062 cmd.c_arg &= ~MMC_OCR_ACCESS_MODE_MASK; in sdmmc_mem_send_op_cond()
1063 cmd.c_arg |= MMC_OCR_ACCESS_MODE_SECTOR; in sdmmc_mem_send_op_cond()
1064 cmd.c_opcode = MMC_SEND_OP_COND; in sdmmc_mem_send_op_cond()
1065 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_send_op_cond()
1069 if (ISSET(MMC_R3(cmd.c_resp), MMC_OCR_MEM_READY) || in sdmmc_mem_send_op_cond()
1076 *ocrp = MMC_R3(cmd.c_resp); in sdmmc_mem_send_op_cond()
1088 struct sdmmc_command cmd; in sdmmc_mem_set_blocklen() local
1092 bzero(&cmd, sizeof cmd); in sdmmc_mem_set_blocklen()
1093 cmd.c_opcode = MMC_SET_BLOCKLEN; in sdmmc_mem_set_blocklen()
1094 cmd.c_arg = sf->csd.sector_size; in sdmmc_mem_set_blocklen()
1095 cmd.c_flags = SCF_CMD_AC | SCF_RSP_R1; in sdmmc_mem_set_blocklen()
1099 return sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_set_blocklen()
1107 struct sdmmc_command cmd; in sdmmc_mem_read_block_subr() local
1114 bzero(&cmd, sizeof cmd); in sdmmc_mem_read_block_subr()
1115 cmd.c_data = data; in sdmmc_mem_read_block_subr()
1116 cmd.c_datalen = datalen; in sdmmc_mem_read_block_subr()
1117 cmd.c_blklen = sf->csd.sector_size; in sdmmc_mem_read_block_subr()
1118 cmd.c_opcode = (datalen / cmd.c_blklen) > 1 ? in sdmmc_mem_read_block_subr()
1121 cmd.c_arg = blkno; in sdmmc_mem_read_block_subr()
1123 cmd.c_arg = blkno << 9; in sdmmc_mem_read_block_subr()
1124 cmd.c_flags = SCF_CMD_ADTC | SCF_CMD_READ | SCF_RSP_R1; in sdmmc_mem_read_block_subr()
1125 cmd.c_dmamap = dmap; in sdmmc_mem_read_block_subr()
1127 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_read_block_subr()
1132 cmd.c_opcode == MMC_READ_BLOCK_MULTIPLE) { in sdmmc_mem_read_block_subr()
1133 bzero(&cmd, sizeof cmd); in sdmmc_mem_read_block_subr()
1134 cmd.c_opcode = MMC_STOP_TRANSMISSION; in sdmmc_mem_read_block_subr()
1135 cmd.c_arg = MMC_ARG_RCA(sf->rca); in sdmmc_mem_read_block_subr()
1136 cmd.c_flags = SCF_CMD_AC | SCF_RSP_R1B; in sdmmc_mem_read_block_subr()
1137 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_read_block_subr()
1143 bzero(&cmd, sizeof cmd); in sdmmc_mem_read_block_subr()
1144 cmd.c_opcode = MMC_SEND_STATUS; in sdmmc_mem_read_block_subr()
1145 cmd.c_arg = MMC_ARG_RCA(sf->rca); in sdmmc_mem_read_block_subr()
1146 cmd.c_flags = SCF_CMD_AC | SCF_RSP_R1; in sdmmc_mem_read_block_subr()
1147 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_read_block_subr()
1151 } while (!ISSET(MMC_R1(cmd.c_resp), MMC_R1_READY_FOR_DATA)); in sdmmc_mem_read_block_subr()
1223 struct sdmmc_command cmd; in sdmmc_mem_write_block_subr() local
1229 bzero(&cmd, sizeof cmd); in sdmmc_mem_write_block_subr()
1230 cmd.c_data = data; in sdmmc_mem_write_block_subr()
1231 cmd.c_datalen = datalen; in sdmmc_mem_write_block_subr()
1232 cmd.c_blklen = sf->csd.sector_size; in sdmmc_mem_write_block_subr()
1233 cmd.c_opcode = (datalen / cmd.c_blklen) > 1 ? in sdmmc_mem_write_block_subr()
1236 cmd.c_arg = blkno; in sdmmc_mem_write_block_subr()
1238 cmd.c_arg = blkno << 9; in sdmmc_mem_write_block_subr()
1239 cmd.c_flags = SCF_CMD_ADTC | SCF_RSP_R1; in sdmmc_mem_write_block_subr()
1240 cmd.c_dmamap = dmap; in sdmmc_mem_write_block_subr()
1242 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_write_block_subr()
1247 cmd.c_opcode == MMC_WRITE_BLOCK_MULTIPLE) { in sdmmc_mem_write_block_subr()
1248 bzero(&cmd, sizeof cmd); in sdmmc_mem_write_block_subr()
1249 cmd.c_opcode = MMC_STOP_TRANSMISSION; in sdmmc_mem_write_block_subr()
1250 cmd.c_flags = SCF_CMD_AC | SCF_RSP_R1B; in sdmmc_mem_write_block_subr()
1251 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_write_block_subr()
1257 bzero(&cmd, sizeof cmd); in sdmmc_mem_write_block_subr()
1258 cmd.c_opcode = MMC_SEND_STATUS; in sdmmc_mem_write_block_subr()
1259 cmd.c_arg = MMC_ARG_RCA(sf->rca); in sdmmc_mem_write_block_subr()
1260 cmd.c_flags = SCF_CMD_AC | SCF_RSP_R1; in sdmmc_mem_write_block_subr()
1261 error = sdmmc_mmc_command(sc, &cmd); in sdmmc_mem_write_block_subr()
1265 } while (!ISSET(MMC_R1(cmd.c_resp), MMC_R1_READY_FOR_DATA)); in sdmmc_mem_write_block_subr()