问题描述
- 如何控制一个内核驱动,待SD卡或内部存储设备加载完毕后再运行?
-
在做一个Android内核驱动程序,主要功能是读取一个存储在SD卡或内部存储比如NAND中的一个文本文件,然后解析该文件来设置一些参数。
先编译成模块,用insmod加载,rmmod来卸载,经过调试一切功能都搞定了。然后,把模块编译进了内核,也能正常加载,但是文件打开失败,看了一下内核启动log,发现由于驱动运行时文件系统还没有加载SD卡和NAND,自然无法打开文件。所以很想知道,遇到这类情况如何解决?
解决方案
建议你多了解一下init.rc文件,通过它可以达到你要的目的。
在你的Android机器上应该有现成的init.rc文件,把它打印出来,里面就有相关的fs挂载完成后执行的语句,把你的insmod相关指令加在后面就OK了
解决方案二:
发现由于驱动运行时文件系统还没有加载SD卡和NAND,自然无法打开文件。所以很想知道,遇到这类情况如何解决?
-〉这种配置信息一般都会放在片上的ROM/Flash里面。系统启动过程中让系统可以访问才行。
时间: 2024-12-26 04:01:54