我正在尝试通过以下方式启动驱动程序模块
insmod path/to/module.ko
我收到以下错误
> init_module 'path/to/module.ko' failed <File exists>
我试图了解这是否意味着模块已经启动并运行,或者它是否完全无法初始化。
我正在寻找 的含义<File exists>
,这是否意味着它已经初始化?
这意味着该模块已经加载。检查 的输出lsmod
。
我相信这里的问题是内核是从由 android rom 引导的只读分区运行的。尝试插入wifi模块时,我也遇到了类似的问题。即,如果您的输出类似于:
root@stackoverflow:~# insmod rkwifi.ko
Error: could not insert module rkwifi.ko: File exists
root@stackoverflow:~# lsmod | grep rkwifi
root@stackoverflow:~# lsmod
Module Size Used by
fbcon 34211 66
font 7042 1 fbcon
bitblit 3708 1 fbcon
softcursor 880 1 bitblit
wlan 458451 0
rk30xxnand_ko 314328 0
root@stackoverflow:~#
我的设置是一个运行 3.0.36+ 内核的 debian 的 android 电视盒在我的情况下,从源代码下载和修改内核是必要的。然后,您可以将内核打包备份,并为您的设备使用适当的刷写工具,仅将内核分区刷回设备,而不修改文件系统。