1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Nouveau Companion 41

KoalaBR

Published on 11 December 2008
Written by KoalaBR
Page 3 of 4 - 4 Comments

Besides the usual bug fixing, stillunknown started on coding a kernel mode setting driver for G8x (details here). Having problems with a black screen, he turned to mmiotrace and found the problem (details here). A few days later he committed his first version to mesa/drm/modesetting-101 (details here). Pq did some smaller code review and noticed a few memory leaks and typos which were promptly fixed by stillunknown. Further work, however, was put on hold due to the need of a proper memory management.

pmdata started his work on NV3x Gallium3D. He copied the NV4x code path and changed the state emission to work with data from objects instead of directly writing commands to the GPU. That work was finished about 2 weeks later (details here).

Darktama worked on NV50. Thanks to him, the 2D part gained support for EXA composite and Xv. The support has some drawbacks, though:

- Compositing manager is needed for Xv
- They should be working on most NV50 based cards. At least NV84 and NV86 should work, as well as the NV50 (= original 8800GTS). All cards having context stuff in the DRM should work. If not, let us know!
- By the way: EXA solid() and copy() were there from the beginning, as they are required by EXA. Stillunknown and malc0 added some fixes for mode-setting during this coding spree.

Marcheu finally solved the problem with the fixed pipelines for Gallium3D, but did not have to code it yet. P0g started with NV1x work got the gears to render and waited for Marcheu to start coding the solution. Marcheu suggested doing the fixed pipeline stuff as an LLVM optimization pass (LLVM is a feature in Gallium).

Randr1.2 code had problems when the EDID data channel of the LVDS (laptop panel) was wired but did not respond. That left the code without a screen resolution to work with. Stillunknown hunted through the BIOS in order to find out where the native resolution was exactly stored and came up with a fix a few days later (bug report). But it was not to be: Alphix still reported problems.

There has been some uncertainty whether Nouveau would use GEM or TTM. Well, we use both as GEM is not a complete memory manager, but an interface which needs to be implemented in the driver. As darktama put it on June 5th:

"I have (semi-complete) code somewhere for Nouveau drm/gallium on ttm, that's not stalled for any other reason than I want to get some g8x stuff sorted first since it could effect our mm requirements that said, I don't know which will prevail, I'm not really too concerned though..there's plenty of hw issues/features to deal with first [...] Nouveau will probably use TTM [behind he GEM API]."

The various -ng branches are a playground for GEM interface with TTM behind the scenes (details here). They should mostly work, but with numerous bugs that need to be fixed, and some things that Darktama wants to rework. It is good enough to play with KMS on NV4x (malc0's code) and nv5x, and Compiz works quite well on NV4x since DRI2 support appeared. (And no: We won't help you getting it to work just yet, you are on your own trying :)).

On the other hand, TTY restore for NV5x cards is still done via video BIOS (int10) calls.

Latest Linux Hardware Reviews
  1. Btrfs On 4 x Intel SSDs In RAID 0/1/5/6/10
  2. AMD Radeon R9 290 On Ubuntu 14.10: RadeonSI Gallium3D vs. Catalyst
  3. MSI X99S SLI PLUS On Linux
  4. NVIDIA GeForce GTX 970 Offers Great Linux Performance
Latest Linux Articles
  1. Windows 8.1 vs. Ubuntu 14.10 With Intel HD Graphics
  2. 6-Way Ubuntu 14.10 Radeon Gallium3D vs. Catalyst Driver Comparison
  3. NVIDIA vs. Nouveau Drivers On Ubuntu 14.10
  4. Ubuntu 14.10 Offers AMD Radeon Driver Performance Improvements
Latest Linux News
  1. Wine 1.7.30 Continues Work On DirectWrite & Offers Regedit Fixes
  2. Has The Sky Fallen? Qualcomm Contributes To Freedreno's DRM/KMS Driver
  3. Manjaro Works To Make Calamares A Distribution-Independent Installer
  4. DisplayLink USB 3.0 Support Sounds Like A Mess
  5. PulseAudio Gains A Native Bluetooth Headset Backend
  6. X.Org Foundation Decides On Its Women Outreach Project
  7. GTK+ 3.16's New GtkGLArea Widget Gets Improved
  8. X.Org Server 1.17 ABI Bumped
  9. Fedora 21 Beta To Be Released Next Week
  10. Go 1.4 Beta Release Brings Big Runtime Changes
Latest Forum Discussions
  1. Closed source to opensource
  2. How to get rid of Linux
  3. Is foolish currently develop in machine code, hexadecimal and assembly?
  4. Reducing The CPU Usage In Mesa To Improve Performance
  5. Help diagnosing problems with a Readon HD 4670 on Mesa 10.3.2-1
  6. Advertisements On Phoronix
  7. nv and xorg.conf under Debian PPC
  8. Looking for a Open-Source AMD experienced Linux mentor