diff --git a/src/add-ons/accelerants/nvidia/engine/nv_dac2.c b/src/add-ons/accelerants/nvidia/engine/nv_dac2.c index 9b796abad8..35c6e863c1 100644 --- a/src/add-ons/accelerants/nvidia/engine/nv_dac2.c +++ b/src/add-ons/accelerants/nvidia/engine/nv_dac2.c @@ -24,6 +24,7 @@ bool nv_dac2_crt_connected() /* (It DOES have a secondary palette RAM and pixelclock PLL though.) */ case NV11: /* on NV40 arch (confirmed NV43, G71, G73) this routine doesn't work. */ + /* (on NV44 (confirmed Geforce 6200LE) this routine *does* work.) */ case NV43: case G71: case G73: diff --git a/src/add-ons/accelerants/nvidia/engine/nv_general.c b/src/add-ons/accelerants/nvidia/engine/nv_general.c index b78535a492..9149490f6b 100644 --- a/src/add-ons/accelerants/nvidia/engine/nv_general.c +++ b/src/add-ons/accelerants/nvidia/engine/nv_general.c @@ -1,7 +1,7 @@ /* Authors: Mark Watson 12/1999, Apsed, - Rudolf Cornelissen 10/2002-10/2009 + Rudolf Cornelissen 10/2002-11/2009 tst.. */ @@ -92,7 +92,7 @@ status_t nv_general_powerup() { status_t status; - LOG(1,("POWERUP: Haiku nVidia Accelerant 1.06 running.\n")); + LOG(1,("POWERUP: Haiku nVidia Accelerant 1.07 running.\n")); /* log VBLANK INT usability status */ if (si->ps.int_assigned) diff --git a/src/add-ons/accelerants/nvidia/engine/nv_info.c b/src/add-ons/accelerants/nvidia/engine/nv_info.c index 4f0a1ba140..da7a015dbe 100644 --- a/src/add-ons/accelerants/nvidia/engine/nv_info.c +++ b/src/add-ons/accelerants/nvidia/engine/nv_info.c @@ -1,7 +1,7 @@ /* Read initialisation information from card */ /* some bits are hacks, where PINS is not known */ /* Author: - Rudolf Cornelissen 7/2003-9/2009 + Rudolf Cornelissen 7/2003-11/2009 */ #define MODULE_BIT 0x00002000 @@ -2783,13 +2783,26 @@ static void setup_output_matrix() LOG(2,("INFO: defaulting to head 2 for primary use.\n")); si->ps.crtc2_prim = true; break; + case NV44: + /* NV44 is a special case in this situation (confirmed Geforce 6200LE): + * It's hardware behaves as a NV40/41/45 but there's some unknown extra bit + * which needs to be programmed now to get CRTC2/DAC2 displaying anything + * else than blackness (with monitor ON @ correct refresh and resolution). + * We are therefore forced to use CRTC1/DAC1 instead (as these are presetup + * fully by the card's BIOS at POST in this situation). */ + LOG(2,("INFO: head 1 has nothing connected;\n")); + LOG(2,("INFO: head 2 has an analog panel or CRT:\n")); + LOG(2,("INFO: cross-switching outputs for NV44!\n")); + nv_general_output_select(true); + LOG(2,("INFO: defaulting to head 1 for primary use.\n")); + break; default: /* newer NV40 architecture cards contains (an) additional switch(es) * to connect a CRTC/DAC combination to a connector. The BIOSes of * these cards connect head1 to connectors 1 and 2 simultaneously if * only one VGA screen is found being on connector 2. Which is the * case here. - * Confirmed on NV43, NV44, G71 and G73. */ + * Confirmed on NV43, G71 and G73. */ LOG(2,("INFO: Both card outputs are connected to head 1;\n")); LOG(2,("INFO: defaulting to head 1 for primary use.\n")); break; diff --git a/src/add-ons/kernel/drivers/graphics/nvidia/UPDATE.html b/src/add-ons/kernel/drivers/graphics/nvidia/UPDATE.html index 862d8ceeb8..96f8887104 100644 --- a/src/add-ons/kernel/drivers/graphics/nvidia/UPDATE.html +++ b/src/add-ons/kernel/drivers/graphics/nvidia/UPDATE.html @@ -4,7 +4,7 @@

Changes done for each driverversion:

-

head (SVN 1.06, Rudolf)

+

head (SVN 1.07, Rudolf)

nv_driver 0.80 (Rudolf)