History log of /haiku/src/add-ons/accelerants/nvidia/SetDisplayMode.c
Revision Date Author Comments
# 06343681 04-Jan-2016 RudolfC <rudolf.cornelissen@gmail.com>

nVidia driver: Added basic dualhead support for native Haiku ScreenPrefs app


# 6042b7b6 02-Mar-2009 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added 'block_acc' option in nvidia.settings to completely disable the acceleration engine. This lets my G72 run (not crash) for the first time when enabled. Note: Haiku becomes very slow in drawing in 32bit mode when the driver is running this way compared to vesa mode. I am assuming this is because of (too) fine-grained calling of the engine management functions. Never saw this effect AFAIK in BeOS.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29381 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 69ca2102 10-Jun-2008 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

removed all references to G80 and newer cards. Bumped version to 0.85

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25903 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37bf6a6a 23-Oct-2007 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

disabled acceleration engine init and exporting the hooks on G80 and above for now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22684 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 155a2ad0 07-Feb-2006 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

rewrote kerneldriver and accelerant's retrace INT handling. This fixes the 'driver hanging' bug exhibiting sometimes when CRTC2 is being used as primary CRTC (driver internal feature). INT handling now exists for both CRTC1 and CRTC2: enabling only the INTs for the head currently being used as primary. (limitation can be removed once we use a driver instance 'per head' instead of 'per card'.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16281 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f67620f9 02-Feb-2006 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed overlay playback and accelerantion engine crashes if all is right: it turns out the last piece of cardRAM may not be accessed by software. This looks to be a hardware bug, size of dangerous RAM depends on pre/post NV40 architecture, bug exists for both FIFO channel assignment on the fly, and DMA command buffer existing in cardRAM. If there are still users outthere using PIO acceleration and 3D they have a good chance of having working concurrent overlay as well, as the fifo-assignment bug turns up with PIO acc as well. Note: the bugfix is still in test: confirmed on TNT1 only for now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16200 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4022652c 14-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated DPMS programming to take DVI panels into account for TVout modes on the same head. Enabled TVout support for all cards as long as they have a supported encoder (test-image is now shut-off). TVout support should be complete now, apart from adding support for more encoder-types. Bumped version to 0.63.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14939 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a393eaf8 12-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

Added fifo watermark/burst-size programming for NV11 on their secondary heads. This fixes the 'vertical distortion stripes' occuring in 32bit color using secondary TVout modes: NV11 is just perfect here now :). Modified TNT2-M64 fifo watermark/burst-size programming to be executed independant of being coldstarted, which is more 'all-round'. It's upto users to confirm/deny my strong suspision this is fully OK to do (already tested on 3 cards over here). Bumped version to 0.62.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14884 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c71b494 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

completed TVout support concerning dualhead (clone) modes and custom modeflag for selecting TVout head on a per mode basis. NV11 is now fully functional (with supported encoders that is).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14667 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c0ebc619 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

modified Setmode for TVout. Dualhead switch mode now at least displays something on TV for NV11, just the wrong head. (in progress).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14665 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a658603a 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated DPMS programming to be compatible with secondary TVout modes.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14662 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d7dfe68d 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

modified custom flags behaviour, mostly TV_PRIMARY flag stuff: more in proposemode, less in other places. For singlehead TV modes on dualhead cards TVout chip is always assigned to the primary head now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14660 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 20603b95 25-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

rewrote DPMS programming (this time the 'setting' part). Now the new nv.setting 'vga_on_tv' is respected: wich means that VGA output will be turned off by default when you enable TVout on a head (still only head1 supported for TVout). You can preset it to be kept enabled via that setting, although that is considered a tweak which 'might' destroy your (old) screen (offcially non-compatible timing on VGA). It's a handy option to have for singlehead cards though. NOTE: fixed DMA acceleration fault introduced when I added the vga_on_tv option initially (it over-wrote the dma setting!). DMA acc should now be working 'normally' again. Bumped driver to version 0.59. Note: We have a confirmed working Nvidia Geforce 7800 GT PCIe (ID 0x0092). Acceleration is disabled yet on them though.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14515 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bfecd0cd 25-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

changed fetching DPMS method: now just returning the earlier set flags instead of querying a CRTC. This fixes DPMS state getting lost after using TVout, and simplifies code as well.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14512 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce3fc95e 20-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added capability to driver to run without an INT assigned. Driver now autodisables 'Sync_to_Retrace' functionality if it finds no INT assigned, instead of not loading/running the driver at all. This should enable some users outthere to finally run the nVidia driver on their systems. Bumped version to 0.56. Note: While driver has been tested with INT assigned, it has not yet been tested without it. (got to find a system which has the option or fixed disabled BIOS setting).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14438 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3aa21459 15-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added DPMS support (in the normal sense) for TVout: TVpicture is turned off completely when screensaver turns off screen.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14392 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0703480c 14-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated setmode command: only disable TVout when it's actually supported.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14387 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b0fce481 06-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

enabled full TVout support on singlehead cards for the supported encoders, dualhead cards now display the testimage in the selected TVout mode. LCD panels are now taken into consideration and should work with the code enabled, though not (correct) while TVout is active (hardware limitation I expect). DPMS off for panels and CRT's while doing TVout is still lacking. I tested all video modes on a TNT1 with BT869: work beautifully: exactly like with BeTVOut. I'm glad I had that done already.. :). For singlehead cards I need to update some prefs panel program to be able to set the Desktop TVout modes (Dualhead setup tweak for now I think). Bumped version to 0.55. Enjoy...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14327 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0b36eea4 06-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

completed experimental TVout support for singlehead cards using BT868/869, Conexant CX25870/CX25871 chips. As setups with laptop or DVI panels will probably mess up, it's still disabled apart from enabling a testimage. Now starting actual testing..

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14317 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b2459715 01-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated validation for TVflags in display_mode to reflect nvidia driver capabilities (instead of matrox driver ones). Going for singlehead card tests first.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14289 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 21545d00 19-Jun-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added/modified shared_info to (better) support upto 32 3D accelants. Needs to be improved/expanded later though. Bumped version to 0.53.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13210 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c4c0505 09-May-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# c9c0c72b 26-Apr-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# afb207ac 18-Apr-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# fdd699c7 01-Feb-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# fee251bc 26-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# dd446dd3 18-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added a nv.settings switch 'dma_acc'. User can choose method for acceleration. Default is off, selecting (old) PIO mode. DMA still does not work, and is not completed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10842 a95241bf-73f2-0310-859d-f6bbb57e9c96


# af26d642 10-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed arch typo. _now_ NV40 and higher should work, although still without acc.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10655 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dd43fd34 10-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added cursor HW bug workaround for NV40 and higher on CRTC1; added seperate acc file for DMA test setup for NV40 and higher (for now).
The driver now works by default on NV40 and higher, but without acceleration.
If someone tests using overlay, let me know if it actually works: NV43 seems to have a new engine, NV40 _might_ still have the old, and so, useable engine.
NV40-plus overlay is something we will NOT have any time soon!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10651 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 89d37d46 16-Dec-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added preliminary bit of support for 3D add-on driver, more needed probably.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10478 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 06f4c439 22-Apr-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

analog output switching updates: not ready yet...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7297 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 30f76422 22-Apr-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

driver works nicely with virtualized head setup now!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7296 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0669fe20 22-Apr-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added virtualized CRTC access with it's advantages


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7295 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 12638909 31-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added output follows monitor feature


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6446 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4db9787 30-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed CRT monitor detection (both heads)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6436 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f21ce69 30-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

startup updates; CRT monitor detection added for both heads


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6435 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 203b86df 29-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added dualhead switch mode


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6403 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc5690ab 26-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added dualhead support in 8- and 16bit colordepth


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6331 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 255e5021 19-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

we now have DUALHEAD!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6150 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e68c7d96 18-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated FX5700 support, more dualhead and included 256Mb RAM detection


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6138 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7b820745 17-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated card recognition, more dualhead updates


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6111 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a3b9d212 15-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

secondary head updates, cardrecognition updates (fx5950, fx5700)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6099 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ff50d0d1 12-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

crtc2 modifications for NV dualhead mode


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6029 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 05ed3229 05-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed modifying shared_info before/in proposemode mode validation


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5914 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f2777ca1 30-Dec-2003 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed several compiler warnings


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5830 a95241bf-73f2-0310-859d-f6bbb57e9c96


# aa1e552f 30-Nov-2003 shatty <shatty@nowhere.fake>

openBeOS_Nvidia_V0.07_src


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5509 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4c44701 30-Nov-2003 shatty <shatty@nowhere.fake>

openBeOS_Nvidia_V0.06_src


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5507 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08705d96 22-Nov-2003 shatty <shatty@nowhere.fake>

add nvidia accelerant


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5450 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6042b7b66583c8c087a564c80af7540cc5fe7fa0 02-Mar-2009 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added 'block_acc' option in nvidia.settings to completely disable the acceleration engine. This lets my G72 run (not crash) for the first time when enabled. Note: Haiku becomes very slow in drawing in 32bit mode when the driver is running this way compared to vesa mode. I am assuming this is because of (too) fine-grained calling of the engine management functions. Never saw this effect AFAIK in BeOS.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29381 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 69ca2102630663b75625d7b1da6224fdc27c0b1e 10-Jun-2008 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

removed all references to G80 and newer cards. Bumped version to 0.85

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25903 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37bf6a6a6ee57c5a6219be42a6f633f2bdb9cbc5 23-Oct-2007 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

disabled acceleration engine init and exporting the hooks on G80 and above for now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22684 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 155a2ad0a55b0a8ccc1059e62121bc19ac809d02 07-Feb-2006 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

rewrote kerneldriver and accelerant's retrace INT handling. This fixes the 'driver hanging' bug exhibiting sometimes when CRTC2 is being used as primary CRTC (driver internal feature). INT handling now exists for both CRTC1 and CRTC2: enabling only the INTs for the head currently being used as primary. (limitation can be removed once we use a driver instance 'per head' instead of 'per card'.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16281 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f67620f956a77d754a75756a16245a719de52b0a 02-Feb-2006 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed overlay playback and accelerantion engine crashes if all is right: it turns out the last piece of cardRAM may not be accessed by software. This looks to be a hardware bug, size of dangerous RAM depends on pre/post NV40 architecture, bug exists for both FIFO channel assignment on the fly, and DMA command buffer existing in cardRAM. If there are still users outthere using PIO acceleration and 3D they have a good chance of having working concurrent overlay as well, as the fifo-assignment bug turns up with PIO acc as well. Note: the bugfix is still in test: confirmed on TNT1 only for now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16200 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4022652c41c8005e690ae18d8a977a254b75c027 14-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated DPMS programming to take DVI panels into account for TVout modes on the same head. Enabled TVout support for all cards as long as they have a supported encoder (test-image is now shut-off). TVout support should be complete now, apart from adding support for more encoder-types. Bumped version to 0.63.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14939 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a393eaf832b4ed004bf933624ffaa87137603abc 12-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

Added fifo watermark/burst-size programming for NV11 on their secondary heads. This fixes the 'vertical distortion stripes' occuring in 32bit color using secondary TVout modes: NV11 is just perfect here now :). Modified TNT2-M64 fifo watermark/burst-size programming to be executed independant of being coldstarted, which is more 'all-round'. It's upto users to confirm/deny my strong suspision this is fully OK to do (already tested on 3 cards over here). Bumped version to 0.62.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14884 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c71b494d63de507556898d797ca107f5709a01f 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

completed TVout support concerning dualhead (clone) modes and custom modeflag for selecting TVout head on a per mode basis. NV11 is now fully functional (with supported encoders that is).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14667 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c0ebc619bfbcc5a5b916606f406d951267dd3456 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

modified Setmode for TVout. Dualhead switch mode now at least displays something on TV for NV11, just the wrong head. (in progress).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14665 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a658603ae8b434dee7d21a3daef1623d22479a9b 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated DPMS programming to be compatible with secondary TVout modes.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14662 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d7dfe68dc7bf61575d99f47e4826e514807e5166 03-Nov-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

modified custom flags behaviour, mostly TV_PRIMARY flag stuff: more in proposemode, less in other places. For singlehead TV modes on dualhead cards TVout chip is always assigned to the primary head now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14660 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 20603b95f3565640fc0d66b78f0f8f77106d70e2 25-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

rewrote DPMS programming (this time the 'setting' part). Now the new nv.setting 'vga_on_tv' is respected: wich means that VGA output will be turned off by default when you enable TVout on a head (still only head1 supported for TVout). You can preset it to be kept enabled via that setting, although that is considered a tweak which 'might' destroy your (old) screen (offcially non-compatible timing on VGA). It's a handy option to have for singlehead cards though. NOTE: fixed DMA acceleration fault introduced when I added the vga_on_tv option initially (it over-wrote the dma setting!). DMA acc should now be working 'normally' again. Bumped driver to version 0.59. Note: We have a confirmed working Nvidia Geforce 7800 GT PCIe (ID 0x0092). Acceleration is disabled yet on them though.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14515 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bfecd0cddb43bfcd2ca6222defddd96b7844e562 25-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

changed fetching DPMS method: now just returning the earlier set flags instead of querying a CRTC. This fixes DPMS state getting lost after using TVout, and simplifies code as well.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14512 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce3fc95ee40dd00ccb44ef330a747e94086f6c5b 20-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added capability to driver to run without an INT assigned. Driver now autodisables 'Sync_to_Retrace' functionality if it finds no INT assigned, instead of not loading/running the driver at all. This should enable some users outthere to finally run the nVidia driver on their systems. Bumped version to 0.56. Note: While driver has been tested with INT assigned, it has not yet been tested without it. (got to find a system which has the option or fixed disabled BIOS setting).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14438 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3aa2145919a3c8a7c08b455600c3c95e33744e12 15-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added DPMS support (in the normal sense) for TVout: TVpicture is turned off completely when screensaver turns off screen.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14392 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0703480cab978d457e73e26b1e2282491acf3f7b 14-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated setmode command: only disable TVout when it's actually supported.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14387 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b0fce4813c9b45410e4f68a2dce11fa04d7dc801 06-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

enabled full TVout support on singlehead cards for the supported encoders, dualhead cards now display the testimage in the selected TVout mode. LCD panels are now taken into consideration and should work with the code enabled, though not (correct) while TVout is active (hardware limitation I expect). DPMS off for panels and CRT's while doing TVout is still lacking. I tested all video modes on a TNT1 with BT869: work beautifully: exactly like with BeTVOut. I'm glad I had that done already.. :). For singlehead cards I need to update some prefs panel program to be able to set the Desktop TVout modes (Dualhead setup tweak for now I think). Bumped version to 0.55. Enjoy...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14327 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0b36eea44d38ed94c99d31d13ae066b45b476846 06-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

completed experimental TVout support for singlehead cards using BT868/869, Conexant CX25870/CX25871 chips. As setups with laptop or DVI panels will probably mess up, it's still disabled apart from enabling a testimage. Now starting actual testing..

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14317 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b245971503a6e22fa4a0ed7111d82c49710d662f 01-Oct-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated validation for TVflags in display_mode to reflect nvidia driver capabilities (instead of matrox driver ones). Going for singlehead card tests first.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14289 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 21545d001fe1bfc6c6330c390f4b027061b525ba 19-Jun-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added/modified shared_info to (better) support upto 32 3D accelants. Needs to be improved/expanded later though. Bumped version to 0.53.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13210 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c4c050540d98def5c65e7415aa5d4aea34bfbad 09-May-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# c9c0c72b4b38682a674277790e624dc2591c4e2f 26-Apr-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# afb207ac58f2c7bc733482784841a93a867ab5be 18-Apr-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# fdd699c7b764e5ec40e252651ea649222045f58f 01-Feb-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# fee251bc01435696b4f0dc6f89e77c53e350bfd7 26-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

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


# dd446dd3f32c79eeb8f4e4791196c26970ca376d 18-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added a nv.settings switch 'dma_acc'. User can choose method for acceleration. Default is off, selecting (old) PIO mode. DMA still does not work, and is not completed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10842 a95241bf-73f2-0310-859d-f6bbb57e9c96


# af26d6420e93f01ec1e391ba826bf7f464b39d4d 10-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed arch typo. _now_ NV40 and higher should work, although still without acc.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10655 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dd43fd34c1d5ccbfbc0654222f23e2bc855b4057 10-Jan-2005 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added cursor HW bug workaround for NV40 and higher on CRTC1; added seperate acc file for DMA test setup for NV40 and higher (for now).
The driver now works by default on NV40 and higher, but without acceleration.
If someone tests using overlay, let me know if it actually works: NV43 seems to have a new engine, NV40 _might_ still have the old, and so, useable engine.
NV40-plus overlay is something we will NOT have any time soon!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10651 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 89d37d46d0317319c1fd60b2b8c9a7f4a9f80f56 16-Dec-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added preliminary bit of support for 3D add-on driver, more needed probably.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10478 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 06f4c4397d23324a9c2d318ad467a6291fcae31a 22-Apr-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

analog output switching updates: not ready yet...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7297 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 30f7642281e1b1389a84166d0fffc00248199f5b 22-Apr-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

driver works nicely with virtualized head setup now!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7296 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0669fe20bd6ea42d6db669c6776898093ad1bbe6 22-Apr-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added virtualized CRTC access with it's advantages


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7295 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1263890952d47c2041d31a3510b5f773c5e1b1ca 31-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added output follows monitor feature


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6446 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4db97878b038617ba522d49f7963a675a71d5b4 30-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed CRT monitor detection (both heads)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6436 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f21ce697e425670d7b3b84b14832a842b758d83 30-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

startup updates; CRT monitor detection added for both heads


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6435 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 203b86df50d392e31e7b5d314db1d6a642f9dc81 29-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added dualhead switch mode


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6403 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc5690ab74a171c903e69273a3f14a9cf41ede30 26-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

added dualhead support in 8- and 16bit colordepth


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6331 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 255e5021d1e6ec50bafedbb7eae9cd5eb47ea6b2 19-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

we now have DUALHEAD!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6150 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e68c7d967c6c3c55cb319f8aabd7fc0199657668 18-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated FX5700 support, more dualhead and included 256Mb RAM detection


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6138 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7b8207450dd8c6c0a6e46bc85cf3b3e2188a0c64 17-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

updated card recognition, more dualhead updates


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6111 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a3b9d2120fd3cc7ccb6a98dc2f079fd2be009bd2 15-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

secondary head updates, cardrecognition updates (fx5950, fx5700)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6099 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ff50d0d10a15595657eed74b44c1632bcfb3aa4e 12-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

crtc2 modifications for NV dualhead mode


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6029 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 05ed3229139b7bf8b667021cb2926666f54384e9 05-Jan-2004 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed modifying shared_info before/in proposemode mode validation


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5914 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f2777ca181923f9ed5bbac7440bede24d2aa6f0e 30-Dec-2003 Rudolf Cornelissen <rudolf.cornelissen@gmail.com>

fixed several compiler warnings


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5830 a95241bf-73f2-0310-859d-f6bbb57e9c96


# aa1e552f7751d2e82770c3da178adc45d200b762 30-Nov-2003 shatty <shatty@nowhere.fake>

openBeOS_Nvidia_V0.07_src


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5509 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4c447019815b3b93a1501a0bb359e1f11b762a7 30-Nov-2003 shatty <shatty@nowhere.fake>

openBeOS_Nvidia_V0.06_src


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5507 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08705d9664e3c9fe0b038c281945bcd462693715 22-Nov-2003 shatty <shatty@nowhere.fake>

add nvidia accelerant


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5450 a95241bf-73f2-0310-859d-f6bbb57e9c96