Board logo

标题: arch_copy_to_user函数 [打印本页]

作者: skyrockur    时间: 2008-4-22 15:51     标题: 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));
}






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0