DE/EN/ES/FR/RU/Team |
The irregular Nouveau-Development companion
Issue for February, 13th
1. Intro
Roughly two weeks have passed again so it is time again for yet another TiNDC.
As you probably know we are using the bug tracking system at freedesktop.org. If you have problems, which can't be solved when asking for help on IRC, please do enter a bug there so that we can keep track of possible issues.
If you do so, please
- lurk on the channel as reactions to your questions may be extremely delayed.
- keep an eye on your bug in the tracker, so that you can react to feedback from the developers (may be requests for more data, test request, patches etc.)
- do test regularly (at least once a week) whether the bug was fixed
Entering a bug and forgetting about it won't help you and us much, we need your continued feedback!
When we started publishing our TiNDC on Phoronix first, the intention for us was to get a bit more publicity. Our Wiki was read by people who already knew about us, but their numbers stayed flat. Phoronix had already shown an interest in our project by publishing some news about our TiNDCs and Git commits.
So in some way it was (and still is) a perfect match: We do get more publicity and Phoronix gets information directly from the horse's mouth (so to speak). Hopefully, you as the reader gets informed and entertained along the way too.
A few weeks after we started, Phoronix came forward and asked whether they could help us by giving us some spare hardware. Not wanting to be impolite nor wanting to look greedy we somewhat declined, as we are really well equipped with the whole range of NVidia cards except the most expensive ones.
The following email exchange however revealed that some of our developers are working on old hardware while Phoronix had better hardware collecting dust. So we agreed to ship some hardware like CPUs, motherboards and RAM to Marcheu. He in turn will either hand them out to our developers at FOSDEM or send the hardware directly to the developers.
So a very big "Thank you" to Phoronix for their great support!
A pro pos FOSDEM: We will be there with at least 3 people (Ahuillet, Malc0 and Marcheu). I will try to get there too and do some coverage of the event like last year, but having health issues currently, I may not be able to come.
Quote of the week |
2. The Current status
Since some time we had problems with NV4x card when trying to use Nouveau after rmmod'ding the blob. This problem was tracked down by stillunknown: It was due to an unknown register used by the blob (and ignored by us). After setting this register to a default of 0x01 it worked. (Git: http://gitweb.freedesktop.org/?p=mesa/drm.git;a=commit;h=733e07663e50087ca1e9af8e9b5def556521e3b5)
Marcheu committed a bunch of patches for the Xv texture adapter. As already mentioned in the last issue, they added:
- bi cubic filtering for NV40 (and NV30)
- Prevent tearing
- add texture adapter via shaders on NV30
Compared against each other there are some differences. Unfortunately, some tests showed that the new filter resulted in blurriness compared to the blitter. Marcheu suspects some precision error in his code and is investigating. We had a endianess problem on PPC in there, too. We always get blue people running around, it seems. Marcheu fixed the texture adapter on PPC to swap U and V parts of the video.
And finally: The NV34 cards seem to be to slow to use this adapter. Please use the blitter / overlay instead.
After that he will work on Gallium3D for NV3x until it is ready to hand it over to other capable hands.
Malc0 and Stillunknown are preparing to make Randr1.2 the default code path for Nouveau. In order to do that, they created a "Meta-Bug" which tracks all Randr1.2 related bugs, which prevent us from switching: https://bugs.freedesktop.org/show_bug.cgi?id=14405.
Some movement on the PPC front too. First thing was that moondrake found a work around for the DMA lockups (X resetting) on PPC. He needed to sync the FIFOs more often when uploading large amounts of data to the card. Kelnos checked moondrake's quick patch and found his lockups were gone too (update: although this seemed to help a bit, it did not completely solve the problem).
However this patch was found to be only avoid the real bug. Because AGP is currently not working for write backs on Powerbooks (causes hard lockups), the command buffer was held in the video ram. It seems that there may be some form of memory corruption happening in the video ram that caused the DMA hangs. Benh and Marcheu joined to help and patches were flying around but a final solution for enabling AGP on powerbooks wasn't found yet. The latest patch incarnation from moondrake is here: https://bugs.freedesktop.org/show_bug.cgi?id=14284 (update: has now been merged in latest git) which fixes the DMA hangs and uses a PCI GART for now. While investigating the PPC problems, marcheu did notice though that the DDX code for using a GART on PPC was totally brain dead.
During testing the idea came up to compare certain register settings on both Linux and OSX to see where they might differ. kelnos offered to shrink his Linux partition in order to install OSX. Enter sbriglie who already had OSX running on the same hardware. He offered to test Airlied's radeontool for OSX (http://www.skynet.ie/~airlied/nouveau/AppleSamplePCI.tar.gz). but he couldn't get it to work.
Additionally, Malc0 fixed the "NV34 does work only every second try" problem when he encountered the same problem on x86 too. (http://cgit.freedesktop.org/mesa/drm/commit/?id=a0781e762295ce3d5f6e839d437a0de505cefa3b)
Ok, now for the usual assortment of short topics:
jb17some is still working on the XvMC acceleration. He summarized his current status on http://nouveau.freedesktop.org/wiki/XvMC
Airlied did a presentation at LCA where he talked about the current status of graphics drivers. Rumour has it that he showcased our Gallium3D driver, too. But look here: http://linux.conf.au/programme/presentations (Look for kittens)
- pq is working on including MMioTrace into the kernel. Although the kernel hackers like Ingo Molnar are very helpful, but the task is much bigger than originally estimated. So PQ is aiming for 2.6.26 now.
- Darktama is trying to find out a bit more about why 3D renderings fail completely on NV5x.
- And Darktama is thinking about creating a "voodoo generator" which would allow to create the voodoo for context switches programmatically.
3. Help needed
As always:
Look on our TestersWanted page.
- Check for regressions in the randr1.2 code
Please check the "use after blob" fix from Stillunknown on NV4x. And if you have hard lockups on NV4x (or even better NV40), please do contact stillunknown.
And yes, PPC testers are welcome (developers too as are patches for BSD, as no one came forward when we asked and offered support for those users in one of our last issues.