有關ioctl
本帖最后由 sunwingman 于 2015-8-12 08:52 编辑有关LED以及PWM的控制
发现在rk3288上面的源码
都没有实作ioctl
这样user space和kernel space如何沟通?
所以假如我需要写一个app去操控
是不是需要自己去实作一个ioctl
还是有其他方法?
因为刚接触嵌入式这块, 还有很多不熟
所以请教各位前辈, 感谢!!
本帖最后由 sunwingman 于 2015-8-12 10:40 编辑
感谢carlinluo回覆
之前碰过友善之臂的板子
在kernel的LED driver有实作一个ioctl的function, 代码如下
static long leds_ioctl(struct file *filp, unsigned int cmd,
unsigned long arg)
{
switch(cmd) {
case 0:
case 1:
if (arg > LED_NUM) {
return -EINVAL;
}
gpio_set_value(led_gpios, !cmd);
//printk(DEVICE_NAME": %d %d\n", arg, cmd);
break;
default:
return -EINVAL;
}
return 0;
}
但是在rk3288的LED driver里面没看到ioctl
所以才想请问各位前辈是不是要自己加入ioctl这个function?
可以请问carlinluo也是自己实作一个ioctl吗?JNI那边我知道怎么调用, 不过也是要透过ioctl才能跟kernel space去做沟通, 是吧?
1.通过读写文件节点和驱动沟通
2.通过JNI调用驱动
最新在写这方面的代码当练手APP sunwingman 发表于 2015-8-12 10:37
感谢carlinluo回覆
之前碰过友善之臂的板子
可以参考camera的驱动,里面有用到ioctr 其实驱动都是差不多的,移植下就可以用
页:
[1]