在调用mmc_start_request()前,mrq->done=mmc_wait_data_done就确定了,是request完成之后的回调函数。 函数开始就不断的对mrq->cmd和mrq->data结构做判断,mmc_start_request其实是个通用函数,我们知道mmc命令有些是单命令,有些是命令数据合并型,对于有数据传输要求的命令,要对mmc->data结构错误判断。 如无意外...
The call to mmc_request_done() can schedule, so it must not be called from irq context. Wake the irq thread if it needs to be called, and let its existing logic do its work. Fixes the following kernel bug, which appears when running an RT patched kernel on the AmLogic Meson AXG ...
1272行,设置host->cmd_is_stop为0,从字面上理解,我认为host->cmd_is_stop代表command是否是stop命令(即有一个command是stop),0表示不是stop命令。 1273行,将mmc_requestmrp保存在host->mrq中,方便以后使用。 1275-1280行,如果卡不存在,则调用mmc_request_done(mmc,mrq)结束这次request处理,否则,调用s3cmci_s...
drivers/MMC/core/core.c:177 [MMC_core]MMC_Request_Done =p "%s":(cmd%u):%d:%08x %08x %08x %08x\012" drivers/MMC/core/core.c:201 [MMC_core]MMC_START_REQUEST =p "<%s:启动 CMD%u 标志%08x>\012" drivers/MMC/core/core.c:206 [MMC_core]MMC_START_REQUEST =p "%s":启动 CM...
mmc_request_done mmc_wait_for_req mmc_wait_for_cmd mmc_set_data_timeout mmc_align_data_size 7、card检测相关 mmc_detect_change mmc_rescan mmc_detect_card_removed 8、bkops操作相关 mmc_blk_init_bkops_statistics mmc_start_delayed_bkops
mmc_request_done(host->mmc, mrq); } 开发者ID:020gzh,项目名称:linux,代码行数:40,代码来源:mxs-mmc.c 示例7: mxcmci_start_cmd ▲点赞 1▼ /* * This function sets up the SDHC registers in order to issue a command. * * @param priv Pointer to MMC/SD priv structure ...
mmc_request_done mmc_wait_for_req mmc_wait_for_cmd mmc_set_data_timeout mmc_align_data_size 7、card检测相关 mmc_detect_change mmc_rescan mmc_detect_card_removed 8、bkops操作相关 mmc_blk_init_bkops_statistics mmc_start_delayed_bkops
mmc_request_done(mmc, cmd->mrq); } } 开发者ID:A2109devs,项目名称:lenovo_a2109a_kernel,代码行数:41,代码来源:omap.c 示例4: mmc_omap_set_power ▲点赞 1▼ staticvoidmmc_omap_set_power(struct mmc_omap_slot *slot,intpower_on,intvdd){structmmc_omap_host*host;host = slot->host;if(...
会调用host->ops->request来对mmc_request进行处理,对于sdhci类型的host,对应就是sdhci_request。这个方法就是mmc_request实际被处理的核心。2、mmc_request_done通知mmc core某个mmc_request已经处理完成,由host controller调用。以sdhci类型的host为例,处理完一个mmc_request之后,会执行sdhci_tasklet_finish,而在sdhci...
void mmc_request_done(struct mmc_host *host, struct mmc_request *mrq) { struct mmc_command *cmd = mrq->cmd; int err = cmd->error; if (err && cmd->retries && mmc_host_is_spi(host)) { if (cmd->resp[0] & R1_SPI_ILLEGAL_COMMAND) ...