I was just wondering about what is the status of driver support for cards that have a DVI connector? I have a Geforce fx 5200 based card that has DVI port but dual booting haiku/linux is a pain since when using vga the image quality is well… poor compared to DVI-A (at least in linux)
Generally, the support is entirely dependent on the driver. It’s my understanding that there’s nothing specific in Haiku that makes DVI magically work properly on all cards, but rather each driver must be coded properly to deal with it for the specific hardware it supports.
It should work properly for most situations, I know plenty of people are using DVI screens with Haiku just fine.
If you are having a specific issue with your hardware in Haiku, please log an issue in http://dev.haiku-os.org - Rudolf maintains the nvidia driver, and he would probably be able to assist in tracking down the issue, or helping you with a solution.
Just solved the problem. I succesfully booted into haiku using vga connector, after which I set the resolution to my tft panel’s native resolution, rebooted using the dvi connector and the problem was solved. It seems that when using dvi with a tft panel the resolution must be set to the display’s native resolution or else (in my case anyway) the screen just goes blank. I even tested with the dvi setup to change the resolution in screenprefs to a smaller resolution which worked fine with vga and again the screen went blank…
I guess this could be corrected by adding code to the driver/appserver that gets EDID information from the card/monitor and sets it automatically to the displays native resolution.
Should this be filed as a ticket or is this a known problem with flatscreen monitors??
Yeah, I don’t think the nvidia driver uses the “common” Haiku EDID code that is already in use by the intel and radeon drivers now.
Hopefully that will be added in the future to assist with this
I would maybe file it as an enhancement ticket for the nvidia driver if there isn’t yet one already created.
Yup, Ticket #1696 and seems that it is not yet closed (last modification 10 months ago) so I guess that the EDID code will not see the daylight anytime soon, but thats ok since it works with dvi now (for those people that intend to run Haiku now using dvi only with tft-panels that have only dvi connector might have a problem, though). Well you can always modify the sources to select the native resolution of your monitor and compile the image yourself
You should probably add a comment to that ticket with your experience and workaround (plus you can add yourself as a ‘cc’ in case it ever gets updated)
I’am using the same Geforce card (fx 5200) and had the same problem but a different solution.
Just use the driver from Bebits. Boot in fail safe video mode, copy the files and make a link.
This specific DVI problem is new to me: the nVidia driver should work with DVI with all resolutions upto/including the resolution that the DVI link itself is set to by the gfx BIOS at boot time.
On most cards the resolution for the DVI link is set to the monitor’s native resolution. However, on some systems the DVI link resolution is lower than the native resolution. Since every choosen resolution via ScreenPrefs is ‘scaled’ to the DVI link resolution in such a case native resolution isn’t possible.
Unfortunately, last time I looked there was no info whatsoever on programming the DVI link outside of the BIOS. That’s why I rely on the BIOS for this.
Of course that should be fixed someday: this will also add coldstart capability for the DVI link on coldstart supported cards (<GF6xxx series if I remember correctly). Currently coldstarting only works for analog connected screens (so via VGA 15 pins, or via DVI-A using the converter-to-VGA connector).
About EDID: I am aware of this common routines and even had a small discussion with Thomas about it when he first introduced these common files. It’s not yet implemented because of lack of time (keeping the driver upto date with all new cards coming out already is next to impossible for one person unless he’s fulltime devoted to it)
I have EDID on my wishlist though (will require a lot of testing BTW)
About the driver in general:
Please be aware that this driver was created without any help from nVidia. The docs are not available. It’s NOT POSSIBLE to correctly support all cards and all features on all setups. If this would be required to have the driver enabled in Haiku as a default then it should be better turned off. The most safe default standard would be VESA 2.x and 3.x mode (which works nicely I think these days BTW!)
I’m an idiot. Just press spacebar before the vesa boot screen appears, boot into safe vesa mode, set the resolution to your panel’s native resolution and reboot. (No downloading drivers, editing code or switching cables). I didn’t have a clue that Haiku was so “advanced” that it had a safe mode. Maybe there should be a message like “press space to boot into safe mode” before Haiku starts loading…?
If we displayed something to the user to indicate that they should press spacebar, we’d have to wait several seconds to allow enough time for the screen to change modes (since a lot of BIOS now switch from a graphical bios screen to text mode for this), and then give the user a chance to see it (probably close to 5-10).
That would in some cases nearly double the boot time for Haiku, or at least increase it significantly (on my laptop, Haiku boots in ~20-25 seconds). That’s pretty huge considering it should be necessary in most situations, and low boot time is one of Haiku’s best features.
IMO of course.