当前位置:  技术问答>linux和unix

大家给看一下,这个驱动程序哪块有问题,谢谢了

    来源: 互联网  发布时间:2016-07-05

    本文导语:  这个是驱动程序,我是动态加载到内核中的--insmod 为了找到问题,我把其他的地方都去掉了,现在是我想通过copy_to_user把 key_values的值传到用户空间,但一直有问题, 大家给看一下是哪里有问题,刚刚接触驱动,请...

这个是驱动程序,我是动态加载到内核中的--insmod
为了找到问题,我把其他的地方都去掉了,现在是我想通过copy_to_user把 key_values的值传到用户空间,但一直有问题,
大家给看一下是哪里有问题,刚刚接触驱动,请大家帮忙看看。

一 驱动程序代码
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define DEVICE_NAME "armbuttons" /* 加载模式后,执行”cat /proc/devices”命令看到的设备名称 */
#define BUTTON_MAJOR 236 /* 主设备号 */


static volatile int key_values [] = {1, 1, 0, 0, 0, 0};

static int share_button_open(struct inode *inode, struct file *file)
{
return 0;
}

static int share_button_read(struct file *filp, char __user *buff,size_t count, loff_t *offp)
{
unsigned long err;
err = copy_to_user(buff, (const void *)key_values, min(sizeof(key_values), count));
memset((void *)key_values, 0, sizeof(key_values));
return err ? -EFAULT : min(sizeof(key_values), count);
}



static struct file_operations share_buttons_fops = {
.owner = THIS_MODULE,
.open = share_button_open,
.read = share_button_read,
};


static int __init share_buttons_init(void)
{
int ret;
ret = register_chrdev(BUTTON_MAJOR, DEVICE_NAME,&share_buttons_fops);
if (ret 

    
 
 

您可能感兴趣的文章:

  • 我的网卡在redhat7.3下不能自动驱动,但我有for linux的驱动程序,请问如何才能驱动我的网卡,我是菜菜,请详细说明,谢谢!
  • 关于Linux 2.6平台下,自定义的USB HID设备是系统提供驱动程序还是需要自己完成驱动程序?
  • 哪位大哥大姐懂驱动驱动程序开发哇?
  • 有两个USB键盘怎么用自己写的USB键盘驱动程序只替换其中一个驱动?
  • -------------- 请问大家,做好一个PCI设备驱动了,如何做个应用程序来使用这个驱动呢??
  • 请问, linux 驱动中, IO 口变化了,驱动如何通知应用程序?
  • 各位老大,你们是从哪些方面改进网卡驱动程序的效率,欧现在写了一个lan91c嵌入式网卡的驱动,需要帮助
  • USB的ADSL驱动程序!!(可以驱动电信的ADSL)
  • 各位高人,关于IDE的驱动程序,我看蒙了,谁能告诉我到底linux源文件中到底那些是跟IDE硬盘驱动有关的?
  • 有触摸屏驱动程序源代码,怎么写一个命令行的程序测试驱动程序?
  • 驱动程序(模块)怎样与应用层交互呀?也就是应用程序怎样控制驱动程序?让其做什么它就做什么。
  • 谁会在DOS下面安装网卡驱动程序?
  • 两个驱动程序能互相访问么?
  • 驱动程序是否需要修改呢?帮顶有分
  • Norflash是否一定要驱动程序
  • 请问UNIX系统下装上WINDOWS的打印机驱动程序,可否打印?
  • 我太菜!!关于驱动程序的问题,急盼拍砖
  • 驱动程序开发和嵌入式开发有什么联系吗?
  • usbhid妨碍了系统自动加载我的usb驱动程序,求教解决 (主要是加载后设备的驱动被认作usbhid)
  • 用户程序的ioctl是怎么和驱动程序中的ioctl实现联系
  • linux驱动程序是怎样通过内核和应用程序通信,还有是怎样和硬件通信,跪求求解,谢谢高手留言。
  • 重启之后要重装驱动程序,怎么解决? 谢谢!!!
  • “[Microsoft][ODBC 驱动程序 管理器] 非法的描述器索引”是怎么回事儿?谢谢
  • 什么地方有jdbc2.0驱动程序,急需,谢谢!!!
  • 驱动程序中如何实现1毫秒精度的定时器,在线等,谢谢
  • 我的笔记本是IBM的 T60,我想要在linux下安装驱动程序,要如何安装呢?谢谢~
  • 请问redhat linux 9的设备(显卡,网卡,串口,声卡等)驱动程序在什么位置?谢谢
  • 谁能告诉我 sql server 2000 jdbc驱动程序应该怎么设置,如果设环境变量怎么设,谢谢!
  • 真心需要各位前辈指点,谢谢 有关LINUX USB驱动程序编写的一个问题
  • 问下arm下如何实现memory模式的cf的驱动,程序框架怎么搭!有源程序参考下更好!分数不多全部送上,谢谢了!
  • 寻找mysql数据库的jdbc驱动程序,谢谢!!!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 谁有LINUX设备驱动程序第三版的程序代码,发我一份,非常的感谢!
  • 请问如何设置驱动程序和应用程序的启动顺序和优先级呢?
  • 请问shell 开发能开发什么样的程序?硬件的驱动程序是否能够开发呢?
  • 驱动程序找不到Class.forName("oracle.jdbc.driver.OracleDriver");,在程序中还要设置什么?
  • 菜鸟请教,应用程序如何判断驱动程序已经挂载成功
  • 在哪里可以下载OREILLY的linux设备驱动程序一书的程序源代码?在线送分!
  • 怎样才能得到Redhat8.0支持的所有打印机的驱动程序列表文件,我程序里要用。先谢过
  • linux初学者一简单问题!在线送分!linux设备驱动程序一书的第一个程序.
  • Linux的驱动程序构架怎么看不懂?请进来指点
  • 谁知道哪里有usb驱动程序的详细介绍,我想学习。
  • 驱动程序返回值的问题
  • 有没有这样的驱动程序?
  • 如何调试驱动程序
  • android内核中怎样hook一个驱动程序??
  • 有好多关于《linux设备驱动程序第三版》的问题,哪里问合适呢?
  • 有关于驱动程序的问题。一定给分的。
  • linux和windows的驱动程序是一样的吗??
  • 请问哪里有声卡的驱动程序下载?
  • 移植PCI驱动程序,提示找不到iobuf.h
  • 请教!关于linux字符驱动程序


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3