本文参考百问网-韦东山驱动大全如何编写字符设备驱动程序编写字符设备驱动程序的主要步骤包括:
本文参考百问网-韦东山驱动大全
如何编写字符设备驱动程序编写字符设备驱动程序的主要步骤包括:
构造 file_operations 结构体,填充 open、read、write 等成员函数。注册驱动:使用 register_chrdev(major, name, &fops) 函数。定义入口函数和出口函数。Framebuffer 驱动程序框架分为上下两层:fbmem.c:负责承上启下,实现并注册 file_operations 结构体,将应用层的调用转发到具体的硬件驱动程序。xxx_fb.c:实现硬件相关的驱动程序,注册 fb_info 结构体,处理硬件操作。调用关系如下:
例子1:应用层:open("/dev/fb0", ...)内核层:fb_open int fbidx = iminor(inode); struct fb_info *info = registered_fb[0];例子2:应用层:read()内核层:fb_read int fbidx = iminor(inode); struct fb_info *info = registered_fb[fbidx]; if (info->fbops->fb_read) return info->fbops->fb_read(info, buf, count, ppos); src = (u32 __iomem *) (info->screen_base + p); dst = buffer; *dst++ = fb_readl(src++); copy_to_user(buf, buffer, c)登录后复制
菜鸟下载发布此文仅为传递信息,不代表菜鸟下载认同其观点或证实其描述。
版权投诉请发邮件到 cn486com#outlook.com (把#改成@),我们会尽快处理
Copyright © 2019-2020 菜鸟下载(www.cn486.com).All Reserved | 备案号:湘ICP备2022003375号-1
本站资源均收集整理于互联网,其著作权归原作者所有,如有侵犯你的版权,请来信告知,我们将及时下架删除相应资源