Created attachment 22377 [details] Xorg.log The patch mentioned in the subject (commit 7662c8bd6545c12ac7b2b39e4554c3ba34789c50 in mainline) breaks the X server on the Fujitsu S7110 with an SXGA+ display. The X server still works and displays the correct image as long as no major drawing activity takes place. As soon as something happens on the screen (even scrolling in gnome-terminal), the image on the screen starts to jump around. When the drawing is finished, everything looks fine again. Reverting the mentioned patch helps. https://bugs.freedesktop.org/show_bug.cgi?id=22264 might be related. I am sorry, but I currently don't have the log file of the broken X server at hand, so I can't check for underrun messages; yet the erratic display looks *VERY* much like FIFO underruns. I have the Xorg.log (running current HEAD kernel 35b5c55fee08e6e4001ba98060a2d0b82f70b5f4, but with 5aa8f839f8d96a65082456124fff1f16d4738586 and c99f0b4fe83c0ed1efcfedcfdb2050b08a3c1a15 reverted) attached.
Created attachment 22378 [details] kernel log output
I forget to add that I was unable to locate the commit commit dff33cfcefa31c30b72c57f44586754ea9e8f3e2 Author: Jesse Barnes <jbarnes@virtuousgeek.org> Date: Tue Jul 14 10:15:56 2009 -0700 drm/i915: FIFO watermark calculation fixes mentioned in the freedesktop bug tracker, as I could not find the git tree it is located in, so I can't test whether that patch fixes my issue.
It's in Eric's drm-intel-next branch, can you try that? http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=shortlog;h=drm-intel-next
I just git-am'ed the mentioned patch from that kernel tree - The internal display of the laptop works fine again. I didn't test dual-head/TV-out or other options. In fact, I don't even own an TV set. Thanks you very much for your quick response.
Great, thanks for testing.
Marking fixed. Should land in Linus's tree soon.
Sorry, the bug is not completely fixed yet. I tested dualhead support, and it fails in the highest resolution, that is 1280x1024 at 85Hz. While the LVDS output at 1400x1050 @ 60Hz is rock solid, the VGA output at 1280x1024 flickers on accelerator activity (both outputs active at the same time. Movie Playback (using Textured Video) works fine, even in dualhead. If I reduce the external VGA output to 75 Hz, I get a correct picture with the movie running on both screens, both windowed and full-screen. I think this worked with the FIFO timings programmed by the BIOS. Will retry. Also, I was able to run the external output at 1600x1200; the monitor is capable, but current X doesn't offer it. Probably that is a seperate bug.
Created attachment 22386 [details] drm debugging output when setting 1280x1024 @ 85Hz I get the attached kernel log on enabling the non-functional 1280x1024 @ 85Hz on the VGA output (which is connected to pipe A). Obviously, the code decides to need more entries in the FIFO than the FIFO of pipe A provides in total. I am very confident that the hardware is able to run even 1600x1200 @ 60 Hz, using an even higher pixel clock on the external output without any problems. The system has an Intel T7200 processor (i.e. FSB667) and DDR667 RAM in asymmetric dual channel configuration. (1G + 2G)
reopening, as that code does not fix all issues about watermark setting.
Ah I think I just fixed that bug yesterday, see http://lists.freedesktop.org/archives/intel-gfx/2009-July/003471.html
That fix helps.