主题 : mini2440学习之(三)-------移植LCD驱动 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 3870
精华: 2
发帖: 20
金钱: 240 两
威望: 240 点
综合积分: 80 分
注册时间: 2009-02-13
最后登录: 2009-07-31
楼主  发表于: 2009-04-16 17:40

 mini2440学习之(三)-------移植LCD驱动

转载请注明-----------------hongshaoone--------------------http://www.aiothome.com


1.修改arch/arm/mach-s3c2440/mach-smdk2440.c
CODE:
static struct s3c2410fb_display smdk2410_lcd_cfg __initdata = {
.lcdcon5 = S3C2410_LCDCON5_FRM565 |
S3C2410_LCDCON5_INVVLINE |
S3C2410_LCDCON5_INVVFRAME |
S3C2410_LCDCON5_PWREN |
S3C2410_LCDCON5_HWSWP,
.type = S3C2410_LCDCON1_TFT,
.width = 240,
.height = 320,
.pixclock = 174757,
.xres = 240,
.yres = 320,
.bpp = 16,
.left_margin = 6,
.right_margin = 37,
.hsync_len = 6,
.upper_margin = 4,
.lower_margin = 6,
.vsync_len = 2,
};
static struct s3c2410fb_mach_info smdk2410_fb_info __initdata = {
.displays = &smdk2410_lcd_cfg,
.num_displays = 1,
.default_display = 0,
.gpccon = 0xaa955699,
.gpccon_mask = 0xffc003cc,
.gpcup = 0x0000ffff,
.gpcup_mask = 0xffffffff,
.gpdcon = 0xaa95aaa1,
.gpdcon_mask = 0xffc0fff0,
.gpdup = 0x0000faff,
.gpdup_mask = 0xffffffff,
.lpcsel = 0xf82,
};
以上数据保持一致
2.在drivers/video/s3c2410fb.c 中添加如下函数
static void  LCD_POWER_ON()
{
        writel(readl(S3C2410_GPGUP)  | (1<<4) ,  S3C2410_GPGUP);
        writel(readl(S3C2410_GPGCON) | (3<<8),   S3C2410_GPGCON);
}
再在 s3c2410fb_init_registers() 的末尾调用 LCD_POWER_ON().
3.make menuconfig 设置
Device Drivers --->
                 Graphics support  --->
                      <*>Support for frame buffer device
                      <*>S3C2410  LCD framebuffer support
                      console   display   driver support------>
                       <*> Framebuffer  console support
                        [  ]  Select compiled-in fonts
                [*]  Bootup  logo  ----->
                           [*]Standard 224-color linux logo

4.最后编译运行  LCD屏亮起来了!你会看见企鹅的LOGO了~~~~~
级别: 新手上路
UID: 3819
精华: 0
发帖: 32
金钱: 295 两
威望: 275 点
综合积分: 64 分
注册时间: 2009-02-11
最后登录: 2010-02-05
1楼  发表于: 2009-04-16 17:47
thank you very much!刚弄到这一步正头大呢
级别: 新手上路
UID: 3819
精华: 0
发帖: 32
金钱: 295 两
威望: 275 点
综合积分: 64 分
注册时间: 2009-02-11
最后登录: 2010-02-05
2楼  发表于: 2009-04-16 18:03
哈哈,刚才试验了很好用啊,楼主能不能介绍下经验,怎么知道这么改的啊?是参考2440pdf,还是友善的程序?
级别: 新手上路
UID: 3870
精华: 2
发帖: 20
金钱: 240 两
威望: 240 点
综合积分: 80 分
注册时间: 2009-02-13
最后登录: 2009-07-31
3楼  发表于: 2009-04-16 18:51

 回 2楼(lsw0136) 的帖子

多查网上的资料,多看别人的分析,多次亲手尝试,你就知道了!
级别: 新手上路
UID: 3819
精华: 0
发帖: 32
金钱: 295 两
威望: 275 点
综合积分: 64 分
注册时间: 2009-02-11
最后登录: 2010-02-05
4楼  发表于: 2009-04-16 19:02
我发现logo点亮10多分钟后自己就没了
级别: 骑士
UID: 4234
精华: 0
发帖: 152
金钱: 1420 两
威望: 1142 点
综合积分: 304 分
注册时间: 2009-03-05
最后登录: 2012-08-18
5楼  发表于: 2009-04-18 09:04
dddd
级别: 骑士
UID: 4234
精华: 0
发帖: 152
金钱: 1420 两
威望: 1142 点
综合积分: 304 分
注册时间: 2009-03-05
最后登录: 2012-08-18
6楼  发表于: 2009-07-28 20:52
楼主有没有想过这个驱动如何进行90度的翻转
级别: 侠客
UID: 8129
精华: 0
发帖: 78
金钱: 490 两
威望: 213 点
综合积分: 156 分
注册时间: 2009-08-11
最后登录: 2017-09-13
7楼  发表于: 2009-11-19 16:44
请问 .pixclock = 174757,
这个数据怎么计算出来的?? 谢谢     
级别: 新手上路
UID: 104723
精华: 0
发帖: 12
金钱: 60 两
威望: 12 点
综合积分: 24 分
注册时间: 2014-06-03
最后登录: 2014-09-14
8楼  发表于: 2014-08-19 13:57
看看,这是怎么回事