Ioctl params值(cmd和arg)显示相同,即使我发送了不同的值

时间:2015-07-10 10:04:26

标签: c

我正在尝试阅读从应用程序发送的ioctl参数。但在驱动程序端,即使我发送不同的值,cmd和arg(第3和第4个参数)值也会相同。两个参数都显示了来自应用程序的参数值。任何人都可以帮我解决这个问题吗? 我的代码: 应用:ioctl(fd,0,1)。 驱动程序ioctl:cmd = 1。                arg = 1。

int char_ioctl(struct inode *inode_num, struct file *fp, unsigned int cmd, unsigned long arg) 
{ 
   int ret = 0,i; 

   printk("cmd : %d\n",cmd); 
   printk("arg : %d\n",(unsigned long)arg); 

   switch(cmd) 
   { 
      case GETCAPACITY: 
         ret = BUFFER_MAX_SIZE; 
         break; 

      default : 
         break; 
    } 

   return ret; 
}

0 个答案:

没有答案