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 40

Pekka Paalanen

Published on 29 October 2008
Written by Pekka Paalanen
Page 1 of 4 - 17 Comments

It's been almost six months since the last issue of the Nouveau Companion, but Pekka Paalanen has rejuvenated these efforts and has put out the 40th issue of this newsletter that updates the open-source community on the status of the Nouveau project, an effort to reverse-engineer NVIDIA's binary driver and provide a fully open-source 2D and 3D implementation. While we have been without the Nouveau Companion for many months, progress on the open-source Nouveau driver has continued. There is now GeForce 8 support with 2D EXA acceleration, work underway in implementing Gallium3D, switching the driver's memory manager from TTM to using a GEM API with TTM internals (similar to the ATI driver), and of course kernel mode-setting.

Greetings everyone, the long awaited TiNDC #40 is finally here.

It has been a very long time since the last TiNDC, over five months. Also the Nouveau Wiki has been fairly quiet, because no new shiny features have progressed to the level where we would like the general public to test them (or a little bit due to forgetting to update it). This does not say that the project is dead, not at all, the difficult parts take time, and changes in the DRI/DRM development process model and memory manager designs are not exactly pushing us forward. Having our beloved koala_BR hijacked by real life, the public output of the project has been very low. Getting frustrated with the silence, I (pq) decided to write something, but I don't plan to become a regular TiNDC writer. So, here is a review of the current things, but unfortunately I cannot cover everything from the past five months. Thanks to gQuigs for writing the Google Summer of Code section. Enjoy!

Topics:

- The Nouveau Source Code Repositories
- Renouveau, Mmiotrace and User Contributed Dumps
- Displays and Suspend
- Kernel Mode Setting
- Gallium3D Progress
- Memory Management
- Fruits of The Google Summer of Code 2008
- Short Topics

Highlight: NV50 2D is now on par with the rest! For details, see Short Topics.

The Nouveau Source Code Repositories

The Nouveau project uses several git repositories and many branches. In these quiet times, the best place to monitor Nouveau's progress is to watch the repositories. Here is a short introduction to most of them.

http://cgit.freedesktop.org/nouveau/xf86-video-nouveau/

The home of the X.org driver part, the DDX, is where Xv, EXA and Xrender accelerations are implemented, where RandR 1.2 roams, and which normally sets the display modes. When you use Nouveau, you use the "master" branch. There is also a curious branch called "ng", which we will cover with darktama in section Memory Management. Other branches here are abandoned.

http://cgit.freedesktop.org/mesa/drm/

DRM, also known as the kernel parts, manages the hardware and provides access and protection to user space. The "master" branch is the one to use, although there are very many other branches. There was also the branch "drm-gem" where initial development of the GEM API was done, it was merged into "master" in August. Nouveau KMS was prototyped in the branch "modesetting-101", which is now superseded by "modesetting-gem". Libdrm lives here, too.

http://cgit.freedesktop.org/nouveau/mesa/

This is a new beast and off-limits to all but developers. This is a parallel Mesa repository for developing Nouveau Gallium3D support, i.e. what you all are eagerly waiting for: 3D acceleration. The "master" branch has long been untouched, but like in the upstream, there are the branches "gallium-0.1" and "gallium-0.2". In the upstream, i.e. the main Mesa repository, the "gallium-0.2" branch is used to prepare Gallium3D for merging it into "master" branch. Cleanups and possibly some interface changes are done there before the merge. Meanwhile, "gallium-0.1" is the branch where to develop drivers, and it is kept more stable.

<< Previous Page
1
Latest Linux Hardware Reviews
  1. Acer B286HK: A 28-inch UHD LED 4K Monitor For As Low As $350
  2. Intel Xeon E5-1680 v3 & E5-2687W v3 Compared To The Core i7 5960X On Linux
  3. Intel 120GB 530 Series SSD Linux Performance
  4. Btrfs/EXT4/XFS/F2FS RAID 0/1/5/6/10 Linux Benchmarks On Four SSDs
Latest Linux Articles
  1. Mesa Git Yields Performance Improvements For Newer AMD GPUs
  2. Apple OS X 10.10 vs. Ubuntu 14.10 Performance
  3. Mesa 10.5-devel Brings Some Intel Haswell HD Graphics Changes Over Mesa 10.3
  4. NVIDIA vs. Nouveau Drivers With Linux 3.18 + Mesa 10.4-devel
Latest Linux News
  1. Wine 1.7.32 Updates Its Mono Engine
  2. Mesa 10.4 Release Candidate 3 Is Here For Weekend Testing
  3. GenodeOS 14.11 Now Supports Intel's Wireless Hardware
  4. Jolla Tablet Could Have Upgrades For MicroSDHC, Split Screen, 3.5G
  5. Intel Has Last Round Of DRM Changes For Linux 3.19, Starts Dropping DRI1/UMS
  6. Fedora 21 Release Candidate 1 Awaits Your Testing
  7. GCC 5 Adds Support For ARM's Cortex-A17
  8. KWayland Server Component Coming For KDE Plasma 5.2
  9. NVIDIA Posts Tegra Gallium3D Patch For K1+ Support
  10. Ubuntu 14.10 MacBook Air Tests With Linux 3.18, Mesa 10.5
Latest Forum Discussions
  1. Aliens vs predator for Linux
  2. Updated and Optimized Ubuntu Free Graphics Drivers
  3. Hurrican SDL Port
  4. Roadmap to Catalyst 14.10 ?
  5. how to configure module phoromatic ?
  6. PulseAudio 6.0 Is Coming & Other Linux Audio Plans For The Future
  7. Debian Developer Resigns From The Systemd Maintainership Team
  8. Cant get working Kaveri APU - A10-7850k