主题 : mini2440驱动hello,modules下到板子中运行insmod命令出现问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 5198
精华: 0
发帖: 17
金钱: 140 两
威望: 111 点
综合积分: 34 分
注册时间: 2009-04-14
最后登录: 2011-05-05
楼主  发表于: 2009-07-17 15:38

 mini2440驱动hello,modules下到板子中运行insmod命令出现问题

insmod mini2440_hello_module.ko后出现
insmod: error inserting "mini2440_hello_module.ko':Invalid module format
错误,我都是按照最新的手册一步步做下来的,系统也都是最新的。这是什么原因呢
级别: 新手上路
UID: 5198
精华: 0
发帖: 17
金钱: 140 两
威望: 111 点
综合积分: 34 分
注册时间: 2009-04-14
最后登录: 2011-05-05
1楼  发表于: 2009-07-17 16:53
还有提示如下:mini2440_hello_module: version magic '2.6.29-FriendlyARM mod_unload ARMv4 ' shou
ld be '2.6.29.4-FriendlyARM mod_unload ARMv4 '
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
2楼  发表于: 2009-07-17 17:18
引用第1楼jiangkaibo于2009-07-17 16:53发表的  :
还有提示如下:mini2440_hello_module: version magic '2.6.29-FriendlyARM mod_unload ARMv4 ' shou
ld be '2.6.29.4-FriendlyARM mod_unload ARMv4 '

这个错误信息说明,当前运行的内核版本字符串是'2.6.29.4-FriendlyARM mod_unload ARMv4 ',而要加载的内核模块的版本字符串是'2.6.29-FriendlyARM mod_unload ARMv4 '。这应该是由于编译模块时使用的是2.6.29而不是2.6.29.4的内核源代码造成的。
记住编译内核模块所用的内核源代码版本和配置***必须***和开发板上跑的内核镜像一致
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 5198
精华: 0
发帖: 17
金钱: 140 两
威望: 111 点
综合积分: 34 分
注册时间: 2009-04-14
最后登录: 2011-05-05
3楼  发表于: 2009-07-17 17:57
谢谢版主,我懂了,我的板子里跑的是arm9网上下的最新的image,刚发现已经更新到2.6.29.4了,而最新的源代码却都是2.6.29的,所以编译驱动模块的也是2.6.29,才会出现这样问题的。
那是不是重新编译下2.6.29内核,再把板子里内核换成2.6.29的应该就可以了吧