A Guide To How Graphics Cards Work

Posted by Michael Larabel on January 21, 2011

This entry on the X.Org Wiki isn't brand new, but for those that have yet to see it, there is a development guide to how graphics cards work on this Wiki page. There was just a trivial update to the guide today and I had then realized it hasn't been mentioned before on Phoronix.

This technical guide is intended for those interested in getting into graphics driver development with Linux / X.Org. The key sections include the video RAM, display control (CRTCs, PLLs, outputs), the 2D engine (solid, blit, Xorg acceleration), 3D engine (overview and buffers), the overlay, hardware sprites, PCI, AGP, PCI Express, and apertures coverage. There are also driver examples by referencing functions within the open-source X.Org drivers.

Beyond the X.Org guide, there's also been other documentation in the past that's been scattered around the web in hopes of easing the process in getting into open-source GPU driver development on Linux. There's also this Radeon driver guide by Alex Deucher and this DRM development documentation covering DRI2, KMS (kernel mode-setting), GEM (Graphics Execution Manager), etc.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Debian GNU/Hurd 2013 Release Brings New Packages
  2. Intel Ultrabook Performance Is Faster With Mesa 9.2
  3. Hot Relocation HDD To SSD Support For Btrfs
  4. Phoronix Test Suite 4.6.0 "Utsira" Released
  5. New Intel X.Org Driver Supports All Of Haswell
  6. SQLite Now Faster With Memory Mapped I/O
  7. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  8. Qt For Tizen Launches, Based On Qt 5.1
  9. KTAP Released For Linux Kernel Dynamic Tracing
  10. Linux 3.10-rc2 Kernel Takes In A Few Extra Pulls
  11. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
Latest Forum Talk
  1. Freedreno Gallium3D Now Banging The Adreno A3XX
  2. Microsoft Releases Skype For Linux 4.2, Has...
  3. Intel Linux OpenGL Driver Leading Over Apple OS X
  4. The Cost Of Ubuntu Disk Encryption
  5. DRM Moves Ahead With HTML5 Specification
  6. Kubuntu, KDE Has Little Hope For Ubuntu's Mir
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite