# Supported graphics cards

## `/dev/i2c-*` versus PCI memory

To control a monitor, DDCcontrol must access the I2C bus of the graphics card. There are two methods to do so: the first one uses `/dev/i2c-*` devices provided by kernel drivers (abbreviated as dev in tables), the second one reads and writes directly in the card PCI memory (abbreviated as PCI in the tables).

Depending on your hardware, one method or the other may work. Even both may work.

## ATI Radeon series

### Direct PCI memory access support

Almost every ATI card should work with direct PCI memory access, even if it has not been very extensively tested.

To use it, you have nothing special to do, everything is done by DDCcontrol.

### `/dev/i2c-*` devices support

ATI Radeon cards also work with `/dev/i2c-*` devices. To use `/dev/i2c-*` devices with ATI cards, you must load the `radeonfb` module by typing, as root:

    # modprobe radeonfb

The kernel configuration options needed to enable Radeon framebuffer driver and I2C support are:

- Devices drivers Graphics support Framebuffer support ATI Radeon display support .
- Devices drivers Graphics support Framebuffer support ATI Radeon display support DDC/I2C for ATI Radeon support .

  The `radeonfb` kernel module may cause system instability (crashes or screen corruption) when used at the same time as the ATI closed source drivers.

  This is why we recommend that you use direct PCI memory access with ATI cards.

### ATI cards support table

These ATI cards have been reported to work, but others models should also work. If yours is not listed, please send a message to one of the DDCcontrol mailing lists (see report).

Name | Works
dev | PCI
Radeon 7000 | Yes | ???
Radeon 7500 | Yes | ???
Radeon 9200 | Yes | Yes
Radeon 9200 SE | ??? | Yes
Radeon 9500 | Yes | ???
Radeon 9550 SE | Yes | ???
Radeon 9600 Pro | Yes | ???
Radeon 9700 | Yes | ???
Radeon 9800 Pro | Yes | Yes

## nVidia

### `/dev/i2c-*` devices support

#### Using proprietary drivers

Starting with the proprietary drivers version 8762, nVidia provides access to the i2c bus through standard `/dev/i2c-*` interface.

To use it, nothing special has to be done, just install and run the proprietary drivers. Then, when `nvidia` driver is loaded, the correct devices are accessible as with standard framebuffer drivers.

#### Using `rivafb` or `nvidiafb`

Most nVidia cards, starting with TNT, work with `/dev/i2c-*` devices. To use them, you must load the `nvidiafb` (or `rivafb` for old cards) module by typing, as root:

    # modprobe nvidiafb

or

    # modprobe rivafb

The kernel configuration options needed to enable nVidia framebuffer and I2C support are:

- Devices drivers Graphics support Support for frame buffer devices nVidia Framebuffer support (or nVidia Riva support) .
- Devices drivers Graphics support Support for frame buffer devices nVidia Framebuffer support (or nVidia Riva support) Enable DDC Support .

These kernel modules are not compatible with binary nVidia X drivers, which are the only drivers for nVidia cards to provide 3D acceleration.

This is why we recommend that you either use direct PCI memory access with nVidia cards, or i2c-dev access through the proprietary drivers.

### Direct PCI memory access support

Almost every nVidia card works with direct PCI memory access, and this method is compatible with the nVidia proprietary drivers.

To use it, you have nothing special to do, everything is done by DDCcontrol.

### nVidia cards support table

Most of these nVidia cards have been reported to work, but other models should also work. If yours is not listed, please send a message to one of the DDCcontrol mailing lists (see report).

Name | Works
dev/framebuffer | PCI | dev/proprietary
GeForce Ti 200 | Yes | Yes | Yes
GeForce FX 5600 | No | Yes | ???
GeForce FX 5700 | No | Yes | ???
GeForce FX 5700 LE | ??? | Yes | ???
GeForce FX 5950 Ultra | ??? | Yes | ???
GeForce 6200 TC | ??? | Yes | ???
GeForce 6600 | ??? | Yes | ???
GeForce 6800 GT | ??? | Yes | ???
nForce 2 IGP | No | No | ???

## Intel

### i810/i815/i830/i845/i855/i865/i915/i945 with Integrated Graphics Controller

Intel integrated graphics controllers only work with direct PCI memory access, so you don't have to have any kernel module built or loaded.

### Intel chipset support table

These Intel chipsets have been reported to work. If yours is not listed, please send a message to one of the DDCcontrol mailing lists (see report).

Name | Works
dev | PCI
Intel i915G (82915G) | No | Yes
Intel i865G (82865G) | No | Yes

## SiS

SiS graphics controllers only work with direct PCI memory access, so you don't have to have any kernel module built or loaded.

### SiS chipset support table

These SiS chipsets have been reported to work. If yours is not listed, please send a message to one of the DDCcontrol mailing lists (see report).

Name | Works
dev | PCI
SiS [M]661xX/[M]741[GX]/[M]760 PCI/AGP VGA Adapter | No | Yes

## VIA

VIA graphics controllers only work with direct PCI memory access, so you don't have to have any kernel module built or loaded.

### VIA chipset support table

These VIA chipsets have been reported to work. If yours is not listed, please send a message to one of the DDCcontrol mailing lists (see report).

Name | Works
dev | PCI
VIA VT8623 [Apollo CLE266] integrated CastleRock graphics | No | Yes
VIA S3 Unichrome Pro VGA Adapter | No | Yes

## Matrox

### G200/G400/G450/G550 series

Matrox cards only work with `/dev/i2c-*` devices. To use them, you must load both `matroxfb` and `i2c-matroxfb` modules by typing, as root:

    # modprobe matroxfb
    # modprobe i2c-matroxfb

The kernel configuration options needed to enable Matrox framebuffer driver and I2C support are, at least:

- Devices drivers Graphics support Framebuffer support Matrox acceleration .
- Devices drivers Graphics support Framebuffer support Matrox acceleration G100/G200/G400/G450/G550 support .
- Devices drivers Graphics support Framebuffer support Matrox acceleration Matrox I2C support .

### Matrox cards support table

These Matrox cards have been reported to work. If yours is not listed, please send a message to one of the DDCcontrol mailing lists (see report).

Name | Works
dev | PCI
Matrox G200 AGP | No | No
Matrox G450 AGP | Yes | No