RadeonFeature

Contents

  1. Feature Matrix for Free Radeon Drivers
  2. VSYNC
    1. 3D driver environment variable
    2. DDX driver options
    3. Xv Attribute
  3. KMS Power Management Options
  4. Decoder ring for engineering vs marketing names
  5. Radeon 3D Hardware
  6. Radeon Display Hardware
  7. Where to get the drivers
  8. Where to file defect reports
  9. Documentation
  10. Links

Feature Matrix for Free Radeon Drivers

This page is only for free Radeon drivers using KMS.
radeon (xf86-video-ati) for 2D; radeon, r200, r300, r600 Mesa and r300, r600 Gallium drivers only.
THIS PAGE IS NOT FOR FGLRX/CATALYST DRIVERS PROVIDED BY AMD/ATI.

See RadeonFeatureUMS for radeon in UMS.

See radeonhd:feature for radeonhd.

Also check out the RadeonProgram, GalliumStatus, and ATIRadeon at DRI wiki.

2D features

R100

R200

R300

R400

RS690

R500

R600/700

Evergreen

N.Islands4

Kernel Modesetting

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Max Supported Displays (Eyefinity)7

1-2

2

2

2

2

2

2

2-6

4-6

DRI2

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Page Flipping5

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

ShadowFB

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

2D Acceleration (EXA)

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Textured Xv

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Video Decode (XvMC/VDPAU/VA-API) using the 3D engine

TODO

TODO

WIP

WIP

WIP

WIP

WIP

WIP

WIP

Video Decode (XvMC/VDPAU/VA-API) using UVD

N/A

N/A

N/A

N/A

N/A

N/A

TODO

TODO

TODO

Hybrid Graphics

N/A

N/A

N/A

N/A

N/A

N/A

MOSTLY6

MOSTLY6

MOSTLY6

Mesa 3D features

R100

R200

R300

R400

RS690

R500

R600/700

Evergreen

N.Islands4

3D Driver

radeon

r200

r300g

r300g

r300g

r300g

r600g

r600g

r600g

Primitives

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Stippled Primitives

DONE

DONE

TODO

TODO

TODO

TODO

TODO

TODO

TODO

Smooth Primitives

DONE

DONE

TODO

TODO

TODO

TODO

TODO

TODO

TODO

Textures

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Hardware TCL

DONE

DONE

DONE

DONE

N/A

DONE

DONE

DONE

DONE

Vertex Shaders

N/A

DONE

DONE

DONE

N/A

DONE

DONE

DONE

DONE

Fragment (Pixel) Shaders

N/A

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

GLSL

N/A

N/A

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Texture Tiling

TODO

TODO

DONE

DONE

DONE

DONE

WIP

WIP

WIP

S3TC decompression
(via env variable / drirc)

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

full S3TC
(via libtxc_dxtn.so)

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Tessellation Shader Stages

N/A

N/A

N/A

N/A

N/A

N/A

N/A

TODO

TODO

Geometry Shaders

N/A

N/A

N/A

N/A

N/A

N/A

TODO

TODO

TODO

Anti-Aliasing (MSAA)

N/A

N/A

WIP

WIP

WIP

WIP

TODO

TODO

TODO

Anti-Aliasing (MLAA)

N/A

N/A

N/A

N/A

N/A

MOSTLY

DONE

DONE

not tested

Anisotropic Filtering

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Hyper-Z

WIP

TODO

MOSTLY

MOSTLY

MOSTLY

MOSTLY

WIP

WIP

WIP

OpenGL Compliance (Driver/Hardware)

1.3/1.3

1.3/1.4

2.1/2.11

2.1/2.11

2.1/2.11

2.1/2.11

3.0/3.310

3.0/4.210

3.0/4.210

Output

R100

R200

R300

R400

RS690

R500

R600/700

Evergreen

N.Islands4

Dual-link DVI

N/A

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

XRandR 1.2

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

TV Out

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

N/A

DisplayPort

N/A

N/A

N/A

N/A

N/A

N/A

DONE

DONE

DONE

HDMI Audio

N/A

N/A

N/A

N/A

not tested9

N/A

DONE9

DONE9

TODO

Power Saving

R100

R200

R300

R400

RS690

R500

R600/700

Evergreen

N.Islands4

Engine reclocking

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Memory reclocking

TODO

TODO

TODO

DONE

N/A

DONE

DONE

DONE

DONE

Voltage adjusting

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Thermal sensors

N/A

N/A

DONE2

DONE2

DONE2

DONE2

DONE3

DONE3

DONE3

Other

R100

R200

R300

R400

RS690

R500

R600/700

Evergreen

N.Islands4

Suspend Support

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

CrossFire (multi-card)

N/A

N/A

N/A

TODO

TODO

TODO

TODO

TODO

TODO

Compute (OpenCL)

N/A

N/A

N/A

N/A

N/A

N/A

TODO

WIP8

WIP8

1 Hardware doesn't support ARB NPOT textures fully.

2 i2c chip

3 i2c chip or internal sensor

4 Kernel 2.6.38 required for Barts, Turks, Caicos; 2.6.39 for Cayman.

5 Kernel 2.6.38 required

6 There are two versions of hybrd graphics: MUXed and MUX-less. MUXed have a display MUX to switch the displays between the discrete and integrated cards. MUXed systems can be switched using vgaswitcheroo. MUX-less do not have a display MUX and the displays are only connected to the integrated card. On MUX-less systems, the discrete card is solely for rendering, not display. At the moment the X server does not support rendering and display from different cards so the discrete card can not be used with MUX-less systems at the moment. Most new laptops (2011+) are MUX-less.

7 Depends on the OEM board. Max of 2 non-Displayport displays.

8 Out of source tree, proof of the concept support at the moment, support will be through gallium See GalliumCompute.

9 Requires loading radeon with the audio parameter set to 1 (e.g., add radeon.audio=1 on the kernel command line in grub). Exergreen support required kernel 3.3 or newer.

10 Requires env var R600_GLSL130=1 and R600_STREAMOUT=1

VSYNC

There are several mechanisms involved in tear-free rendering due to limitations in X.

3D driver environment variable

DDX driver options

Xv Attribute

KMS Power Management Options

Kernel 2.6.35 or newer is required. The pm code supports two basic methods:

  1. "dynpm"
  2. "profile"

You can select the methods via sysfs. Echo "dynpm" or "profile" to /sys/class/drm/card0/device/power_method.

The "dynpm" method dynamically changes the clocks based on the number of pending fences, so performance is ramped up when running GPU intensive apps, and ramped down when the GPU is idle. The reclocking is attemped during vertical blanking periods, but due to the timing of the reclocking functions, doesn't not always complete in the blanking period, which can lead to flicker in the display. Due to this, dynpm only works when a single head is active.

The "profile" method exposes five profiles that can be selected from:

  1. "default"
  2. "auto"
  3. "low"
  4. "mid"
  5. "high"

Select the profile by echoing the selected profile to /sys/class/drm/card0/device/power_profile.

The "profile" method is not as agressive as "dynpm," but is currently much more stable and flicker free and works with multiple heads active.

Power management is supported on all asics (r1xx-evergreen) that include the appropriate power state tables in the vbios; not all boards do (especially older desktop cards).

Thermal sensors are implemented via external i2c chips or via the internal thermal sensor (rv6xx-evergreen only; supported in 2.6.36 or newer); not all OEMs implement a thermal sensor. To get the temperature on asics that use i2c chips, you need to load the appropriate hwmon driver for the sensor used on your board (lm63, lm64, etc.). The drm will attempt to load the appropriate hwmon driver. On boards that use the internal thermal sensor, the drm will set up the hwmon interface automatically. When the appropriate driver is loaded, the temperatures can be accessed via lm_sensors tools or via sysfs in /sys/class/hwmon .

Decoder ring for engineering vs marketing names

Family

Engineering Names

Marketing Names

R100

R100, RV100, RV200, RS100, RS200

7xxx, 320-345

R200

R200, RV250, RV280, RS300

8xxx - 9250

R300

R300, R350, RV350, RV380, RS400, RS480

9500 - 9800, X300 - X600, X1050 - X1150, 200M

R400

R420, R423, RV410, RS600, RS690, RS740

X700 - X850, X12xx, 2100

R500

RV515, R520, RV530, RV560, RV570, R580

X1300 - X2300, HD2300

R600

R600, RV610, RV630, RV620, RV635, RV670, RS780, RS880

HD2400 - HD4290

R700

RV770, RV730, RV710, RV740

HD4330 - HD5165, HD5xxV

Evergreen

CEDAR, REDWOOD, JUNIPER, CYPRESS, PALM (Wrestler), SUMO, SUMO2

HD5430 - HD5970, all HD6000 not listed under Northern Islands

Northern Islands

BARTS, TURKS, CAICOS, CAYMAN

HD6450, HD6570, HD6670, HD6790 - HD6990, HD64xxM, HD67xxM, HD69xxM, HD74xxM, HD75xxM, HD76xxM

Radeon 3D Hardware

3D Core

Engineering Names

Shader Model

DX

OpenGL

Max Texture Size

Max Renderbuffer Size

R1xx

R100, RV100, RV200, RS100, RS200

NA

7

1.3

2048

2048

R2xx

R200, RV250, RV280, RS300

1

8

1.4

2048

2048

R3xx

R300, R350, RV350, RV380, RS400, RS480

2

9

2.1

2048

2560

R4xx

R420, R423, RV410, RS600, RS690, RS740

2

9

2.1

2048

4021

R5xx

RV515, R520, RV530, RV560, RV570, R580

3

9

2.1

4096

4096

R6xx

R600, RV610, RV630, RV620, RV635, RV670, RS780, RS880

4

10

3.3

8192

8192

R7xx

RV770, RV730, RV710, RV740

4

10

3.3

8192

8192

R8xx

CEDAR, REDWOOD, JUNIPER, CYPRESS, PALM (Wrestler), SUMO, SUMO2, BARTS, TURKS, CAICOS

5

11

4.2

16384

16384

R9xx

CAYMAN

5

11

4.2

16384

16384

Radeon Display Hardware

Display Core

Engineering Names

Display Controllers

DACs

TV Encoder

DVO

Digital

Notes

Classic Radeon

Rage128, R1xx-R4xx

1-2

1-2

0-1

1

2 (1 TMDS, 1 LVDS)

DCE1/Avivo

R5xx

2

2

1

1

2 (1 TMDS, 1 LVDS/TMDS)

DCE2

R600, RV610, RV630, RV670, RS600, RS690, RS740

2

2 (R600, RV610, RV630, RV670), 1 (RS600, RS690, RS740)

1

1

2 (1 TMDS, 1 LVDS/TMDS)

Adds HDMI 1.2 Support

DCE3

RV620, RV635, RS780, RS880

2

2 (RV620, RV635), 1 (RS780, RS880)

1

1

3 (LVDS/TMDS/DP)

Adds support for DisplayPort, HDMI 1.3 Support

DCE3.1

RV770

2

2

1

1

3 (LVDS/TMDS/DP)

DCE3.2

RV710, RV730, RV740

2

2

1

1

5 (LVDS/TMDS/DP)

Adds support for up to 5 digital outputs

DCE4

CEDAR, REDWOOD, JUNIPER, CYPRESS

4-6

2

1

1

6 (LVDS/TMDS/DP)

Adds support for up to 6 independant displays (max of 2 non-DisplayPort displays)

DCE4.1

PALM (Wrestler), SUMO, SUMO2

2

1 (PALM), 0 (SUMO, SUMO2)

1

1

6 (LVDS/TMDS/DP)

On Llano, VGA and LVDS are implemented via DP bridge chips

DCE5

BARTS, TURKS, CAICOS, CAYMAN

4-6

1

0

1

6 (LVDS/TMDS/DP)

Adds improved gamma correction, HDMI 1.4 support, DisplayPort 1.2 support

Where to get the drivers

Where to file defect reports

http://bugs.freedesktop.org using the following values for Product : Component...

Documentation