大家好!
dm8168访问sd卡,
1.上电前插入sd卡, 进入系统后sd可读写; 此时若拔掉sd卡, 系统没有响应,对应的/dev/mmcblk0p1/仍然存在;
2. 上电前没有sd卡,进入系统后插入sd卡, /dev/下没有mmcblk设备
问下怎么做才能支持sd热插拔?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
大家好!
dm8168访问sd卡,
1.上电前插入sd卡, 进入系统后sd可读写; 此时若拔掉sd卡, 系统没有响应,对应的/dev/mmcblk0p1/仍然存在;
2. 上电前没有sd卡,进入系统后插入sd卡, /dev/下没有mmcblk设备
问下怎么做才能支持sd热插拔?
SD卡的检测一共有三种方法:
1, 在开机的时候通过CMD发送命令检测T卡是否存在,这种方式不支持热插拔。
2,通过T卡座来检测,信号TCARD_DETECT连在中断控制器上。在没有插卡时,TCARD_DETECT信号为低电平。插入T卡后,信号 TCARD_DETECT 被拉高为高电平,从而产生一个中断。即实现了热插拔。注意:由低到高或者由高到低的触发,是由硬件和软件共同协作,是可以设定的。
3,通过CD/DAT3 信号来检测,CD/DAT3 信号连在中断控制器上,并通过470K电阻下拉,在没有T卡插入时,该信号为低电平,一但有T卡插入,T卡内部通过50Kohm把 DATA3 信号拉高至高电平,随即产生一个中断,实现了热插拔。