host->state = STATE_SENDING_CMD;
rk29_sdmmc_start_request(host);
} else {
+ dev_info(&host->pdev->dev, "list add tail\n");
list_add_tail(&host->queue_node, &host->queue);
}
spin_unlock(&host->lock);
rk29_sdmmc_reset_fifo(host);
}
if (!list_empty(&host->queue)) {
+ dev_info(&host->pdev->dev, "queque list is not empty\n");
host = list_entry(host->queue.next,
struct rk29_sdmmc, queue_node);
list_del(&host->queue_node);
rk29_sdmmc_request_end(host, mrq);
} else {
+ dev_info(&host->pdev->dev, "mrq != host->curr_mrq")
if (host->queue_node.next && host->queue_node.prev)
list_del(&host->queue_node);
mrq->cmd->error = -ENOMEDIUM;