摘要: 5.7.8.1、fb的mode (1)什么是mode (2)fb_var_to_videomode (3)fb_add_videomode 5.7.8.2、注册登记该fb设备 (1)registered_fb[i] = fb_info; (2)结合fb_read等函数中对fb_info的使用 / d 阅读全文
posted @ 2018-07-01 20:17 Ocean&Star 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 5.7.7.1、register_framebuffer (1)fb驱动框架开放给驱动编写着的注册接口 linux提供了register_framebuffer和unregister_framebuffer函数分别注册和注销帧缓冲设备 对于register_framebuffer而言,如果注册的帧缓 阅读全文
posted @ 2018-07-01 20:11 Ocean&Star 阅读(324) 评论(0) 推荐(0) 编辑
摘要: http://www.mamicode.com/info detail 1209620.html 5.7.6.1、fbmem_init函数[driver/video/fbmem.c] (1) ifdef MODULE (2)fb_proc_fops和fb在proc文件系统中的表现 (3)regist 阅读全文
posted @ 2018-07-01 19:21 Ocean&Star 阅读(585) 评论(0) 推荐(0) 编辑
摘要: 参考http://www.cnblogs.com/EaIE099/p/5175979.html 本节对内核的framebuffer驱动框架做整体介绍,各部分涉及哪些文件,每个文件是谁写的,具体功能是什么,详细的代码分析在后面。 5.7.5.1、驱动框架部分 (1)drivers/video/fbme 阅读全文
posted @ 2018-07-01 18:32 Ocean&Star 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 本节继续framebuffer应用编程,使用framebuffer更改分辨率等操作,最后讲述如何去写字、画图等。 5.7.4.1、设置分辨率 (1)实验失败,实验结果是只能修改虚拟分辨率,不能修改可视分辨率。原因要去驱动里找。 (2)正确的做法是在驱动中去修改参数,然后重新编译运行,才能解决。 5. 阅读全文
posted @ 2018-07-01 18:26 Ocean&Star 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 本节继续framebuffer应用编程,使用framebuffer在LCD上显示背景色. 5.7.3.1、mmap做映射 做完了mmap后fb在当前进程中就已经就绪了,随时可以去读写LCD显示器了。 5.7.3.2、fb显示之刷背景 阅读全文
posted @ 2018-07-01 18:25 Ocean&Star 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 本节基于framebuffer编写应用程序进行显示,主要是打开设备文件及获取设备的关键硬件信息、进行显存映射等。 5.7.2.1、打开设备 ls /dev/fb 5.7.2.2、获取设备信息 (1)不可变信息FSCREENINFO,使用ioctl的FBIOGET_FSCREENINFO名 (2)可变 阅读全文
posted @ 2018-07-01 18:23 Ocean&Star 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 本节介绍framebuffer的概念和来源、设计思想,fb设备的应用层接口等,为下节使用framebuffer应用编程打基础。 5.7.1.1、什么是framebuffer (1).裸机中如何操作LCD Soc里面有CPU,LCD控制器;外部有LCD的驱动器,驱动器后面带着屏幕,驱动器和控制器之间使 阅读全文
posted @ 2018-07-01 18:22 Ocean&Star 阅读(274) 评论(0) 推荐(0) 编辑
摘要: https://blog.csdn.net/tigerjibo/article/details/6412469 大部分驱动程序操作都涉及到三个重要的内核数据结构,分别是file_operations、file和inode,它们定义在 1、file_operations:是一个函数指针的集合 1 应用 阅读全文
posted @ 2018-07-01 16:20 Ocean&Star 阅读(915) 评论(0) 推荐(0) 编辑
摘要: / 待整理 / 1、在注册驱动程序的时候,根据主设备号分配的file_operations结构体放到内核的数组里面。我们在用户空间open打开设备的方式是这样的:根据名字找到设备节点,设备节点会对应主设备号,根据主设备号就找到了file_operations结构体。所以我们还需要创建设备节点:mkn 阅读全文
posted @ 2018-07-01 16:06 Ocean&Star 阅读(196) 评论(0) 推荐(0) 编辑