[FrontPage] [TitleIndex] [WordIndex

Home

TiNDC 2006

TiNDC 2007

Old Logs

Current Logs

DE/EN/ES/FR/RU/Team

The irregular Nouveau-Development companion

Issue for November 23th

1. Intro

Editors note: Some smallish addtions to the phoronix article.

Dear audience, welcome back to the newest issue of the TiNDC. The last issue caught the eye of some mainstream tech news sites in Germany. Although it was a bit premature to call 2D mostly done then, we basically have everything done except for mode setting and thus a better Randr1.2 support. Currently you may be lucky (regarding randr1.2) on NV4x and NV3x but earlier cards and NV5x don't work very good. As we will see in a bit, we are working heavily on Randr1.2

While work on 2D is slowly ceasing (exceptions: see above), attention is shifting to 3D. Darktama and jkolb are working on Gallium and DRM / TTM issues. Marcheu is still fighting the generic Gallium3D frame work for older cards. Ahuillet, pmdata and p0g are just waiting for them to finish so that they finally can start coding 3D features.

2. The Current status

Marcheu was busy the last weeks, he worked with Benh and various testers on PPC bugs. When doing DFS (DownloadFromScreen) / UTS (UploadToScreen) DMA transfers hang but DMA otherwise worked, as long as AGP wasn't activated. IFC (ImageFromCPU) had an error with inverted logic indicating an error when in fact everything went fine. This bug was spotted by Benh who continued helping us to get PPC working for all of our testers. Additionally, Marcheu got online access to a PPC machine for testing. He is currently waiting for some register dumps which currently do hang and lock the machine unexpectedly. So he needs a person in front of the keyboard of the remote machine.

Those dumps will hopefully enable nouveau to work on chimaera's machine, who still reported some startup hangs with nouveau on PowerPC. After some experimental patches got exchanged, marcheu managed to fix that only to have nouveau hang a little bit later during the startup. It turned out that this was due to some endian bugs in the bios parser. So the bug was handed over to malc0 who did fix some bugs in his parser.

The Bios parser fixes to honor endianess plus some additional code clean ups (aka deobfuscation) were pushed by malc0. Together with stillunknown they further cleaned up the randr1.2 code and fixed some more bugs.

Stillunknown is still trying to get randr1.2 working on AndrewR's card. Many test patches were exchanged but still, randr1.2 does not work for AndrewR's NV4x based card.

Although stillunknown did find a lot of errors he talked with Thunderbird and both compared their wisdom about various registers controlling display output. That helped both of them but still resulting patches from stillunknown didn't work for AndrewR. The stuff Thunderbird is assisting stillunknown with is for a large part the PLL code (clock generation) which is important for randr 1.2. (NVclock will profit from that too).

Will our mode setting experts finally claim their part of nouveau fame? Please don't skip our next TiNDC issue when we will reveal all (or at least more :) ).

Thunderbird decided to go on a quest of reverse engineering TV-OUT. He added a request for testers to our testers wanted page.

jb17some dared to fight the perils of XvMC. Although no life sign has been spotted from him on IRC, his wiki page got an update. According to this update, he wrote a small program running with behaves like it would be using XvMC. That is, input is put into a buffer, registers get written and the final result is a frame which could be displayed. Comparing both output and register status, his program generates the same results as the nv driver does under same circumstances.

Please note, that this test program does not display anything.

Hm, let's switch back to marcheu and see what he is doing: Seems to be busy writing the Gallium3D frame work for older cards. Let's try a bit later then.

After ahuillet being defeated by the NV3x team in the race to claim A8+A8 (and thus EXA acceleration) working first, he was eager to avoid being called a "looser" for not being able to complete that "simple" task ;-)

Seriously though, that task was far from being simple (and no one would ever call him a "looser", but do I really have to point that out?). To accelerate the PictOpt, multiple conditions (e.g. width limits, destination position limits) had to be met. After talks with IronPeter and Marcheu about what could be done with the register combiners ahuillet implemented an ugly hack which after some iterations of tests and patches did work.

bad.png

(A8+A8 gone wrong)

A day later he claimed that 1) everything was working and 2) that he had refactored that hack into something readable. Confirmations about EXA working came in from p0g and AndrewR.

A few days later we got reports that Xv wasn't working on PPC and that there were some issues with font corruption. As marcheu was hunting for a plethora of PPC bugs (see above), it was decided that we would first kill the basic bugs off and if the problems with Xv would still persist at that time, ahuillet would be the one to debug the Xv problems on PPC. However, the fonts problems are high on ahuillet's TODO list.

victory.png

(Working, on x86 at least)

Darktama did some clean ups of the DRM and took the chance to introduce a 64 bit bug which prevented nouveau to work on x86. Marcheu found the problem and fixed it a few hours later.

jkolb is still working on TTM.

So perhaps we can get a final release date for the 2D driver from marcheu. (Let's try to ask him..."Marcheu... oh, ok"). Seems he is working on refactoring Xv code into a generic part and a card specific part. That should help us adding shader based Xv code for NV4x and NV5x more easily. And we need to address those PPC bugs mentioned above... Seems it will take a bit more time until we can finally announce 2D working.

3. Help needed

In the name of the Nouveau team I would like to thank all testers who joined our IRC channel and offered help. Some problems were fixed, some are being worked on. With some problems requiring many iterations from problem to patch to (new) problem, some testers showed real dedication.

stillunknown is looking for 7xx0 card owners who would be willing to run a few tests for him. Furthermore he is looking for people with dual head (whatever combination of VGA /DVI) who are willing to test randr1.2 / mode setting.

Marcheu needs testers with a NV30 (not later models) as things are a bit different on that card.

And if your are interested in helping Thunderbird and his TV-Out cause, please have a look here: http://nouveau.freedesktop.org/wiki/TestersWanted This page will contain help / test requests of other project members too. So please have a look at it, we always need testers!

<<< Previous Issue | Next Issue >>>


2013-03-24 13:16