LCD驱动程序架构—帧缓冲架构
详细的信息参考连接:
http://www.cnblogs.com/lishixian/articles/2999923.html
LCD 驱动程序设计
LCD驱动是平台驱动,有 probe 函数。
1、分配 fb _ info 结构 — framebuffer _ alloc 函数。
2、获取LCD控制器的物理地址,并将其转化为虚拟地址。
3、初始化 fb _ info 结构。
3.1 设置 fb_ops
4、分配帧缓冲的内存 — dma _ alloc _ writecombine函数
5、设置gpio引脚的类型
6、设置LCD显示参数—var结构体
7、注册帧缓冲 — registered _ framebuffer函数
7.1 设置LCD控制器
7.2 将帧缓冲地址告诉给LCD控制器
使用 dump_stack(); 函数,在编译时可以查看所在的函数的调用关系。
参考代码:
linux-tq2440\drivers\video\s3c2410fb.c
linux-tq2440\drivers\video\s3c2410fb.h