On 6/12/06, Barry Scott <barry.scott@xxxxxxxxxxxx> wrote:
Barry Scott wrote: > Using the Xfree86 4.6.0 i810 driver I'm seeing a problem with sync > polarity setting. > > This modeline is required for 1280x768 mode: > > Modeline "1280x768" 79.30 1280 1335 1473 1665 768 769 772 793 > -hsync +vsync > > But the syncs, as shown on an oscilloscope are +hsync +vsync. > > I added debug messages to show the Flags used. And here is a section > of the log: > > (II) I810(0): Not using built-in mode "1280x1024" (height too large > for virtual size) > (II) I810(0): Not using built-in mode "1360x768" (width too large for > virtual size) > (II) I810(0): Increasing the scanline pitch to allow tiling mode (1280 > -> 2048). > (--) I810(0): Virtual size is 1280x768 (pitch 2048) > (**) I810(0): *Built-in mode "1280x768" > (**) I810(0): Built-in mode "1024x768" > (**) I810(0): Built-in mode "800x600" > (**) I810(0): Built-in mode "640x480" > (II) I810(0): Attempting to use 60.06Hz refresh for mode "1280x768" (85a) > (II) I810(0): I830SetModeParameters() Flags pMode->Flags 0x6 > block->Flags 0x4 > (II) I810(0): Attempting to use 75.08Hz refresh for mode "1024x768" (854) > (II) I810(0): I830SetModeParameters() Flags pMode->Flags 0x5 > block->Flags 0x0 > (II) I810(0): Attempting to use 75.00Hz refresh for mode "800x600" (852) > (II) I810(0): I830SetModeParameters() Flags pMode->Flags 0x5 > block->Flags 0x0 > (II) I810(0): Attempting to use 75.00Hz refresh for mode "640x480" (850) > (II) I810(0): I830SetModeParameters() Flags pMode->Flags 0xa > block->Flags 0xc > > This shows that the I830SetModeParameters() has the correct values in > but pMode-Flags > and block->Flags. > > I have also tested other modes as listed here > > Mode Flags Syncs on wire > 640x480 0xC -hsync -vsync > 800x600 0x0 +hsync +vsync > 1024x768 0xC -hsync -vsync > 1280x1024 0x0 +hsync +vsync > 1280x768 0x4 +hsync +vsync > > As you can see all the Syncs track the Flags except 1280x768. > > Looking at the VBE code it seems that as long as the Flags are > defined correctly by the driver then its down to the INT10 BIOS > to set the syncs on the hardware. > > Do you think this is a BIOS bug or a driver bug? > > Barry I've just noticed that the refresh rate is 52.73Hz not 60Hz as expected. Clearly the mode is not being honored.
The i810 driver is limited to the modes the bios knows how to set. If the bios doesn't have the specific mode you are lookign for, then you are out of luck. There is native modesetting support in the xorg intel driver git tree if you want native modesetting. Alex
Barry
_______________________________________________ Devel@xxxxxxxxxxx http://XFree86.Org/mailman/listinfo/devel