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 2 of 4 - 4 Comments

Next came a mmiotrace of an NVidia blob suspend / resume cycle. The register writes were then compared to what Nouveau wrote. The result was: 32 registers were different, but why was still unknown. Further prodding from mjg59 revealed that there was a "...need to restore some of the ramdac and crtc registers in order to restore the correct screen associations...". Failing to do so let Nouveau detect a wrong output type (like a CRT instead of a laptop display).

Further hacking allowed mjg59 to get the backlight on, but still Nouveau wouldn't display anything else than a black screen. Of course, Nouveau claimed that it detected the display correctly and was using it (details here).

More debugging and discussion ensued with mjg59 finally getting it right. Nouveau did not set PTIMER_NUMERATOR and PTIMER_DENOMINATOR. Setting those gave mjg59 a picture, that is, the display came up. However, still no output, no working text or graphics mode (details here).

More testing showed a merge problem on mjg59's side which resulted in incorrect TMDS register writes. Correcting that allowed "nv" to get the card into a fully working state. (Yes, indeed "nv" not Nouveau. "nv" is sometimes a bit better getting a slightly messed up card into a working state).

Additionally, mjg59 later started working on generic thermal code into which driver like Nouveau would hook into (details here). A few days later and hwmon could read temperatures from NVidia cards through that code (details here), although it was a very rough first version.

Hanno had problems with his NV17 based computer, which prompted malc0 to offer him a patch which resulted in success. Marcheu was interested as to why the patch still was not in mainline, to which malc0 said that it contained some ugly hacks which needed refinement.

In came bkaindl and pestered malc0 about suspend to disk support for NV4x. Macl0 admitted having stopped working on it, as he had other things with higher priority on his to-do list. So bkaindl discussed possible solutions with malc0 while comparing the patch to the (then) current code for NV4x. When he spotted a difference he changed the code to work similar to the NV3x code path and was successful! However, testing the same changes with malc0's laptop did not work at all, which sent them both back to the drawing board.

Moondrake (our local PPC coder and tester) checked the patch with his Powerbook and it worked, too. Well, kind of, as he said:

"malc0: your suspend stuff is amazing. [...] except for having to do hacks for doing the post in the DDX, remembering to setup bigendian mode and some panel hacks to turn on the backlight, the patches worked out of the box"

With this, one goal of writing an nv_bios kernel module to handle suspending NVidia cards was reached.

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. Fedora 21 Release Candidate 1 Awaits Your Testing
  2. GCC 5 Adds Support For ARM's Cortex-A17
  3. KWayland Server Component Coming For KDE Plasma 5.2
  4. NVIDIA Posts Tegra Gallium3D Patch For K1+ Support
  5. Ubuntu 14.10 MacBook Air Tests With Linux 3.18, Mesa 10.5
  6. AMD Richland APU Support Added To Coreboot
  7. 2014 Holiday Shopping Reminder, Happy Thanksgiving
  8. Python 3 Support Added To The GNOME Shell
  9. ReactOS Lands Its New Explorer Shell
  10. Weston's IVI Shell Sees New Version
Latest Forum Discussions
  1. Updated and Optimized Ubuntu Free Graphics Drivers
  2. Hurrican SDL Port
  3. Roadmap to Catalyst 14.10 ?
  4. how to configure module phoromatic ?
  5. PulseAudio 6.0 Is Coming & Other Linux Audio Plans For The Future
  6. Debian Developer Resigns From The Systemd Maintainership Team
  7. Cant get working Kaveri APU - A10-7850k
  8. Script for Fan Speed Control