LCD 移植笔记
适用范围
本文档针对飞凌 OKMX6DL/Q-C 平台,Linux 3.0.35 操作系统。
移植步骤(以800x600分辨率为例)
步骤一:内核驱动修改
修改 linux-3.0.35/drivers/video/mxc/mxc_lcdif.c,在 fb_videomode 表(modedb)中添加新屏幕的时序参数。
示例(800x480 @ 57Hz):
static struct fb_videomode lcdif_modedb[] = {
{
/* 800x480 @ 57 Hz, pixel clk @ 27MHz */
"CLAA-WVGA", 57, 800, 480, 37037,
40, 60, 10, 10, 20, 10,
FB_SYNC_CLK_LAT_FALL,
FB_VMODE_NONINTERLACED, 0,
},
// ... 更多模式
};步骤二:U-Boot 配置修改
修改 uboot-2009/include/configs/mx6q_sabresd.h:
#define MXC_FB0 "mxcfb0=video=mxcfb0:dev=lcd,AT080-WVGA,if=RGB24,bpp=32\0"
#define PANEL "panel=AT080-WVGA\0"注意:AT080-WVGA 必须与内核中的配置保持一致。
参数计算方法
具体时序参数需要根据屏幕手册自行计算:
- pixel clock = 10^12 / period (ps)
- 各时序参数:hfrontporch, hsync_len, hbackporch, vfrontporch, vsync_len, vbackporch
已处理的LCD移植案例
| 笔记 | 内容 |
|---|---|
| OKMX6DL-Q-8寸LCD屏移植笔记 | 800x480 LCD,modedb配置、设备树修改 |
| 4.3寸屏触摸不准修改应用笔记 | 触摸校准参数修正 |