Linux驱动设计ioctl函数的cmd参数不能为2
Linux驱动程序设计的时候偶然发现的ioctl()函数的cmd参数不能为2,如果为2,ioctl()函数返回-1,网上说就是这样的,正常,不知道为什么,stack overflow上有一个外国学友的建议:
“In general, you want to compose your ioctl commands using the _IO
family of macros, with a unique type, to avoid collisions.
I suggest reading ioctl-number.txt from the kernel documentation for more information, including a list of most used types”
In general, you want to compose your ioctl commands using the _IO
family of macros, with a unique type, to avoid collisions.
I suggest reading ioctl-number.txt from the kernel documentation for more information, including a list of most used types”
Linux驱动设计ioctl函数的cmd参数不能为2相关推荐
- linux ioctl命令,关于LINUX下的ioctl函数
驱动程序中ioctl函数的函数原型如下: int (*ioctl)(struct inode *inode, struct file *filp,unsigned int cmd, unsigned ...
- Linux驱动设计——硬件基础
Linux 驱动设计之硬件基础 0.开篇说明 本片内容主要来源于宋宝华老师<Linux设备驱动开发> 1.处理器 目前主流的通用处理器(GPP)多采用SoC(片上系统)的芯片设计方法,集成 ...
- linux驱动之ioctl
大部分驱动除了需要具备读写设备的能力之外,还需要具备对硬件控制的能力. 一.在用户空间,使用ioctl系统调用来控制设备,原型如下: int ioctl(int fd,unsigned long cm ...
- (八)linux驱动之ioctl的使用
这篇文章给大家讲解一下ioctl的简单使用,关于ioctl更详细的教程后面有机会单独写出来 (一)什么是ioctl ioctl是设备驱动程序中对设备的I/O通道进行管理的函数.所谓对I/O通道进行管理 ...
- linux驱动静态分配内存,Linux驱动设计——内存与IO访问
名词解释 内存空间与IO空间 内存空间是计算机系统里面非系统内存区域的地址空间,现在的通用X86体系提供32位地址,寻址4G字节的内存空间,但一般的计算机只安装256M字节或者更少的内存,剩下的高位内 ...
- linux驱动的入口函数module_init的加载和释放
就像你写C程序需要包含C库的头文件那样,Linux内核编程也需要包含Kernel头文件,大多的Linux驱动程序需要包含下面三个头文件: #include <linux/init.h> # ...
- linux驱动的入口函数module_init的加载和释放(转)
像你写C程序需要包含C库的头文件那样,Linux内核编程也需要包含Kernel头文件,大多的Linux驱动程序需要包含下面三个头文件: #include <linux/init.h> #i ...
- linux驱动中probe函数是怎么调用的
linux驱动的三个概念:设备.驱动.总线 probe何时被调用:在总线上驱动和设备的名字匹配,就会调用驱动的probe函数 probe函数被调用后,系统就调用platform设备的probe函数完成 ...
- Linux驱动设计——字符杂项设备
杂项设备 linux里面的misc杂项设备是主设备号为10的驱动设备,misc设备其实也就是特殊的字符设备,可自动生成设备节点. 定义头文件<linux/miscdevice.h> 杂项设 ...
最新文章
- linux平台下防火墙iptables原理(转)
- Android实战技巧之十二:Android Studio导入第三方类库、jar包和so库
- python第七关再来一盘_7、 Python系列,七,的,集合
- java option请求_java – 如何说服spring 4.2将OPTIONS请求传递给控制器
- python接口自动化测试框架实战从设计到开发_Python接口自动化测试框架实战 从设计到开发...
- 【华为云技术分享】STM32L476移植华为LiteOS系列教程---开发前的准备 2
- 共用体变量不能在定义时初始化_【C语言资料更新】共用体联合体
- 高效维持网络长连接:手把手教你实现 自适应的心跳保活机制
- rainmeter雨滴皮肤——万花筒
- route命令实现内外网切换
- python 识别二维码内容
- 如何在手机上压缩图片?两种免费方法了解一下
- Weighted Boxes Fusion
- bilibili level up
- 华为认证HCIA的方向选择
- 零成本搭建实验室、课题组网站教程(基于uniapp)
- 【T+】畅捷通T+存货档案批量修改存货属性
- laravel seeding
- 突发!继22岁拼多多女员工猝死后,又一悲剧:拼多多员工家中跳楼自杀!公司紧急通告!...
- c学前儿童语言教育试卷,学前儿童语言教育期中试卷