Driver Development
蜂蜜
这个作者很懒,什么都没留下…
展开
-
内核模块加载时的版本检查(转载)
2.4内核下,执行“cat /proc/ksyms”,将会看到内核符号,而且在名字后还会跟随着一串校验字符串,此校验字符串与内核版本有关。在内核源码头文件linux/modules目录下存在许多*.ver文件,这些文件起着为内核符号添加校验后缀的作用,如ksyms.ver文件里有一行#define printk _set_ver(printk),linux/modversions.h 文件会转载 2009-02-04 17:42:00 · 1877 阅读 · 0 评论 -
"Unkown symbol in module"
在insmod uvcvideo.ko时,出现"Unkown symbol in module"错误.原因一般有二:1.其依赖的其他模块没有被装载.2.其依赖的其他模块已被替换,跟其版本等不匹配. 在ubuntu更新的kernel里,因为default没有装载v4l2相关的模块,所以需要手动安装.或者直接执行make install,然后modprobe uvcvideo.原创 2009-03-17 12:09:00 · 2909 阅读 · 0 评论 -
platform_driver_register 与 platform_device_register
<br />platfrom_driver_register() 是在设备注册时进行绑定的.以USB为例:先插上USB设备并挂到总线上,然后在安装USB设备驱动的过程中,从总线上遍历各个设备,看是否有与驱动相匹配的设备,如果有,则两者绑定,就是platfrom_driver_register() <br /> <br />platfrom_device_register() 是在驱动注册时进行绑定的.以USB为例:先安装USB驱动程序,然后当USB设备插入时,就遍历总线上各个驱动,看两者是否匹配,如果相配则原创 2010-10-26 15:00:00 · 1834 阅读 · 0 评论 -
Linux内核中读写文件数据的方法
<br />Linux内核中读写文件数据的方法 有时候需要在Linux kernel--大多是在需要调试的驱动程序--中读写文件数据。在kernel中操作文件没有标准库可用,需要利用kernel的一些函数,这些函数主要有: filp_open() filp_close(), vfs_read() vfs_write(),set_fs(),get_fs()等,这些函数在linux/fs.h和asm/uaccess.h头文件中声明。下面介绍主要步骤: 1. 打开文件 filp_open()在kernel中可以打转载 2011-04-07 10:27:00 · 1399 阅读 · 0 评论