linux-2.4.18-rmk7-pxal-mz4的编译
STEP 1:
将linux-2.4.18-rmk7-pxal-mz4.tar.bz2拷贝到工作目录下并解压,生成kernel目录。
# cd kernel
STEP 2:
修改顶层目录下的Makefile:
CROSS_COMPILE = /usr/local/arm/2.95.3/bin/arm-linux-
STEP 3:
# make menuconfig
在”Load an Alternate Configuration File”菜单后写入”arch/arm/def-configs/smdk2410”
退出后执行
# make zImage
STEP 4:
仅通过以上步骤虽然能正确启动内核,但还不能正确初始化LCD,linux-2.4.18-rmk7-pxal-mz4原有的s3c2410fb.c(kernel/drivers/video/s3c2410fb.c)是240*480LCD的驱动程序,要将它改成640*480,其中部分参数需要根据特定的屏做调整,修改部分如下:
1.将__initdata数据结构修改如下:
#ifdef CONFIG_S3C2410_SMDK
static struct s3c2410fb_mach_info xxx_stn_info __initdata = {
pixclock: 174757, bpp: 16,
#ifdef CONFIG_FB_S3C2410_EMUL
xres: 96,
#else
xres: 640,
#endif
yres: 480,
hsync_len : 96, vsync_len : 2,
left_margin : 40, upper_margin : 24,
right_margin: 32, lower_margin : 11,
sync: 0, cmap_static: 1,
reg : {
lcdcon1 : LCD1_BPP_16T | LCD1_PNR_TFT | LCD1_CLKVAL(1) ,
lcdcon2 : LCD2_VBPD(32) | LCD2_VFPD(9) | LCD2_VSPW(1),
lcdcon3 : LCD3_HBPD(47) | LCD3_HFPD(15),
lcdcon4 : LCD4_HSPW(95) | LCD4_MVAL(13),
lcdcon5 : LCD5_FRM565 | LCD5_INVVLINE | LCD5_INVVFRAME | LCD5_HWSWP | LCD5_PWREN,
},
};
#endif
2.在同一文件中查找LCDLPCSEL,共有四个地方,修改成LCDPCSEL &=(~7);
如果修改成功,则会在屏幕左上角出现MIZI公司LOGO。