Rudolf Cornelissen
9c9a94038a
modified shared_info for mainmem DMA command buffer use.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12834 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:31:12 +00:00
Rudolf Cornelissen
8d87804ed6
added creation of 1Mb DMA command buffer in main mem. Hopefully this will further speedup DMA acceleration when finished in accelerant.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:30:20 +00:00
Rudolf Cornelissen
8e02d400d1
added global var for DMA command buffer area clone in mainmem.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 09:28:38 +00:00
Rudolf Cornelissen
2dbb0e96d5
removed test remark.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-22 13:55:01 +00:00
Rudolf Cornelissen
2355a05635
same engine command defines location cleanup for PIO mode, as done before for DMA mode.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-22 13:54:23 +00:00
Rudolf Cornelissen
23f40a2345
more cleanup for DMA: re-organised cmd define locations.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-22 13:22:52 +00:00
Rudolf Cornelissen
c3e79839e0
commented out the 'old cmd' defines, fixed 3D surface define to work for DMA (and PIO after 3D add-on update I hope).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-22 12:59:42 +00:00
Rudolf Cornelissen
af9bb34820
major hash and engine command defines cleanup (PIO and DMA). It looks like the hash-rules are quite simple after all. Hoping I'm right about that: looking good. PIO mode: 3D add-on alpha1 should nolonger work with the current 2D driver (hang). DMA mode: on TNT2 orig, DMA 3D acc is fully working now. All surface commands work, old ones are removed. I'll (try to) bring PIO mode upto par so 3D will work again there too. GLteapot stays at 360fps @ 16bit, 280 fps @ 32bit for now (TNT2 orig). Bumped version to 0.47.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-22 12:57:23 +00:00
Rudolf Cornelissen
980fda2605
fixed concurrent overlay and 3D use. This never worked before: it turns out that overlay requires a certain engine command setup order/chain without gaps to prevent hard crashes. 3D surface cmd still down though..
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12756 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-21 18:56:47 +00:00
Rudolf Cornelissen
0fcc145db7
removed more old surface commands related programming.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-21 16:04:02 +00:00
Rudolf Cornelissen
1684de3904
removed old 2D/3D surface commands. While the 'new' 3D surface command is still down, the 2D surface command has been replaced with NV4_SURFACE/NV10_CONTEXT_SURFACES_2D. These indeed work. Teapot: now @ 360fps on TNT2 orig (16bit).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-21 15:45:55 +00:00
Rudolf Cornelissen
6efe4e121f
fixed introduced error for TNT1. DMA mode is a bit flaky ATM though here.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 19:02:23 +00:00
Rudolf Cornelissen
00b2e25e62
more colorspace dependand engine cmd programming for 3D. Now 15,16 and 32bit mode are up again: 15/16bit: teapot 320fps, 32: 280fps (tnt2). All demos run.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 14:07:12 +00:00
Rudolf Cornelissen
1252f57f61
added DMA surface cmd's colorspace dependant programming. These commands were still down at last 3D test, but already the Teapot is spinning at 300fps in DMA mode ona TNT2 over here!!
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 13:39:50 +00:00
Rudolf Cornelissen
d4189794fe
more DMA 3D related engine command defines (completed).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-12 08:24:06 +00:00
Rudolf Cornelissen
50fdc6cbe7
adding 3D DMA cmd offset defines: in progress.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-11 20:25:13 +00:00
Rudolf Cornelissen
e22e2de123
added new 'register'definitions needed for largest number of acceleration engine commands ever defined simultaneously (AFAIK) (3D DMA attempt).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-10 20:16:41 +00:00
Rudolf Cornelissen
372f7c3b9e
added all 3D related commands found in PIO acceleration code to DMA pre-NV40 code as well. Bumped version to 0.46: experimental, should be fully OK though (for 2D).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12626 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-10 20:13:20 +00:00
Rudolf Cornelissen
fbcb1d9d39
updated info for card 0x014f to be more correct
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-10 19:06:40 +00:00
Rudolf Cornelissen
85f0f8b10b
updated info for card 0x014f to be more correct
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-10 19:06:11 +00:00
Rudolf Cornelissen
7c216bed2a
updated docs.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-09 12:53:01 +00:00
Rudolf Cornelissen
4d2a543400
driver version is now 0.45.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-09 12:27:53 +00:00
Rudolf Cornelissen
3c4c050540
expanded CRTC1 FIFO watermark/burst programming: only using if coldstarted, and only on TNT2-M64. Minimizes output distortions on this card. Other cards seem fast enough to not need this (still checking..)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-09 11:23:28 +00:00
Rudolf Cornelissen
82581f548d
added CRTC1 FIFO low-watermark/burstsize preliminary programming (not yet enabled: testing). This should be fixing high-res mode display sparking/noise/errors/DMA engine hangs in the (near) future.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-09 08:51:22 +00:00
Rudolf Cornelissen
481edfc19e
added pre-NV10 coldstart RAM size checks and correction code. Confirmed working OK on a TNT2-M64 with pins 5.1
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-08 20:41:08 +00:00
Rudolf Cornelissen
535dd126d3
fixed coldstart on pre-NV10 cards with PINS V3-V5pre18: confirmed missing info with a new card I have for testing.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-08 20:33:31 +00:00
Rudolf Cornelissen
1ffd04260a
updated docs.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-08 10:31:17 +00:00
Rudolf Cornelissen
6a2443fd04
fixed NV15 RAM access/distortions trouble introduced in V0.10 of this drivercd obos_svn/trunk/src/add-ons/accelerants/nvidia/ Might fix other singlehead card likewise trouble as well. Bumped driver version to 0.44. Note: for 3D NV15 is the fastest currently supported card ;-)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-08 10:30:14 +00:00
Rudolf Cornelissen
311e69173b
added GeForce 6200 PCIe Turbocache support for ID 0x014f
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-07 07:39:42 +00:00
Rudolf Cornelissen
7a0bd7f2b6
added GeForce 6200 PCIe Turbocache support for ID 0x014f
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-07 07:38:56 +00:00
Rudolf Cornelissen
85228960cf
forgot comment update in nv.settings for 2D/3D acc logging
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-02 18:09:27 +00:00
Rudolf Cornelissen
140867d32d
finalized doc for release 0.43 of nvidia driver
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-02 18:02:39 +00:00
Rudolf Cornelissen
846f49314f
added logging module info for 3D add-on. BTW bumped driverversion to 0.43
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:59:44 +00:00
Rudolf Cornelissen
9c3c151715
added second flag for 3D add-on indicating 2D modechanges
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:48:41 +00:00
Rudolf Cornelissen
a3da25fc7e
added loglevel use indication: 3D add-on adheres to this, 2D driver should be retuned some day
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:47:21 +00:00
Rudolf Cornelissen
c9c0c72b4b
added second flag for 3D add-on signalling mode changes happening for apps rendering in non-direct mode
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:45:44 +00:00
Rudolf Cornelissen
83d94df950
added a fixme note with regard to multiple 3D add-ons
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-19 18:37:22 +00:00
Rudolf Cornelissen
300af26345
Added a flag indicating a modeswitch happened/is happening so the 3D add-on can block rendering and re-inits.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-18 11:26:37 +00:00
Rudolf Cornelissen
afb207ac58
pre-NV10 3D update syncing driver to current 3D add-on for nVidia; also added a flag in shared info to tell the 3d add-on to stop rendering and re-init when a mode-switch occurs. Bumped version to 0.42.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12435 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-18 11:23:37 +00:00
Rudolf Cornelissen
6ad7f78f09
test commit
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12434 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-18 09:13:23 +00:00
Rudolf Cornelissen
860d572c2e
finalized documentation for driver release (as V0.41). All my cards confirmed OK and very fast compared to 'the old days'.
...
It's confirmed BTW that GeForce PCIe/AGP 6600GT is working OK (tested on 3 cards), and also GeForce AGP 6800GT is OK (one card tested).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 20:52:21 +00:00
Rudolf Cornelissen
4879571b0d
doc update. Version is now 0.41.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11434 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 16:24:41 +00:00
Rudolf Cornelissen
7540371dbb
the DMA acc sub-cmd-lists are now issued to a single engine command (except for blit because it's hardware can't do that), instead of to multiple issued engine commands. (one could say 'parallel processing' but that's not the case: it remains serial: it's just faster).
...
DMA acceleration speed is up another 10% for rect and span commands.
commencing more testing now: code is complete (I hope).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 16:20:40 +00:00
Rudolf Cornelissen
dffca5825b
doc update, version is now 0.40.
...
(still one more speed update to do before testing and release :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 14:36:51 +00:00
Rudolf Cornelissen
d0ef756a52
optimized DMA acc code more by splitting up command lists into sublists before issuing them to the engine. this further improves speed with upto about 70 percent, for a total of about doubling the speed by pure software optimation.
...
Note: code is now working the same as Thomas's ATI driver: he minimized calls in the same ways. (Curious how a benchmark contest would hold up now.. ;-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11431 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 14:34:09 +00:00
Rudolf Cornelissen
361b304a02
... on slow CPU's it's also upto 15% gain apparantly.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 13:15:42 +00:00
Rudolf Cornelissen
0702e3f652
(doc update..)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11428 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 13:02:05 +00:00
Rudolf Cornelissen
1554e5cb4c
applied DMA mode speed optimations 'step 1.5': incorporated all top-level acceleration functions inside the engine's code so minimal nested calls are made. Confirmed further speedup of about 15% on fast CPU's...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-21 13:00:14 +00:00
Rudolf Cornelissen
bffb1c3e50
added a comment about 'parallel processing' of rect functions (due for next speed optimize 'step 2').
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11424 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 17:46:32 +00:00
Rudolf Cornelissen
9e7390ba4a
bumped version to 0.38.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 17:42:58 +00:00
Rudolf Cornelissen
18dfc8a2b0
optimizing DMA acc for speed ('step 1'). Also simplifies code.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 17:40:56 +00:00
Rudolf Cornelissen
27fe7559f1
updated doc once more.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 12:57:54 +00:00
Rudolf Cornelissen
10988528d1
added fix (not yet completely tested) for NV40/NV45 artifacts on heavy acc engine use. Bumped driverversion to 0.37.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 12:50:09 +00:00
Rudolf Cornelissen
ba37dabf99
small cleanup, added one new registerdefine for NV40/NV45.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 09:56:57 +00:00
Rudolf Cornelissen
cb49723124
added one (still disabled) register for framebuffer config(?) on NV40/NV45 (in test)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-19 09:54:56 +00:00
Rudolf Cornelissen
93ae86bf61
replaced some occurances of BeOS with Haiku :-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 20:48:09 +00:00
Rudolf Cornelissen
813524fb5a
updated driver documentation.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-18 20:40:26 +00:00
Rudolf Cornelissen
29e629c82e
shutdown panel DPMS for laptops: I don't like the looks of that!. Confirmed DPMS working OK for all DVI panels though.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 16:51:35 +00:00
Rudolf Cornelissen
6072aa9f44
fixed PLL locking trouble on NV36 (confirmed) and problably more cards (NV31, NV40 and higher): those with extended PLL's.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11404 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 13:47:54 +00:00
Rudolf Cornelissen
ecaef637fa
added preliminary DPMS support for all panels (still in test)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 13:34:13 +00:00
Rudolf Cornelissen
4157b3aeec
-added the NV40 arch screen connections limitations to the doc;
...
-added a fixme comment in the kerneldriver: it seems we must try to map cardBIOSes to memory ourselves if possible after all (should be PCI config manager work I'd say): encountered two systems now that don't have that done (by BIOS I guess). A old PCI-only system (Pentium200), and a brand new PCIe system: Both PCI and PCIe cardBIOSes don't get mapped here which prevents us from using coldstarts on secondary cards :-/
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 11:53:25 +00:00
Rudolf Cornelissen
36ad4411a8
added some comments about NV40 architecture. We have several new unknown factors:
...
- DAC2 always detects a analog screen connected;
- it seems like there are at least two new registers we don't know about. One extra switch to place output on connectors, and one (extra) switch for pixelclock PLL to CRTC connections (one PLL drives both CRTC's in some cases, pre-programmed by the card BIOS determined on the screen configuration found at power-up.
- in a known register (TSTCTRL) b20 blocks/moves output on connectors (?).
All confirmed on NV43, GeForce PCIe 6600GT.
Driver status:
- one DVI monitor connected is OK;
- one analog screen connected on the DB15 connector is OK,
- two analog screens connected is OK and can be used for dualhead.
other combinations don't work well or at all. This is the status confirmed on
the NV43. Assuming same for other cards of NV40 architecture.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-17 11:39:07 +00:00
Rudolf Cornelissen
11058c2f96
fixed cursor visibility update on show/hide_cursor commands for secondary head on NV40 architecture (hardware bug workaround). Confirmed Dualhead up and working correctly with two analog connected screens on PCIe 6600 GT.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-14 14:16:50 +00:00
Rudolf Cornelissen
de0194f56b
updated docs (working cards, DMA mode info).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-13 17:54:11 +00:00
Rudolf Cornelissen
5857e1d66b
added a few ID comments ('sync' to Xorg 6.8.2)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-13 11:56:27 +00:00
Rudolf Cornelissen
3a1749827c
added a few ID comments ('sync' to Xorg6.8.2)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-13 11:55:11 +00:00
Rudolf Cornelissen
2e73688338
blocking exporting overlay hooks on NV40 architecture cards that are not NV40 or NV45: these newer NV40 architecture cards have a new bes, but we don't know how to set it up yet. :-/
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-12 13:26:57 +00:00
Rudolf Cornelissen
9b501a81b3
added some more PIO mode acceleration programming for NV40 and higher. This remains non-functional: aborting dev on this for now. Notes about the problem are in the code. For now I guess no-one cares about PIO mode nomore anyway... ;-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-12 13:06:46 +00:00
Rudolf Cornelissen
7139e38e41
updated a few comments, added some acc stuff for NV40+ for PIO mode: trying to get that up as well briefle now.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 19:40:26 +00:00
Rudolf Cornelissen
c9df9f3086
updated fixes documentation. DMA acceleration is now the default, previously it was PIO mode: DMA now works (much) better than PIO mode overall... :-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-09 20:29:05 +00:00
Rudolf Cornelissen
306bf14447
added updated acc engine constraints for DMA use (mode validation). Version of driver is now 0.36.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-09 20:24:26 +00:00
Rudolf Cornelissen
3f17567e63
reverting to software retrace-sync for cursor position updates on pre-GeForce cards: it turns out there's no hardware sync here after all.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-09 18:08:03 +00:00
Rudolf Cornelissen
4f985adf3a
added NV04(TNT1) DMA workaround code. TNT1 now also works with DMA acceleration. TNT2-M64 has been confirmed up also. This means all cards should work now! (Except for a NV40 artifact on blits..).
...
Still some finetuning to do.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-08 20:30:56 +00:00
Rudolf Cornelissen
e7b37d0211
added pre-NV10 screen location and size for completeness. NV05 (TNT2) is confirmed up and running speedy now :-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-08 19:31:49 +00:00
Rudolf Cornelissen
c1d1fdbc43
added preliminary pre-NV10 specific DMA acceleration code. Not finished, not tested.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-08 17:09:01 +00:00
Rudolf Cornelissen
95883f1638
updated doc, added GeForce 6200 card recognition (NV44) for 10 types.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-06 20:17:32 +00:00
Rudolf Cornelissen
f882db2e04
added recognition for 10 GeForce 6200 card types (NV44), version is 0.35 now.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-06 20:15:19 +00:00
Rudolf Cornelissen
5417d7aedc
modified a few register defines for NV44 type.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-06 11:46:23 +00:00
Rudolf Cornelissen
36b7db70d1
updated a few register defines for NV44 type.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-06 11:45:10 +00:00
Rudolf Cornelissen
7758e2a68f
added NV44 device to the list. NV44 device recognition still has to be added to the driver BTW.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-06 11:35:55 +00:00
Rudolf Cornelissen
94e32479c0
fixed NV44 and NV45 programming for acceleration
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-06 11:33:17 +00:00
Rudolf Cornelissen
b052127f2b
added PCIe 'legacy PCI configuration space' config register defines.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 18:58:17 +00:00
Rudolf Cornelissen
a6632f1605
added PCIe legacy PCI-config-space configuration registers. Some logged interpretation comes at later date, using a PCIE.h header file.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 18:55:52 +00:00
Rudolf Cornelissen
7909881256
fixed a truncate error with casting between floats and ints: this makes the centering calculation for WS panels work more precise, removing some 'noise' pixels on the right side of the screen when displaying non native aspect modes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 16:19:44 +00:00
Rudolf Cornelissen
c826d194dc
updated fixes list, bumped version to 0.34 BTW.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-01 15:09:45 +00:00
Rudolf Cornelissen
fdd699c7b7
fixed DMA acc blit function crashing once you place data near the end of the cardRAM on NV40 and higher (for overlay bitmaps). These cards needs a certain unused space in front of their DMA command buffer to prevent the blit's DMA data source instance from malfunctioning (moved windows then contain rubbish instead of valid data). I would say this is a hardware fault or limitation (costs us 400kB+ of RAM).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-01 15:05:57 +00:00
Rudolf Cornelissen
54c34e6829
added NV20 arch defines.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-31 14:40:11 +00:00
Rudolf Cornelissen
63def9b208
completed NV20 architecture DMA acceleration: confirmed both NV20 and NV30 architectur up and running OK BTW.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-31 14:36:33 +00:00
Rudolf Cornelissen
5848a1aedb
fixed memory size check for virtualmodes (take DMA into account)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-31 12:36:18 +00:00
Rudolf Cornelissen
9be68599ad
added 3 more cardID's.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11169 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-31 11:45:55 +00:00
Rudolf Cornelissen
5370ea7d80
added 3 more cardID's (a GF6600, a GF6800 and a PCX4300).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-31 11:44:38 +00:00
Rudolf Cornelissen
8d2dfc64ee
small simplification for reading and writing DMAGET and DMAPUT, gives a minor speedup (a few percent max).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-31 10:53:21 +00:00
Rudolf Cornelissen
ba9ec361f2
removed two double defines for the same register, added new defines needed for NV20 and NV30 architecture DMA acceleration.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:19:29 +00:00
Rudolf Cornelissen
41dde765fc
completed DMA acc for NV30 architecture, still untested. Fixed two doubled registerdefines which adress the same registers.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:17:14 +00:00
Rudolf Cornelissen
7309e1cd85
needed to bump the DMA command buffer forced freespace up to 256 words: NV4_GDI_RECT needs a higher setting than the old version. Hopefully engine crashes are now past tense...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 15:58:59 +00:00
Rudolf Cornelissen
9c47d9cb0a
updated 'docs' with the new NVx_GDI_RECT cmd's findings :-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 15:18:51 +00:00
Rudolf Cornelissen
64efa4b4af
Arrrgghh! I was still using NV3_GDI_RECTANGLE_TEXT instead of NV4_GDI_RECTANGLE_TEXT on pre-NV40 (NV11 tested). Fixed now.
...
Anyway: Now we know the reason the switch must be made: the old command, while being approx. of the same speed as the new one, has a hardware fault and has also therefore been removed in NV40 and later hardware.
The fault is the input->output colorspace conversion which doesn't work while being used with DMA acc. Glad I could loose that nasty workaround now!!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 15:12:13 +00:00
Rudolf Cornelissen
4e05353d7f
fixed overlay bitmap DMA adress, fixed overlay in 15 bit mode (NV11). nVidia hardware is broken here :-/. Anyway, it works now.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 14:32:45 +00:00
Rudolf Cornelissen
fee251bc01
modified overlay to stay outside DMA buffer if it exists.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 12:48:44 +00:00
Rudolf Cornelissen
4dca5362df
added invert_rect DMA acc function. Tested in all colorspaces on NV11 (OK).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 10:56:26 +00:00