TI中文支持网
TI专业的中文技术问题搜集分享网站

AM335x Underflow 问题求助

首先抱歉一下,我不是硬件设计背景,但是主管的项目里,设计了一块主控板,使用Am335x芯片, Linux 3.2.0, 通过GPIO外接LCD;所以表述上可能不是很准确,希望能说明白问题。

问题:已按照论坛里的置顶帖做过DDR3 Software Leveling,系统初始化过程中能看到LCD背光点亮,然后有几率成功显示界面,也有几率LCD直接黑屏,显示出现Underflow,此时LCD背光都没有了,也无法自行恢复,经常多次Underflow,之后可能内核崩溃;如果成功显示界面,之后一般会比较稳定,但是也有几率LCD突然黑屏,并出现Underflow;

这块板是自己的项目组设计的,采用UBL+Uboot,开始没有设计JTAG接口,调试出现此问题后,试图自行设置DDR3参数解决问题,但是结果是很大几率LCD黑屏,并没有Underflow的中断信息,后来加了JTAG后,用CCS跑了Leveling, 变成上面的情况,区别只是现在必定能看到Underflow信息

if ((stat & LCD_SYNC_LOST) || (stat & LCD_FIFO_UNDERFLOW)) {
printk(KERN_ERR "LCDC sync lost or underflow error occured! SYNC_LOST:0x%lx UNDERFLOW:0x%lx 0x%x\n", stat & LCD_SYNC_LOST, stat & LCD_FIFO_UNDERFLOW, lcdc_read(LCD_RAW_STAT_REG));
lcd_disable_raster(NO_WAIT_FOR_FRAME_DONE);
//clk_disable(par->lcdc_clk);
lcdc_write(stat, LCD_MASKED_STAT_REG);
lcd_enable_raster();
//clk_enable(par->lcdc_clk);

试过各种DDR3参数调整,时钟调整,有的时候似乎有点作用,但是都能重现黑屏且无法恢复;

也检查了布线,始终找不到问题所在;

测LCDC时钟在黑屏后异常,pix clk 从正常的75M变成140M;

请求帮助,现在不知道该从哪里入手,该怎么定位问题。

Jian Zhou:

你的LCD的分辨率是多少的,感觉像是内存泄漏

Cheng Yang1:

回复 Jian Zhou:

非常感谢您的回复,在da8xx-fb里使用如下定义,

[2] = { .name = "VGA", .width = 1024, .height = 768, .hfp = 18, .hbp = 1248, .hsw = 53, .vfp = 3, .vbp = 29, .vsw = 6, .pxl_clk = 72000000, .invert_pxl_clk = 1,//0, },

lcdc function clock 300M,实际使用pxl_clk是75M

赞(0)
未经允许不得转载:TI中文支持网 » AM335x Underflow 问题求助
分享到: 更多 (0)