给驱动加入ioctl控制

来源:互联网 发布:知乎就是个垃圾堆 编辑:程序博客网 时间:2024/05/16 02:14
ioctl:
-----------------------------------------------------------------
用户空间系统调用:int ioctl(int fd, unsigned long cmd, ...)
可选参数“...”用char *argp定义
-----------------------------------------------------------------
内核空间:驱动程序中如何定义ioctl函数
int (*ioctl)(struct inode *inode, struct file *filp,\
                         unsigned int cmd, unsigned long arg)
1.inode&filp ---- 应用程序中的文件描述符
  2.可选arg参数(指针或者整数值)---- unsigned long 的形式传递给驱动程序 
-----------------------------------------------------------------
定义ioctl 命令:
* 参考include/asm/ioctl.h
  * documentation/ioctl/ioctl-number.txt


编写驱动程序的ioctl函数过程中:
如果使用了不合适的ioctl命令参数,应返回:-ENOTTY.
0 0
原创粉丝点击