Nouveau Companion 33

Written by KoalaBR in Display Drivers on 11 January 2008 at 05:04 PM EST. Page 1 of 2. 1 Comment.

The Nouveau crew is out with their first Nouveau Companion of the year, which details the recent progress made with this reverse-engineered open-source NVIDIA display driver. Among the items talked about in this issue include PowerPC fixes, RandR 1.2 for older NVIDIA graphics cards, MMioTrace being broken with the Linux 2.6.24 kernel, and a variety of other topics.

A Happy New Year to all of our readers. Welcome back to the first issue of the TiNDC in the New Year.

Let me take the opportunity to thank all our contributors and testers for their work during 2007. Hopefully we will see at least some of you at FOSDEM this year.

The last issue was a bit hushed due to the holidays and me having to work. So I sneaked the last issue into the Wiki when probably no one was looking.

On IRC the question was raised, whether nouveau would be working on NetBSD to which the answer was "no". Some netbsd user came forward and pointed us to this link which is something we totally missed. So if any of you NetBSD developers are reading our TiNDC: We are very interested in *BSD patches and will gladly apply those patches to our code base. So if anything more recent exists: Please do come forward :).

JussiP fixed the dump status page, so you'll finally see correctly aging dumps :).

The Current Status

On the account that PPC wasn't working: Marcheu found bugs in the DRM related to PPC and fixed them (git commit). Apart from bad programming on our side, we did have the additional problem that accessing the BIOS after start up didn't work correctly as the BIOS was showing signs of corruptions (which couldn't be, as it obviously worked when starting up). malc0 was bitten by this last year and we fixed the issue by copying the BIOS to RAM and using that image to work with for DCB parsing, etc (git commit). However, we still had failure reports, showing that we still hit this problem now and then. Marcheu now moved the copying to as early in the driver startup as possible, which hopefully fixes this issue on PPC.

AndrewR sent in a fix for overlay control, which was cleaned up by ahuillet a bit (IRC). It should give Xv brightness and color intensity control and other goodies for NV04/NV05 cards.

Regarding Xv there were some fixes by marcheu to synchronize the blitter to the video output in order to avoid tearing on NV40.

Stillunknwon finally bit the bullet and started to work on Randr1.2 for older cards (NV1x and NV2x too). Together with Ahuillet he worked out some problems.

His work plus some more patches from malc0 did during the Holidays:
· Dual link DVI may work, additional testers needed
· 7300 go on LVDS was tested and updated by stillunknown and seventhguardian but first tries didn't yield useful results (picture).
After a few days of prodding, hughsie came back a reported the same breakage on a similar system, so LVDS was officially broken (hey, that much better than it's previous status of "unsupported"!)
Seventhguardian with the help of stillunknown finally got his issue solved by trial and error within nv_crtc.c.
· 7300 go did get Randr1.2 modesetting fixes.

Additionally, stillunknown tried his luck on textured video (via shaders) for video playback on NV4x. The blitter ahuillet has done works fine, but is a little bit on the slow side, so there is room for improvement if we could use shaders.

Stillunknown got some basics explained by darktama and thunderbird and after some prodding got a simple test program to work. A few days later, he got a gray scale yv12 adapter working. Further work slowed down though as stillunknown hit some problems in understanding the shader code instructions correctly. He posted his current work for review, which was done by Thunderbird and marcheu.

Fixing up the shader code according to some of the feedback, a day later, he got color working too. However, bi linear filtering caused problems (IRC, picture, Elephant dreams filtered borked pic without filtering).

Later, ahuillet did some improvement to the blitter image quality: linear interpolation in YV12->YUY2 conversion (link).

And being in code mode he added another improvement to Xv: The overlay now works slightly better with dual head setups. It changes the CRTC fine and falls back on the blitter so that you never get to see a blue window instead of your video (IRC).


Related Articles