While playing around with the driver, matc and p0g every now and then got an INVALID_STATE error thrown by the card. Ahuillet and p0g tried to track it down but quickly found out that the error was in the EXA code. Backtracking to DRM version 0.0.4 seemed to support the idea that this problem was there from the beginning of time (well, at least since we started), so another approach was needed. After some tests ahuillet and p0g noticed that the problem came from trying to blend. Any EXA function trying to do some kind of blending triggers the error. Xv was only a victim which crashed due to an EXA error occurring just before it being called.
With ahuillet's Vacation of Code coming to end we would like to thank him for his dedicated work which resulted in a working Xv implementation for cards >=NV18 to NV4x. We are glad you chose Nouveau for your project (and even gladder that you will stay with us)!
pmdata got around to finally create dumps containing only the detected data changes without interpreting them which makes the dumps much smaller. To create an interpreted dump you run the "raw" dumps through renouveau-parse which then creates the well known text dumps. The parser data is now stored in a XML database. Next step would be to change the nouveau_drm.h generator to use this XML database too. Currently it relies on the nv_objects array in renouveau which holds the same data as the database (well, not all data is migrated yet, but it will be soon). kmeyer adapted his upload scripts so that they can deal now with the changed contents of the mailed in archives. JussiP meanwhile announced that he won't be able to support the status page from September 1st on, as his account will get deactivated. We are looking into other options.
cmn did more work on glxgears on NV35. Last status around Fosdem 2007 was that it was working with projection matrix problems, now he's gradually fixing TCL (Transform, Clipping & Lighting) issues in there. But there is still much to be done. If the height is greater than the width of the window, the result is a static over-sized gear with no means to see the rest. If the width is greater than the height of the window, colours (mainly blue) flash and vaguely comparable with a red gear appears and disappears as if it was moving around a point. So although the code has much improved, the result (compared to the expected one) still isn't pretty. But see for yourself:
But there is a catch to the NV3x line: Initilization doesn't work correctly yet. So starting X with Nouveau won't get far. You need to load the blob first which does some initialization we are currently doing wrong, after that unload the blob start X and nouveau will work. That simply means: Our context switching code is working fine but init code is missing at least one important thing. Marcheu is at it and tries to find out what that might be, but he has to check about 90MB of MMio register writes for the needed values. That takes time (but he is down to 250Kb).
· The generator for nouveau_drm.h was broken for the default
mode (it created unusable #defines). Fixed by KoalaBR
· The createdump.sh got some additional tests for SDL header files and the libXvMVNVIDIA.so file so that renouveau can build.
· pmdata implemented a working clear command for all cards NV04+ and NV1x. So now parts of your screen really get cleared. Feedback from other users is still missing, however.
· Marcheu had a hard disk crash and lost some patches for NV04 which got them running with current DRM. Basically they fixed up the context switches. He will redo them, but still it is annoying
Ok guys, let's get serious here, you want a working Open Source NVidia driver? Fine, we need your help and this section is how you can save a kitten. Pick what ever you like and please get in touch with us!
Please test Xv with our driver. You only have to watch your favorite video with mplayer, codeine etc. and report back to ahuillet whether it works for you or not.
We would like owners of 8800 cards to test our current driver and report back to us. As we currently have "only" two G84 cards for development and testing available, feedback from users with this hardware would be much welcome. Please note: Use the randr-1.2 branch and report back to Darktama.
We need MMioTraces for NV41, NV42, NV44,NV45, NV47, NV48 and NV4C. And owners of NV30 of the following kinds : 10de:030x / 0x10de:0x00fc / 0x10de:0x00fd / 0x10de:0x00fe are needed too. Contact Darktama (NV4x) or Marcheu (NV3x) in our IRC channel..
That's the end for issue #26 and marks my 1 year anniversary as a member of this project. Although irregular, we managed to get one issue out every 14 days on average for the last year. The next issue however will probably be late a week or two as I will be on vacation until the end of September. We will try to answer the Q&A session posted in this forum in the next two weeks though.
Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.