Re: i945G 1280x768 sync polarity bug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [X Forum]     [XFree86]     [XFree86 Newbie]     [X.Org]     [IETF Annouce]     [Security]     [Fontconfig]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]

  Powered by Linux