gma500: wrong pixel clock on LVDS (half the correct frequency)

Paulo Marques pmarques at
Wed May 7 20:21:07 PDT 2014

Hi all,

I have a embedded PC system here that has an Atom Z510. The system 
includes a GMA500 graphics chip.

The display is connected through the LVDS port and has a resolution of 

The system works ok in Windows and painfully slowly in Linux with the 
vesa driver, but without any flicker.

Using the gma500 driver, the pixel clock seems to be half of what it 
should be (measured with an oscilloscope). When the image is good the 
pixel clock is around 65MHz. When the gma500 driver sets the resolution 
the pixel clock goes to around 32MHz. This gives a frame rate of around 
30Hz which explains the horrible screen flicker. The performance is 
quite good, though.

I tried running xrandr to create new modes, but the pixel clock is 
always wrong, no matter what I tried.

The kernel version is 3.12.1. I looked at the git repository log to see 
if anything changed in the meanwhile that could affect this, but nothing 
popped up.

Can you give me some pointers to what I should try next? Some obscure 
kernel parameter? Do you need more information?

The linux graphics system changed a bit over the last few years (KMS, 
etc.) and I missed some of the changes, so please bare with me if I ask 
silly questions...

Thanks in advance for any help,

Paulo Marques

More information about the dri-devel mailing list