1、mmc info命令 2、mmc rescan命令 3、mmc list命令 4、mmc dev命令 5、mmc part命令 6、mmc read命令 7、mmc write命令 EMMC更新 SD卡更新 8、mmc erase命令 一、EMMC和SD卡操作命令 uboot 支持 EMMC 和 SD 卡,因此也要提供 EMMC 和 SD 卡的操作命令。一般认为 EMMC和 SD 卡是同一个东西,所以没有...
mmc_rescan首先会用一些比较低的频率来尝试扫描mmc设备,尝试的频率值分别为400KHz、300KHz、200KHz和100KHz 用每个尝试的频率值(如果一个尝试成功则不进行后续更低频率的尝试)通过mmc_rescan_try_freq函数来具体执行rescan流程 在mmc_rescan_try_freq函数中会依次调用host驱动接口执行POWER_UP、hw_reset以及发送CMD0...
// 当host设置了MMC_CAP_NEEDS_POLL属性时,需要每隔HZ的时间轮询检测host的卡槽状态, // 调度了host->detect工作,对应就是mmc_rescan // INIT_DELAYED_WORK(&host->detect, mmc_rescan) // 这样,通过mmc_schedule_delayed_work(&host->detect, HZ)就会每隔HZ时间就会执行一次mmc_rescan if (host->caps &...
目录一、EMMC和SD卡操作命令1、mmcinfo命令2、mmcrescan命令3、mmclist命令4、mmcdev命令5、mmcpart命令6、mmcread命令7、mmcwrite命令EMMC更新SD卡更新8、mmcerase命令一、EMMC和SD卡操作命令uboot 支持 EMMC 和 SD 卡,因此也要提供 EMMC 和 SD 卡的操作命令。一般认为 EMMC和 SD ...
可以看到mmc_alloc_host函数初始化了一个延迟工作队列,任务是调用mmc_rescan函数进行设备识别流程。 此时平台驱动已注册完成,可以在系统节点看到相关信息: 4 .识别流程 mmc_rescan函数实现如下 staticconstunsigned freqs[] = {400000,300000,200000,100000};voidmmc_rescan(structwork_struct *work) ...
mmc_rescan就是扫描卡的函数 代码语言:javascript 复制 voidmmc_rescan(struct work_struct*work){struct mmc_host*host=container_of(work,struct mmc_host,detect.work);int i;if(host->trigger_card_event&&host->ops->card_event){host->ops->card_event(host);host->trigger_card_event=false;}if(host...
8. mmc rescan: 该命令用于重新扫描存储设备,以便更新系统中的设备列表。 9. mmc bootpart enable: 该命令用于启用存储设备的引导分区。 10. mmc bootpart disable: 该命令用于禁用存储设备的引导分区。 这些是一些常用的mmc命令及其用法。通过使用这些命令,您可以管理和操作Linux系统中的存储设备。
是动态变化过程,才会让相应的两个bit置1),那么接下来的if语句就是从该寄存器的那两个bit来判断是否有卡的插入或拔出,并同时清除这两个bit,准备下一次的检测,紧接着就调用中断的下半部分函数 sdhci_tasklet_card,其实这个函数也没做什么事情,就是判读如果此时有卡的话就通过mmc_detect_chang函数调用mmc_rescan...
初始化自旋锁、等待队列 (waitqueue)和延迟的工作队列 (Delayed Work),其中,用处理函数 mmc_rescan() 来初始化延迟的工作队列 host->detect ,后文会再次提到。 初始化定时器 host->retune_timer ,处理函数为 mmc_retune_timer() 。 4.3 mmc_add_host(mmc) ...
INIT_DELAYED_WORK(&host->detect, mmc_rescan); workqueue = create_singlethread_workqueue("kmmcd"); 所以,当此delayed_work执行的时候,mmc_rescan将会被调用 staticvoidmmc_rescan(structwork_struct*work) { structmmc_host*host= container_of(work,structmmc_host,detect.work);//返回指向s3cmci_probe中...