添加流程_LINUX MMC 子系统分析终结篇---MMC card添加流程分析

原文再续,书接上回。本文我们进行mmc子系统中mmc card的添加与删除流程。针对iic设备、spi设备、rtc设备等非热插拔设备而言,我们一般在板级文件或者设备树中定义外设信息,完成外设的注册;但针对mmc card而言,其属于热插拔设备,不需要在板级文件或设备树中进行外设的注册,而由mmc子系统通过mmc card的rescan机制,实现mmc card的自动检测及注册机制。本篇主要即用来...
摘要由CSDN通过智能技术生成

原文再续,书接上回。本文我们进行mmc子系统中mmc card的添加与删除流程。针对iic设备、spi设备、rtc设备等非热插拔设备而言,我们一般在板级文件或者设备树中定义外设信息,完成外设的注册;但针对mmc card而言,其属于热插拔设备,不需要在板级文件或设备树中进行外设的注册,而由mmc子系统通过mmc card的rescan机制,实现mmc card的自动检测及注册机制。本篇主要即用来介绍mmc card的检测流程及mmc card的注册及注销机制。主要分为如下两部分:

一、mmc card rescan机制

二、mmc card探测及移除

一、Mmc card rescan机制

我们知道mmc card是依附于mmc controller的,因此mmc card rescan机制主要是基于mmc host进行设计的;该rescan机制主要是通过工作队列实现的,如下图为该机制的实现流程,主要说明如下:

  1. Mmc host子系统提供了延迟队列机制,在执行mmc_alloc_host、mmc_add_host后,则完成了mmc card rescan延迟工作队列及其处理接口的创建等操作;
  2. 若要触发mmc card rescan(即调度工作队列),则调用mmc_detect_change接口,即可触发mmc card rescan(即完成mmc_host->detect队列的调度);
  3. 延迟队列的处理函数为mmc_rescan,该函数实现mmc card的添加与移除操作。
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值