linux2.6.32 class_device_create
来源:互联网 发布:mac怎么打开cr2图片 编辑:程序博客网 时间:2024/05/29 04:11
之前写的字符类设备驱动,没有自动创建设备节点,因为只使用了register_chrdev()函数,只是注册了这个设备。然后在系统启动后,就要自己创建设备节点mknod,这样虽然是可行的,但是比较麻烦。于是想在__init函数里面,自动创建设备节点。
经过查阅资料,发现创建设备节点使用了两个函数 class_create()和class_device_create(),当然在__exit()函数里,要使用class_destory()和class_device_desotry()注销创建的设备节点!
问题来了,编译了之后,发现报错error: implicit declaration of function 'class_device_create'等几个错误。经过分析,应该是Linux内核版本不同的原因!早期的版本,使用的是上面说的两个函数,但是在2.6.29以后(我用的是2.6.32的),使用的函数则变成了 class_create()和device_create(),并且要在声明中加入#include <linux/device.h> ,因为定义这些函数是在Linux2.6.32/include/linux/device.h里面!
经过这些修改后,驱动编译成功,就能够自动创建设备节点了
以上是转载的,但是我试验的时候也发现了这个问题,通过上面的描述可以解决 其中好涉及到一个结构体,大家注意看一下linux2.6.32 device_create() 返回值就知道了
- linux2.6.32 class_device_create
- linux2.6.32 class_device_create
- class_create() class_device_create
- class_device_create class_device_destroy
- class_create & class_device_create
- linux2
- Linux2
- class_device_create函数转
- 关于class_device_create和class_device_destroy
- class_device_create的问题
- class_create和class_device_create
- [S3C6410]Linux2.6.28到Linux2.6.32的内核移植
- linux2.6.32内核到mini2440
- linux2.6.32内核Suspend流程
- linux2.6.32内核Suspend流程
- linux2.6.32内核Suspend流程
- linux2.6.32内核Suspend流程
- linux2.6.32中断处理流程
- CheckBox和GridView
- Eclipse升级后用javah命令生成不了JNI接口的h头文件的解决方法
- 预留位置队列PRQueue:多线程程序中消息输入队列和消息输出队列保持同序
- linux应用技巧总结(不断更新)
- autocad命令、快捷键
- linux2.6.32 class_device_create
- request.getReader()的怪异事件
- iphone 文件操作
- HTML基础之为什么要在表单控件中同时使用name和id属性?
- IOS请求WEB应用的方法
- 嵌入式LINUX环境下视频采集知识
- ireport 隐藏字段,和字段自动换行
- RPM 的介绍和应用
- 数据仓库基本知识之二