打印
[Atmel]

用户层调用驱动 ioctl函数可以传结构体吗?

[复制链接]
1941|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yanghelovehuang|  楼主 | 2018-8-7 10:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近写了一个驱动, 但是想要在用户层调用ioctl时传送两个信息量,一个是引脚号,一个是字符串,于是我定义了个结构体,包含这两个变量,可是在ioctl传递给用户层时遇到点问题:
ioctl(描述符,命令吗,结构体参数)
typedef struct {
        int pin;
        cahr str[64];
}TMP;
TMP tmp;
在驱动中定义一个同样的结构体,使用get_user函数来接收结构体传来的参数的:get_user(tmp, (unsigned int *)arg);
可是报错:
错误:需要整数时使用了聚合值
   get_user(tmp, (unsigned int *)arg);

我想向各位大神确认几个问题:
1. 用户层ioctl可以传递结构体到驱动吗?
2. 如果可以用什么方法实现?驱动中用那个函数提取结构体信息?

相关帖子

沙发
ch122633| | 2018-9-29 10:40 | 只看该作者
你好,请问你找到解决办法了吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

156

主题

324

帖子

1

粉丝