Re: i945G 1280x768 sync polarity bug
"Alex Deucher" <[email protected]>
| Newsgroups | gmane.comp.xfree86.devel |
|---|---|
| Message-ID | <[email protected]> |
On 6/13/06, Barry Scott <[email protected]> wrote: > Tim Roberts 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. > >> > > > > > > Does this matter any more? I thought the relevance of sync polarity > > ended in the middle of the Clinton administration. > > > Good question. We note that the EDID data wants these sync polarities. > Does the monitor use the pulse widths or the polarity to tell one mode > from another? We think that the polarity is used, but we are far from > certain. > > >> 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? > >> > > > > > > It may be an expectations bug. As you note, the Intel driver, like the > > Savage driver, relies on the BIOS to set the mode. The BIOS has a > > limited set of video modes, with canned parameters for each timing. It > > is not infinitely variable. If the BIOS thinks 1280x768 should have > > positive syncs, then you are going to get positive syncs > I'm using 915resolution to add 1280x768 and 1360x768 into the BIOS. > > It seems that if there is an entry in the BIOS for 1280x768 then the driver > is happy to to call INT10 to pass in the timings and sync polarity data. > > If as you say the BIOS timings are the only ones used then what is the point > of the INT10 call to pass in the timings? > I'm not familiar with the i810's bios interface, but no other chip I've ever worked on has allowed me to specify exact timings via the BIOS. It's usually either a VESA mode number or a size and a refresh rate. I doubt the i810 is much different, especially since most i810 bioses don't even support modes like 1280x768 out of the box. Alex > Barry >