您的位置:首页 > 运维架构 > Linux

基于linux-2.6.33的液晶驱动之lcd

2010-03-11 16:18 489 查看
一、修改/arch/arm/mach-s3c2410/mach-smdk2410.c文件

1、添加头文件

#include <mach/fb.h>
#include <mach/regs-lcd.h>
2、添加初始化s3c2410的LCD控制器时所需的参数(copy from /arch/arm/mach-s3c2410/mach-qt2410.c,稍作修改)。

static struct s3c2410fb_display qt2410_lcd_cfg[] __initdata = {
{
/* Configuration for 640x480 SHARP LQ080V3DG01 */
.lcdcon5 = S3C2410_LCDCON5_FRM565 |
S3C2410_LCDCON5_INVVLINE |
S3C2410_LCDCON5_INVVFRAME |
S3C2410_LCDCON5_PWREN |
S3C2410_LCDCON5_HWSWP,

.type = S3C2410_LCDCON1_TFT,
.width = 320,
.height = 240,

.pixclock = 100000, /* HCLK/4 */
.xres = 320,
.yres = 240,
.bpp = 16,
.left_margin = 13,
.right_margin = 8,
.hsync_len = 4,
.upper_margin = 2,
.lower_margin = 7,
.vsync_len = 4,
},
};
static struct s3c2410fb_mach_info qt2410_fb_info __initdata = {
.displays = qt2410_lcd_cfg,
.num_displays = ARRAY_SIZE(qt2410_lcd_cfg),
.default_display = 0,

.lpcsel = ((0xCE6) & ~7) | 1<<4,
};
3、添加LCD控制器的寄存器参数设置函数
static void __init smdk2410_init(void)
{
s3c24xx_fb_set_platdata(&qt2410_fb_info);//加入液晶的配置文件
set_s3c2410ts_info(&MY2410_ts_cfg);//加入触摸屏的配置文件
s3c_i2c0_set_platdata(NULL);
platform_add_devices(smdk2410_devices, ARRAY_SIZE(smdk2410_devices));
smdk_machine_init();
}
4、打开LCD的初始化。(我以前将它屏蔽了)
static struct platform_device *smdk2410_devices[] __initdata = {
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_i2c,
&s3c_device_iis,
};
5、去除10分钟左右自动关闭显示的程序(实验时可以这么做,我猜应该是节能作用,并未深究。)。

copy from《2410 lcd(ltv350)驱动在2.6.14下的移植经历》:

“按seigpao大侠的做法,注释掉drivers/char/vt.c的blank_screen_t(unsigned long dummy)的函数内容,否则,lcd会在10分钟左右关掉显示。“
6、二、配置内核
Device Drivers --->
Graphics support --->
Display device support --->
<*> Display panel/monitor support
<*> Support for frame buffer devices
<*> S3C2410 LCD framebuffer support
Console display driver support --->
<*> Framebuffer Console support
[*] Framebuffer Console Rotation
[*] Select compiled-in fonts
[*] VGA 8x8 font
[*] VGA 8x16 font
[*] Mini 4x6 font
[*] Sparc console 8x16 font
[*] Bootup logo --->
--- Bootup logo
[*] Standard 224-color Linux logo

7、开机画面的选择

首先把要开机Logo图片(png格式)放在linux2.6.30.5文件中的 drivers/video/logo中,终端选择进入drivers/video/logo目录,进行以下操作:

(假设开机图片名为linux.png)

# pngtopnm linux.png > linuxlogo.pnm

# pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm

# pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm

# mv linuxlogo224.ppm logo_linux_clut224.ppm //替换原来的启动文件

注意事项:备份原来的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: