printf("CMD_SEND:%d\n", cmd->cmdidx);
        printf("\t\tARG\t\t\t 0x%08X\n", cmd->cmdarg);
-       printf("\t\tFLAG\t\t\t %d\n", cmd->flags);
        ret = mmc->send_cmd(mmc, cmd, data);
        switch (cmd->resp_type) {
                case MMC_RSP_NONE:
        cmd.resp_type = MMC_RSP_R1;
        if (!mmc_host_is_spi(mmc))
                cmd.cmdarg = mmc->rca << 16;
-       cmd.flags = 0;
 
        do {
                err = mmc_send_cmd(mmc, &cmd, NULL);
        cmd.cmdidx = MMC_CMD_SET_BLOCKLEN;
        cmd.resp_type = MMC_RSP_R1;
        cmd.cmdarg = len;
-       cmd.flags = 0;
 
        return mmc_send_cmd(mmc, &cmd, NULL);
 }
        cmd.cmdidx = start_cmd;
        cmd.cmdarg = start;
        cmd.resp_type = MMC_RSP_R1;
-       cmd.flags = 0;
 
        err = mmc_send_cmd(mmc, &cmd, NULL);
        if (err)
                cmd.cmdarg = start * mmc->write_bl_len;
 
        cmd.resp_type = MMC_RSP_R1;
-       cmd.flags = 0;
 
        data.src = src;
        data.blocks = blkcnt;
                cmd.cmdidx = MMC_CMD_STOP_TRANSMISSION;
                cmd.cmdarg = 0;
                cmd.resp_type = MMC_RSP_R1b;
-               cmd.flags = 0;
                if (mmc_send_cmd(mmc, &cmd, NULL)) {
                        printf("mmc fail to send stop cmd\n");
                        return 0;
                cmd.cmdarg = start * mmc->read_bl_len;
 
        cmd.resp_type = MMC_RSP_R1;
-       cmd.flags = 0;
 
        data.dest = dst;
        data.blocks = blkcnt;
                cmd.cmdidx = MMC_CMD_STOP_TRANSMISSION;
                cmd.cmdarg = 0;
                cmd.resp_type = MMC_RSP_R1b;
-               cmd.flags = 0;
                if (mmc_send_cmd(mmc, &cmd, NULL)) {
                        printf("mmc fail to send stop cmd\n");
                        return 0;
        cmd.cmdidx = MMC_CMD_GO_IDLE_STATE;
        cmd.cmdarg = 0;
        cmd.resp_type = MMC_RSP_NONE;
-       cmd.flags = 0;
 
        err = mmc_send_cmd(mmc, &cmd, NULL);
 
                cmd.cmdidx = MMC_CMD_APP_CMD;
                cmd.resp_type = MMC_RSP_R1;
                cmd.cmdarg = 0;
-               cmd.flags = 0;
 
                err = mmc_send_cmd(mmc, &cmd, NULL);
 
                cmd.cmdidx = MMC_CMD_SPI_READ_OCR;
                cmd.resp_type = MMC_RSP_R3;
                cmd.cmdarg = 0;
-               cmd.flags = 0;
 
                err = mmc_send_cmd(mmc, &cmd, NULL);
 
        cmd.cmdidx = MMC_CMD_SEND_OP_COND;
        cmd.resp_type = MMC_RSP_R3;
        cmd.cmdarg = 0;
-       cmd.flags = 0;
 
        err = mmc_send_cmd(mmc, &cmd, NULL);
 
                if (mmc->host_caps & MMC_MODE_HC)
                        cmd.cmdarg |= OCR_HCS;
 
-               cmd.flags = 0;
-
                err = mmc_send_cmd(mmc, &cmd, NULL);
 
                if (err)
                cmd.cmdidx = MMC_CMD_SPI_READ_OCR;
                cmd.resp_type = MMC_RSP_R3;
                cmd.cmdarg = 0;
-               cmd.flags = 0;
 
                err = mmc_send_cmd(mmc, &cmd, NULL);
 
        cmd.cmdidx = MMC_CMD_SEND_EXT_CSD;
        cmd.resp_type = MMC_RSP_R1;
        cmd.cmdarg = 0;
-       cmd.flags = 0;
 
        data.dest = ext_csd;
        data.blocks = 1;
        cmd.cmdarg = (MMC_SWITCH_MODE_WRITE_BYTE << 24) |
                                 (index << 16) |
                                 (value << 8);
-       cmd.flags = 0;
 
        ret = mmc_send_cmd(mmc, &cmd, NULL);
 
        cmd.cmdarg = (mode << 31) | 0xffffff;
        cmd.cmdarg &= ~(0xf << (group * 4));
        cmd.cmdarg |= value << (group * 4);
-       cmd.flags = 0;
 
        data.dest = (char *)resp;
        data.blocksize = 64;
        cmd.cmdidx = MMC_CMD_APP_CMD;
        cmd.resp_type = MMC_RSP_R1;
        cmd.cmdarg = mmc->rca << 16;
-       cmd.flags = 0;
 
        err = mmc_send_cmd(mmc, &cmd, NULL);
 
        cmd.cmdidx = SD_CMD_APP_SEND_SCR;
        cmd.resp_type = MMC_RSP_R1;
        cmd.cmdarg = 0;
-       cmd.flags = 0;
 
        timeout = 3;
 
                cmd.cmdidx = MMC_CMD_SPI_CRC_ON_OFF;
                cmd.resp_type = MMC_RSP_R1;
                cmd.cmdarg = 1;
-               cmd.flags = 0;
                err = mmc_send_cmd(mmc, &cmd, NULL);
 
                if (err)
                MMC_CMD_ALL_SEND_CID; /* cmd not supported in spi */
        cmd.resp_type = MMC_RSP_R2;
        cmd.cmdarg = 0;
-       cmd.flags = 0;
 
        err = mmc_send_cmd(mmc, &cmd, NULL);
 
                cmd.cmdidx = SD_CMD_SEND_RELATIVE_ADDR;
                cmd.cmdarg = mmc->rca << 16;
                cmd.resp_type = MMC_RSP_R6;
-               cmd.flags = 0;
 
                err = mmc_send_cmd(mmc, &cmd, NULL);
 
        cmd.cmdidx = MMC_CMD_SEND_CSD;
        cmd.resp_type = MMC_RSP_R2;
        cmd.cmdarg = mmc->rca << 16;
-       cmd.flags = 0;
 
        err = mmc_send_cmd(mmc, &cmd, NULL);
 
                cmd.cmdidx = MMC_CMD_SELECT_CARD;
                cmd.resp_type = MMC_RSP_R1;
                cmd.cmdarg = mmc->rca << 16;
-               cmd.flags = 0;
                err = mmc_send_cmd(mmc, &cmd, NULL);
 
                if (err)
                        cmd.cmdidx = MMC_CMD_APP_CMD;
                        cmd.resp_type = MMC_RSP_R1;
                        cmd.cmdarg = mmc->rca << 16;
-                       cmd.flags = 0;
 
                        err = mmc_send_cmd(mmc, &cmd, NULL);
                        if (err)
                        cmd.cmdidx = SD_CMD_APP_SET_BUS_WIDTH;
                        cmd.resp_type = MMC_RSP_R1;
                        cmd.cmdarg = 2;
-                       cmd.flags = 0;
                        err = mmc_send_cmd(mmc, &cmd, NULL);
                        if (err)
                                return err;
        /* We set the bit if the host supports voltages between 2.7 and 3.6 V */
        cmd.cmdarg = ((mmc->voltages & 0xff8000) != 0) << 8 | 0xaa;
        cmd.resp_type = MMC_RSP_R7;
-       cmd.flags = 0;
 
        err = mmc_send_cmd(mmc, &cmd, NULL);