Wednesday, February 23, 2011

Kernel Mode Setting and Resolution

The main pain of upgrading to rawhide on Fedora has always been -- "Hey, what about my proprietary graphics card support?". I've been bitten a few times. When I made the decision to buy a card, I chose ATI so that I can enjoy the benefits of a good open source driver.

Rawhide has moved to gnome 3, and gnome shell requires 3D graphics or falls back to the old style gnome. With kernel mode setting, there is sufficient support in the form of DRI/DRI2 and Mesa 3D to support OpenGL.

My main issue was getting the right resolution. Here is a well known way of solving the problem

Solution

  1. Run the cvt(1) command, specify the resolution and refresh rate, it will output a set of mode lines. See http://www.arachnoid.com/modelines/ for a good tutorial on mode lines (NOTE: You might not need to do this if EDID works fine for you)
  2. Modify /etc/X11/xorg.conf and add the following under the monitor section
  3. Modeline "...." (whatever cvt output)
  4. Option "PreferredMode" "Name of the mode used above"

This should get you going and help you come to the desired resolution

Solutions that did not work

  1. Adding video=... at boot time
  2. Disabling KMS, helps fix the resolution, but the correct 3D driver (mesa DRI) does not load, you are left to Software 3D emulation (that sucks)

Enjoy, I hope someday we'll get an open source driver for openCL :)

Ranking and Unranking permutations

I've been a big fan of Skiena's Algorithm Design Manual , I recently found my first edition of the book (although I own the third ed...