Vesa/edid/vblanking
Posted: Thu Feb 25, 2010 1:35 pm
Hey all,
I've just about wrapped up my vbe pre-kernel code. I have got a few questions though:
Firstly, can one use the normal vga regs to determine vertical blanking while operating under a vesa mode? I would assume if the card was vga compatible one could, but there are no guarantees that these ports would function as expected in a vesa mode?
I've added support for ddc and reading the edid. The main reason is that the list of modes vesa bios returns while supported by the adapter are not necessarily supported by the screen. I know that Brendan did a lot of work aound this with GTF some time back. Not sure if he reached any conclusions?
Initially I'm think that I should use the edid information to filter out modes which exceed the max resolution of the screen. Secondly is to determine the correct refresh/timings for crtcinfo (that's what i'm not 100% sure about how to do at the moment). One would assume (hope) that the bios would set a compatible refresh when setting a mode.
I'm also curious as to what the outcomes of all this are on dual monitor setups, if the screens are not identical, ie laptop+external, or dual-head with 2 different monitors?
I know when i test on my laptop i get a different list of vbe modes/edid back for the primary depending on if it runs on the laptop screen exclusively or on the external lcd.
What would concern me here is that it's still possible to have both screens on at the same time (not extended) but duplicated, which may lead to a refresh issue on the one possibly?
Any info would be great!
John
I've just about wrapped up my vbe pre-kernel code. I have got a few questions though:
Firstly, can one use the normal vga regs to determine vertical blanking while operating under a vesa mode? I would assume if the card was vga compatible one could, but there are no guarantees that these ports would function as expected in a vesa mode?
I've added support for ddc and reading the edid. The main reason is that the list of modes vesa bios returns while supported by the adapter are not necessarily supported by the screen. I know that Brendan did a lot of work aound this with GTF some time back. Not sure if he reached any conclusions?
Initially I'm think that I should use the edid information to filter out modes which exceed the max resolution of the screen. Secondly is to determine the correct refresh/timings for crtcinfo (that's what i'm not 100% sure about how to do at the moment). One would assume (hope) that the bios would set a compatible refresh when setting a mode.
I'm also curious as to what the outcomes of all this are on dual monitor setups, if the screens are not identical, ie laptop+external, or dual-head with 2 different monitors?
I know when i test on my laptop i get a different list of vbe modes/edid back for the primary depending on if it runs on the laptop screen exclusively or on the external lcd.
What would concern me here is that it's still possible to have both screens on at the same time (not extended) but duplicated, which may lead to a refresh issue on the one possibly?
Any info would be great!
John