fixed (at least NV34) card hanging after failed boot-time kernel VESA modeswitch. Updated docs. Bumped version to 0.87.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30531 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
7a282f3b28
commit
a6cde944e6
@ -92,7 +92,7 @@ status_t nv_general_powerup()
|
||||
{
|
||||
status_t status;
|
||||
|
||||
LOG(1,("POWERUP: Haiku nVidia Accelerant 0.86 running.\n"));
|
||||
LOG(1,("POWERUP: Haiku nVidia Accelerant 0.87 running.\n"));
|
||||
|
||||
/* log VBLANK INT usability status */
|
||||
if (si->ps.int_assigned)
|
||||
|
@ -1,7 +1,7 @@
|
||||
/* Read initialisation information from card */
|
||||
/* some bits are hacks, where PINS is not known */
|
||||
/* Author:
|
||||
Rudolf Cornelissen 7/2003-3/2006
|
||||
Rudolf Cornelissen 7/2003-5/2009
|
||||
*/
|
||||
|
||||
#define MODULE_BIT 0x00002000
|
||||
@ -2517,11 +2517,13 @@ static void detect_panels()
|
||||
|
||||
/* determine flatpanel type(s) */
|
||||
/* note:
|
||||
* on NV11 accessing registerset(s) hangs card. */
|
||||
//fixme: how about NV11's with panels?
|
||||
//fixme?: linux checks on (only and) all dualhead cards, and only on DAC1...
|
||||
//fixme: testing...
|
||||
if (/*si->ps.tmds1_active && */(si->ps.card_type != NV11))
|
||||
* - on NV11 accessing registerset(s) hangs card.
|
||||
* - the same applies for NV34.
|
||||
* Confirmed for DAC2 access on ID 0x0322,
|
||||
* but only after a failed VESA modeswitch by the HAIKU kernel
|
||||
* at boot time caused by a BIOS fault inside the gfx card: it says
|
||||
* it can do VESA 1280x1024x32 on CRTC1/DAC1 but it fails: no signal. */
|
||||
if (si->ps.tmds1_active && (si->ps.card_type != NV11))
|
||||
{
|
||||
/* Read a indexed register to see if it indicates LVDS or TMDS panel presence.
|
||||
* b0-7 = adress, b16 = 1 = write_enable */
|
||||
@ -2532,9 +2534,7 @@ static void detect_panels()
|
||||
else
|
||||
LOG(2,("INFO: Flatpanel on head 1 is TMDS type\n"));
|
||||
}
|
||||
//fixme: testing...
|
||||
// if (si->ps.tmds2_active && (si->ps.card_type != NV11))
|
||||
if (si->ps.secondary_head && (si->ps.card_type != NV11))
|
||||
if (si->ps.tmds2_active && (si->ps.card_type != NV11))
|
||||
{
|
||||
/* Read a indexed register to see if it indicates LVDS or TMDS panel presence.
|
||||
* b0-7 = adress, b16 = 1 = write_enable */
|
||||
|
@ -243,10 +243,18 @@ Primary lets you force a certain card to be used as primary card in your system
|
||||
<li>Coldstarting doesn't work on TNT1 and GeForce 6xxx/7xxx cards yet.
|
||||
<li>Primary forces the primary card by preceding the exported name by a minus-sign (-) for the selected device. This ensures that this device will be listed at the top in the /dev/graphics/ folder, which is alphabetically ordered. Please make sure you enable the 'primary' feature on just one graphics driver, otherwise it's effect isn't 'guaranteed'.
|
||||
</ul>
|
||||
<li><strong>block_acc:</strong><br>
|
||||
This option lets you disable the acceleration engine all together if enabled. Use this as a workaround if you encounter acceleration engine trouble.
|
||||
<ul>
|
||||
<li><strong>false:</strong> (default setting)<br>
|
||||
The acceleration engine is enabled.
|
||||
<li><strong>true:</strong><br>
|
||||
The acceleration engine is disabled.
|
||||
</ul>
|
||||
</ul>
|
||||
<hr>
|
||||
<br>
|
||||
<a href="mailto:info.be-hold@inter.nl.net">Rudolf Cornelissen.</a>
|
||||
<p>(Page last updated on June 10, 2008)</p>
|
||||
<p>(Page last updated on May 1, 2009)</p>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -4,7 +4,7 @@
|
||||
</head>
|
||||
<body>
|
||||
<p><h2>Changes done for each driverversion:</h2></p>
|
||||
<p><h1>head (SVN 0.85, Rudolf)</h1></p>
|
||||
<p><h1>head (SVN 0.87, Rudolf)</h1></p>
|
||||
<ul>
|
||||
<li>Fixed driver assuming enabling AGP mode succeeded on some occasions if it did not block it itself. Blocking AGP mode completely via the AGP busmanager (option 'block_agp') resulted in a crashing acceleration engine because it was setup for AGP transfers instead of using PCI transfers. Error was solved with help from user kraton.
|
||||
<li>Fixed shared_info struct problem occuring when 3D 'accelerant' is used (tested Alpha 4.1): the TVencoder type definition list apparantly gets some memory assigned these days when done inside the definition of shared_info. Moved encoder list outside the shared_info definition.
|
||||
@ -14,6 +14,8 @@
|
||||
<li>'pgm_panel' is now preset to 'false' since this will probably increase chances of a good picture on panels outthere.
|
||||
<li>'force_ws' is now (re-enabled but) preset to 'true' since the number of widescreen monitors outthere is rapidly becoming mainstream.<br> <strong>Note please:</strong><br>
|
||||
'force_ws' was hardcoded to setting 'true' some time ago by the Haiku team because of these monitors.
|
||||
<li>Added 'block_acc' option in nvidia.settings to completely disable the acceleration engine. Use this as a work-around if the acceleration engine misbehaves.
|
||||
<li>Fixed card/system hanging after trying to log LVDS/TMDS distinction info. This (at least) fixes one NV34 trying to startup after a failed kernel VESA modeswitch without using the driver's coldstart option. Might very well help on other type cards too.
|
||||
</ul>
|
||||
</ul>
|
||||
</ul>
|
||||
|
Loading…
Reference in New Issue
Block a user