Commit Graph

129 Commits

Author SHA1 Message Date
Rudolf Cornelissen
44906a1b98 added two more reg defines for DMA init code NV47. Completed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-17 18:38:41 +00:00
Rudolf Cornelissen
7514b6b4dc updated register defines to support extended acc engine init stuff.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-17 16:33:28 +00:00
Rudolf Cornelissen
44e343dc48 updated engine DMA acc init code, part 3 (in progress).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14991 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-17 14:58:52 +00:00
Rudolf Cornelissen
efb60a4ef5 updating DMA acceleration code for NV41, 43, 44. Adding code for NV47: sync to XF86, in progress (acc might be broken now..)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-17 13:00:33 +00:00
Ingo Weinhold
758b1d0e05 Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
  declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
  explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
  something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
  'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
  is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
  Otherwise the an inner class with that name is considered as friend.
  gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-12 23:27:14 +00:00
Rudolf Cornelissen
f1c7ec04ea added mode.flag 'TV_PRIMARY (1<<13)'. On dualhead cards you need to issue this flag to setup a TVout mode on the primary head: such a mode can be single- or dualhead. Note BTW that (most of) these custom flags will disappear somewhere in the future: when Haiku supports multiple graphics cards.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-27 20:08:44 +00:00
Rudolf Cornelissen
9be6619743 confirmed NVDAC2_TV_SETUP register to exist (tested NV11). Just saw 'real' (as much as is possible with beos currently :) dualhead running on a GF2MX400 using TVmode on the second head (as it has no VGA connector). Confirmed NV11 having a hardcursor on the second head, and having the capability to switch the overlay engine back and forth. Now I still have to update the TVout drivercode for real for this.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-27 17:57:48 +00:00
Rudolf Cornelissen
0b3dc403c8 added status of two new i2c buses to shared_info.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-27 14:32:59 +00:00
Rudolf Cornelissen
5385dd2e3b added DPMS flags to shared_info
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-25 11:38:50 +00:00
Rudolf Cornelissen
9ae6a9220a added card_type NV47 (== G70 == GF7800)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-25 09:52:11 +00:00
Rudolf Cornelissen
2a70a7fc9b updated shared info for two new nv.settings items.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-22 09:58:16 +00:00
Rudolf Cornelissen
e68584fa18 added shared_info flag for 'no-INT-assigned' stuff.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-20 09:02:37 +00:00
Rudolf Cornelissen
aa6505c068 removed all matrox maven TVout register and macro defines. now oly nVidia defines are left here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-29 15:37:48 +00:00
Rudolf Cornelissen
04d11137af expanded/modified shared_info once again (for encoder info).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-27 14:19:41 +00:00
Rudolf Cornelissen
170a41cdcb added I2C bus and TVout chip-location specific info to shared_info.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-27 10:31:05 +00:00
Rudolf Cornelissen
f282ec8116 added I2C bus #0 and #1 CRTC register defines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-24 17:57:05 +00:00
Rudolf Cornelissen
fad6f70b5d added/modified shared_info to (better) support upto 32 3D accelants. Needs to be improved/expanded later though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-19 15:11:42 +00:00
Rudolf Cornelissen
a1d2fb778f modified 3d reload flag to support 32 clones, added clone counter as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 12:47:29 +00:00
Rudolf Cornelissen
512d251741 added shared_info flag to inform 3D add-on to reload it's rendering state.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 10:01:26 +00:00
Rudolf Cornelissen
b602e341ca added bool for engine AGP/PCI transfer selection to shared_info
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 19:50:58 +00:00
Rudolf Cornelissen
e8f7b5623e updated shared_info once more for DMA cmdbuffer in main mem.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 11:42:16 +00:00
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
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
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
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
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
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
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
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
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
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
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
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
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
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
940dbde600 using NV4_GDI_RECTANGLE_TEXT instead of the older NV3 version for DMA acc. Seems like the old one can't be used with DMA (or I am hitting my limited knowledge on nVidia's Hash-table again..)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 11:16:39 +00:00
Rudolf Cornelissen
a8c119773f added acc function defines for DMA, for fill_rect.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 20:56:08 +00:00
Rudolf Cornelissen
61e1618dce completed DMA buffer state vars to be all there.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 19:24:37 +00:00
Rudolf Cornelissen
34a71f30fe updated a register's name to reflect what it does.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 11:09:53 +00:00
Rudolf Cornelissen
7b0775548b 2D acc milestone reached: NV11 DMA is now up and running!! Oh, there are still a few limitations: don't use overlay, don't use 800x600x8 bit mode, and don't work longer than it takes to get the DMA buffer totally filled up. (switching between workspaces with different settings resets the engine and the 'timer' starts anew...
General note: learn how nVidia's hardware hashtable implementation works!!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 22:28:31 +00:00
Rudolf Cornelissen
d1a21786b1 added setting 'dma_acc' for nv.settings.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 18:25:40 +00:00
Rudolf Cornelissen
a9d9522bc6 removed a define that's not needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 17:14:19 +00:00
Rudolf Cornelissen
fa6815fa24 added NV4/NV10 architecture register define needed for DMA stuff
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-17 15:53:57 +00:00
Rudolf Cornelissen
8118b7593e added pattern cmd colorspace define (PIO/DMA)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-17 13:11:39 +00:00
Rudolf Cornelissen
6c001eb7a2 added more DMA defines (for FIFO channel assigment).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-17 12:18:44 +00:00
Rudolf Cornelissen
4bf2b3cccd added 2D_surface command defines (for DMA use at first).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-16 10:17:20 +00:00
Rudolf Cornelissen
98a4e5c787 removed a few DMA define errors which lets DMA now place the commands in actual acceleration engine registers (via the FIFO), instead of sending them into oblivian. Because the engine does not process them OK yet (no visible confirmation onscreen of any activity even) it will hang DMA fetching after about 100 fed blit-commands....
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10735 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-14 21:36:57 +00:00