Xorg.conf Triple Monitor with Two Graphics Cards

Posted Tuesday, April 1st 2014 in FreeBSD, Linux - Permalink

It took me a while, but I finally got three monitors set up with my desktop using two different graphics cards. My desktop has an AMD VGA output from the motherboard, and an nVidia PCI graphics card with DVI and HDMI outputs. Here is the info on the cards:

vgapci0@pci0:1:5:0:	class=0x030000 card=0x305417aa chip=0x96161002 rev=0x00 hdr=0x00
    vendor     = 'Advanced Micro Devices [AMD] nee ATI'
    device     = 'RS780L [Radeon HD 3000]'
    class      = display
    subclass   = VGA
vgapci1@pci0:2:0:0:	class=0x030000 card=0x19911462 chip=0x0ca210de rev=0xa2 hdr=0x00
    vendor     = 'NVIDIA Corporation'
    device     = 'GT215 [GeForce GT 320]'
    class      = display
    subclass   = VGA

The Xorg configuration file is available here.

One problem I had was that the Radeon card would not use the proper resolution. My monitor on that card is 1600×900, but the resolution would always start at 1600×1600. That gave me a huge piece of desktop that I could not see. I tried many things to fix this, in particular, trying to hard set the resolution. None of it worked. The fix came with FreeBSD 10.0-RELEASE. FreeBSD 10.0 now has KMS, or Kernel Mode Setting, for ATI cards. This allows the ATI graphics driver to properly be able to determine and set the monitor resolution. It was also mentioned that the ATI driver now has 2D hardware acceleration. I cannot comment if I have noticed a performance difference yet.

To get the KMS for the ATI cards in 10.0, I had to remove the packages for libGL and dri. I rebuilt these packages and packages that depend on them. Everything worked great after that. You can easily do this using portmaster,

# portmaster -r libGL
# portmaster -r dri

If, after rebuilding those packages, you note that the mouse and keyboard are unresponsive in X, then you must rebuild the ports x11-drivers/xf86-input-keyboard and x11-drivers/xf86-input-mouse.

List Posts Newest Posts Page 1Next Page