免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2240 | 回复: 1
打印 上一主题 下一主题

arch_copy_to_user函数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-22 16:05 |只看该作者 |倒序浏览
arch_copy_to_user函数
最近刚开始看linux驱动,是一个键盘的驱动,硬件原理是比较简单的,但是看到外部中断扫描键值函数后,就是把键值交给arch_copy_to_user函数,这个函数我就看不懂了,论坛上有高手解说一下吗?

ssize_t JackKB_read (struct file * file ,char * buf, size_t count, loff_t * f_ops)
{
unsigned char data[2];
ssize_t retval;

data[0]= key[0];
data[1]= key[1];

if((data[0]== 6 ) && (data[1] == 4 ))
{
if (file->f_flags & O_NONBLOCK)
{
retval = -EAGAIN;
}
}

if(__arch_copy_to_user(buf, &data, sizeof(data)))
return -EFAULT;

key[0] = 6;
key[1] = 4;

return (sizeof(data));
}

论坛徽章:
0
2 [报告]
发表于 2008-05-25 09:07 |只看该作者
把内核空间的数据copy到用户空间
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP