嵌入式linux中的lcd驱动分析
嵌入式linux中的lcd驱动分析
作者:杰洲村的木棉 学校:广东工业大学 QQ:568109894
源文来自http://luwenchao100.blog.hexun.com/23060194_d.html
在嵌入式linux中,lcd和触摸屏驱动都是字符驱动,采用“文件层-驱动层”的接口方式,本文档中分析的lcd驱动是针对linux2.6.13内核的,本人用的开发板是qq2440,lcd是三星的LTV3500V(带触摸屏的),具体分析的文件:
是"include/linux/fb.h","drivers/video/s3c2410fb.h","drivers/video/s3c2410fb.c","drivers/video/fbmem.c","/include/asm/arch-s3c2410.fb.h(些头文件是针对s3c2440或s3c2410芯片的)",“/home/linux/5/kernel-2.6.13/arch/arm/mach-s3c2410/mach-smdk2410.c"(驱动移植主要就是要修改这个文件,配置一些参数)。详细看一下LCD的驱动,实际上,几乎lcd设备驱动所要做的所有事情就是填充fb_info结构然后向系统注册或注销它
(1)fb.h包含了framebuffer所用到的结构
(2)fbmem.c处于Framebuffer设备驱动技术的中心位置.它为上层应用程序提供系统调用也为下一层的特定硬件驱动提供接口;那些底层硬件驱动需要用到这儿的接口来向系统内核注册它们自己. fbmem.c 为所有支持FrameBuffer的设备驱动提供了通用的接口,避免重复工作.
(3)s3c2410fb.c就是特定硬件驱动(针对s3c2410芯片的),fbmem.c就是沟通应用层跟s3c2410fb.c的桥梁
FrameBuffer设备驱动基于如下几个文件:
1)include/linux/fb.h
2)drivers/video/fbmem.c
3)drivers/video/s3c2410fb.c
4)drivers/video/s3c2410fb.h
5)include/asm/arch-s3c2410/fb.h
现在先来分析这两个文件:
1.fb.h包含了framebuffer所用到的结构
1)fb_fix_screeninfo
描述显示卡的属性,并且系统运行时不能被修改
struct fb_fix_screeninfo {
char id[16]; /* identification string eg "TT Builtin" */
unsigned long smem_start; /* Start of frame buffer mem */
&nb
相关文档:
创建时间:2003-08-22
文章提交:raodan (raod_at_30san.com)
==Phrack Inc.==
卷标 0x0b, 期刊号 0x3d, Phile #0x0d of 0x0f
|=---------------------=[ 深入Linux网络核心堆栈 ]=-----------------------= ......
The
Java Console provides information about the Java Runtime Environment
(JRE) version, user home directory, and any error message that occurs
while running an applet or application. You can enable the Java Console
for the Linux platform.
......
流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议、IP电话等
应用场合的技术基础。RTP是进行实时流媒体传输的标准协议和关键技术,本文介绍如何在Linux下利用JRTPLIB进行实时流媒体编程。
&nb ......