TI中文支持网
TI专业的中文技术问题搜集分享网站

Beaglebone板子CAN驱动模块加载问题

在beaglebone中开发CAN驱动,我采用内核默认的配置,参考文档是“Sitara Linux Software Developer’s Guide”,内核用的是linux-3.1.0-psp04.06.00.03.sdk,

将编译好的.ko文件拷贝到lib相应的目录下。

加载驱动后出现如下问题:

root@am335x-evm:/# modprobe d_can  

[95.548096] d_can: version magic '3.1.0 mod_unload modversions ARMv5 ' should be '3.1.0 mod_unload modversions ARMv7 '

FATAL: Error inserting d_can (/lib/modules/3.1.0/kernel/drivers/net/d_can.ko): Invalid module format

该如何解决呢?

说明:CAN模块是和所用的内核同时编译,编译的命令依次为:

(1)make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- mrproper

(2)make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- tisdk_am335x-evm_defconfig

(3)make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- uImage

(4)make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- modules

还有:我看像blooth等的驱动模块加载内核的时候就一并加进去了,为什么can的还得自己加进去呢?

还有:我将CAN模块设置成静态的编译内核,总会导致电脑突然断电,郁闷呐!

zerong li:

回复 Yaoming Qin:

该文档已经看过了,谢谢!现在该问题已经解决,驱动模块可以在加载,但是运行CAN的命令如canconfig can0(或can1) start,会显示Cannot find device "can0"。。。直接编译到内核的方法我也试过,存在同样的问题,我又开了一个新帖详细阐述具体情况,期待您的回答,谢谢!

zerong li:

回复 Yaoming Qin:

我又发了个新帖详细说明了情况,希望给予指导!www.deyisupport.com/…/9198.aspx

赞(0)
未经允许不得转载:TI中文支持网 » Beaglebone板子CAN驱动模块加载问题
分享到: 更多 (0)