RADEON(4) | Kernel Interfaces Manual | RADEON(4)

# NAME

radeon - ATI RADEON video driver

# SYNOPSIS

Section "Device"
Identifier "devname" Driver "radeon"
... EndSection

# DESCRIPTION

radeon is an Xorg driver for ATI RADEON-based video cards with the following features:

•
  Full support for 8-, 15-, 16- and 24-bit pixel depths;

•
  RandR 1.2 and RandR 1.3 support;

•
  TV-out support (only on RV/RS1xx, RV/RS2xx, R/RV/RS3xx. Experimental support on R/RV5xx, R/RV6xx, and R/RV7xx through the ATOMTvOut option); TV-out is not supported on cards that use the Rage Theatre chip for TV-out (R100, R200).

•
  Full EXA 2D acceleration;

•
  Full XAA 2D acceleration (only on R/RV/RS1xx, R/RV/RS2xx, R/RV/RS3xx, R/RV/RS4xx, R/RV5xx, RS6xx. XAA Render acceleration supported only on R/RV100, R/RV/RS2xx and RS3xx);

•
  Textured XVideo acceleration including anti-tearing support (Bicubic filtering only available on R/RV3xx, R/RV/RS4xx, R/RV5xx, and RS6xx/RS740);

•
  Overlay XVideo acceleration (only on R/RV/RS1xx, R/RV/RS2xx, R/RV/RS3xx, R/RV/RS4xx);

•
  3D acceleration;

# SUPPORTED HARDWARE

The radeon driver supports PCI, AGP, and PCIE video cards based on the following ATI chips (note: list is non-exhaustive):

R100
  Radeon 7200

RV100
  Radeon 7000(VE), M6, RN50/ES1000

RS100
  Radeon IGP320(M)

RV200
  Radeon 7500, M7, FireGL 7800

RS200
  Radeon IGP330(M)/IGP340(M)

RS250
  Radeon Mobility 7000 IGP

R200
  Radeon 8500, 9100, FireGL 8800/8700

RV250
  Radeon 9000PRO/9000, M9

RV280
  Radeon 9200PRO/9200/9200SE/9250, M9+

RS300
  Radeon 9100 IGP

RS350
  Radeon 9200 IGP

RS400/RS480
  Radeon XPRESS 200(M)/1100 IGP

R300
  Radeon 9700PRO/9700/9500PRO/9500/9600TX, FireGL X1/Z1

R350
  Radeon 9800PRO/9800SE/9800, FireGL X2

R360
  Radeon 9800XT

RV350
  Radeon 9600PRO/9600SE/9600/9550, M10/M11, FireGL T2

RV360
  Radeon 9600XT

RV370
  Radeon X300, M22

RV380
  Radeon X600, M24

RV410
  Radeon X700, M26 PCIE

R420
  Radeon X800 AGP

R423/R430
  Radeon X800, M28 PCIE

R480/R481
  Radeon X850 PCIE/AGP

RV505/RV515/RV516/RV550
  Radeon X1300/X1400/X1500/X1550/X2300

R520
  Radeon X1800

RV530/RV560
  Radeon X1600/X1650/X1700

RV570/R580
  Radeon X1900/X1950

RS600/RS690/RS740
  Radeon X1200/X1250/X2100

R600
  Radeon HD 2900

RV610/RV630
  Radeon HD 2400/2600/2700/4200/4225/4250

RV620/RV635
  Radeon HD 3410/3430/3450/3470/3650/3670

RV670
  Radeon HD 3690/3850/3870

RS780/RS880
  Radeon HD 3100/3200/3300/4100/4200/4250/4290

RV710/RV730
  Radeon HD 4330/4350/4550/4650/4670/5145/5165/530v/545v/560v/565v

RV740/RV770/RV790
  Radeon HD 4770/4730/4830/4850/4860/4870/4890

CEDAR
  Radeon HD 5430/5450/6330/6350/6370

REDWOOD
  Radeon HD 5550/5570/5650/5670/5730/5750/5770/6530/6550/6570

JUNIPER
  Radeon HD 5750/5770/5830/5850/5870/6750/6770/6830/6850/6870

CYPRESS
  Radeon HD 5830/5850/5870

HEMLOCK
  Radeon HD 5970

PALM
  Radeon HD 6310/6250

SUMO/SUMO2
  Radeon HD 6370/6380/6410/6480/6520/6530/6550/6620

BARTS
  Radeon HD 6790/6850/6870/6950/6970/6990

TURKS
  Radeon HD 6570/6630/6650/6670/6730/6750/6770

CAICOS
  Radeon HD 6430/6450/6470/6490

CAYMAN
  Radeon HD 6950/6970/6990

ARUBA

# CONFIGURATION DETAILS

Please refer to xorg.conf(5) for general configuration details. This section only covers configuration details specific to this driver.

The driver auto-detects all device information necessary to initialize the card. However, if you have problems with auto-detection, you can specify for UMS (Userspace Modesetting):

VideoRam - in kilobytes
MemBase - physical address of the linear framebuffer
IOBase - physical address of the MMIO registers
ChipID - PCI DEVICE ID

In addition, the following driver Options are supported for both UMS (Userspace Modesetting) and KMS (Kernel Modesetting):

Option "SWcursor" "boolean"
  Selects software cursor. The default is off.

Option "NoAccel" "boolean"
  Enables or disables all hardware acceleration.
  The default is to enable hardware acceleration.

Option "ZaphodHeads" "string"
  Specify the RandR output(s) to use with zaphod mode for a particular driver instance. If you use this option you must use this option for all instances of the driver.
  For example: Option "ZaphodHeads" "LVDS,VGA-0" will assign xrandr outputs LVDS and VGA-0 to this instance of the driver.

Option "EXAVSync" "boolean"
  This option attempts to avoid tearing by stalling the engine until the display controller has passed the destination region. It reduces tearing at the cost of performance and has been known to cause instability on some chips. The default is off.

The following driver Options are supported for KMS (Kernel Modesetting):

Option "ColorTiling" "boolean"
  The framebuffer can be addressed either in linear or tiled mode. Tiled mode can provide significant performance benefits with 3D applications. Tiling will be disabled if the drm module is too old or if the current display configuration does not support it. On R600+ this enables 1D tiling mode.
  The default value is on for R/RV3XX, R/RV4XX, R/RV5XX, RS6XX, RS740, R/RV6XX, R/RV7XX, RS780, RS880, EVERGREEN, and CAYMAN and off for R/RV/RS1XX, R/RV/RS2XX, and RS3XX.

Option "ColorTiling2D" "boolean"
  The framebuffer can be addressed either in linear, 1D, or 2D tiled modes. 2D tiled mode can provide significant performance benefits over 1D tiling with 3D applications. Tiling will be disabled if the drm module is too old or if the current display configuration does not support it. KMS ColorTiling2D is only supported on R600 and newer chips.
  The default value is off for R/RV6XX, R/RV7XX, RS780, RS880, EVERGREEN, and CAYMAN.

Option "EXAPixmaps" "boolean"
  Under KMS, to avoid thrashing pixmaps in/out of VRAM on low memory cards, we use a heuristic based on VRAM amount to determine whether to allow EXA to use VRAM for non-essential pixmaps. This option allows us to override the heuristic. The default is on with > 32MB VRAM, off with < 32MB.

Option "SwapbuffersWait" "boolean"
  This option controls the behavior of glXSwapBuffers and glXCopySubBufferMESA calls by GL applications. If enabled, the calls will avoid tearing by making sure the display scanline is outside of the area to be copied before the copy occurs. If disabled, no scanline synchronization is performed, meaning tearing will likely occur. Note that when enabled, this option can adversely affect the framerate of applications that render frames at less than refresh rate.

  The default value is on.

Option "EnablePageFlip" "boolean"
  Enable DRI2 page flipping. The default is on. Pageflipping is supported on all radeon hardware.

The following driver Options are supported for UMS (Userspace Modesetting):

Option "Dac6Bit" "boolean"
  Enables or disables the use of 6 bits per color component when in 8 bpp mode (emulates VGA mode). By default, all 8 bits per color component are used.
  The default is off.

Option "VideoKey" "integer"
  This overrides the default pixel value for the YUV video overlay key.
  The default value is 0x1E.

Option "ScalerWidth" "integer"
  This sets the overlay scaler buffer width. Accepted values range from 1024 to 2048, divisible by 64. Values other than 1536 and 1920 may not make sense. This should be set automatically, but no one knows what the limit is for which chip. If you think quality is not optimal when playing back HD video (with horizontal resolution larger than this setting), increase this value. If you get an empty area at the right (usually pink), decrease it. Note that this only affects the "true" overlay via Xv, and won't affect things like textured video.
  The default value is either 1536 (for most chips) or 1920.

Option "AGPMode" "integer"
  Set AGP data transfer rate. (used only when DRI is enabled)
  1 -- 1x (before AGP v3 only)
  2 -- 2x (before AGP v3 only)
  4 -- 4x
  8 -- 8x (AGP v3 only)
  others -- invalid
  The default is to leave it unchanged.

Option "AGPFastWrite" "boolean"
  Enable AGP fast writes. Enabling this is frequently the cause of instability. Used only when the DRI is enabled. If you enable this option you will get *NO* support from developers.
  The default is off.

Option "BusType" "string"
  Used to replace previous ForcePCIMode option. Should only be used when driver's bus detection is incorrect or you want to force an AGP card to PCI mode. You should NEVER force a PCI card to AGP bus.
  PCI -- PCI bus
  AGP -- AGP bus
  PCIE -- PCI Express bus
  (used only when DRI is enabled)
  The default is auto detect.

Option "DisplayPriority" "string"
  Used to prevent flickering or tearing problem caused by display buffer underflow.
  AUTO -- Driver calculated (default).
  BIOS -- Remain unchanged from BIOS setting.
  Use this if the calculation is not correct
  for your card.
  HIGH -- Force to the highest priority.
  Use this if you have problem with above options.
  This may affect performance slightly.
  The default value is AUTO.

Option "ColorTiling" "boolean"
  The framebuffer can be addressed either in linear or tiled mode. Tiled mode can provide significant performance benefits with 3D applications. For 2D it shouldn't matter much. Tiling will be disabled if the virtual x resolution exceeds 2048 (3968 for R300 and above), or if DRI is enabled and the drm module is too old.
  If this option is enabled, a new DRI driver is required for direct rendering.
  Color tiling will be automatically disabled in interlaced or doublescan screen modes.
  The default value is on.

Option "IgnoreEDID" "boolean"
  Do not use EDID data for mode validation. DDC is still used for monitor detection. This is different from NoDDC option.
  The default value is off.

Option "CustomEDID" "string"
  Forces the X driver to use the EDID data specified in a file rather than the display's EDID. Also overrides DDC monitor detection.
  You may specify a semicolon-separated list of output name and filename pairs with an optional flag, "digital" or "analog", to override the digital bit in the EDID which is used by the driver to determine whether to use the analog or digital encoder associated with a DVI-I port. The output name is the RandR output name, e.g., "VGA-0" or "DVI-0"; consult the Xorg log for the supported output names of any given system.
  The file must contain a raw 128-byte EDID block, as captured by get-edid.
  For example: Option "CustomEDID" "VGA-0:/tmp/edid1.bin; DVI-0:/tmp/edid2.bin:digital" will assign the EDID from the file /tmp/edid1.bin to the output device VGA-0, and the EDID from the file /tmp/edid2.bin to the output device DVI-0 and force the DVI port to use the digital encoder.
  Note that an output name must always be specified, even if only one EDID is specified.
  Caution: Specifying an EDID that doesn't exactly match your display may damage your hardware, as it allows the driver to specify timings beyond the capabilities of your display. Use with care.

Option "PanelSize" "string"
  Should only be used when driver cannot detect the correct panel size. Apply to both desktop (TMDS) and laptop (LVDS) digital panels. When a valid panel size is specified, the timings collected from DDC and BIOS will not be used. If you have a panel with timings different from that of a standard VESA mode, you have to provide this information through the Modeline.
  For example, Option "PanelSize" "1400x1050"
  The default value is none.

Option "EnablePageFlip" "boolean"
  Enable page flipping for 3D acceleration. This will increase performance but not work correctly in some rare cases, hence the default is off. It is currently only supported on R/RV/RS4xx and older hardware.

Option "ForceMinDotClock" "frequency"
  Override minimum dot clock. Some Radeon BIOSes report a minimum dot clock unsuitable (too high) for use with television sets even when they actually can produce lower dot clocks. If this is the case you can override the value here. Note that using this option may damage your hardware. You have been warned. The frequency parameter may be specified as a float value with standard suffixes like "k", "kHz", "M", "MHz".

Option "RenderAccel" "boolean"
  Enables or disables hardware Render acceleration. It is supported on all Radeon cards when using EXA acceleration and on Radeon R/RV/RS1xx, R/RV/RS2xx and RS3xx when using XAA. The default is to enable Render acceleration.

Option "AccelMethod" "string"
  Chooses between available acceleration architectures. Valid options are XAA and EXA. XAA is the traditional acceleration architecture and support for it is very stable. EXA is a newer acceleration architecture with better performance for the Render and Composite extensions. The default is EXA.

Option "AccelDFS" "boolean"
  Use or don't use accelerated EXA DownloadFromScreen hook when possible (only when Direct Rendering is enabled, e.g.). Default: off with AGP due to issues with GPU->host transfers with some AGP bridges, on otherwise.

Option "FBTexPercent" "integer"
  Amount of video RAM to reserve for OpenGL textures, in percent. With EXA, the remainder of video RAM is reserved for EXA offscreen management. Specifying 0 results in all offscreen video RAM being reserved for EXA and only GART memory being available for OpenGL textures. This may improve EXA performance, but beware that it may cause problems with OpenGL drivers from Mesa versions older than 6.4. With XAA, specifying lower percentage than what gets reserved without this option has no effect, but the driver tries to increase the video RAM reserved for textures to the amount specified roughly. Default: 50.

Option "DepthBits" "integer"
  Precision in bits per pixel of the shared depth buffer used for 3D acceleration. Valid values are 16 and 24. When this is 24, there will also be a hardware accelerated stencil buffer, but the combined depth/stencil buffer will take up twice as much video RAM as when it's 16. Default: The same as the screen depth.

Option "DMAForXv" "boolean"
  Try or don't try to use DMA for Xv image transfers. This will reduce CPU usage when playing big videos like DVDs, but may cause instabilities. Default: on.

Option "SubPixelOrder" "string"
  Force subpixel order to specified order. Subpixel order is used for subpixel decimation on flat panels.
  NONE -- No subpixel (CRT like displays)
  RGB -- in horizontal RGB order (most flat panels)
  BGR -- in horizontal BGR order (some flat panels)
  This option is intended to be used in following cases:
  1. The default subpixel order is incorrect for your panel.
  2. Enable subpixel decimation on analog panels.
  3. Adjust to one display type in dual-head clone mode setup.
  4. Get better performance with Render acceleration on digital panels (use NONE setting).
  The default is NONE for CRT, RGB for digital panels

Option "ClockGating" "boolean"
  Enable dynamic clock gating. This can help reduce heat and increase battery life by reducing power usage. Some users report reduced 3D performance with this enabled. The default is off.

Option "ForceLowPowerMode" "boolean"
  Enable a static low power mode. This can help reduce heat and increase battery life by reducing power usage at the expense of performance. The default is off.

Option "DynamicPM" "boolean"
  Enable dynamic power mode switching. This can help reduce heat and increase battery life by reducing power usage when the system is idle (DPMS active). The default is off.

Option "VGAAccess" "boolean"
  Tell the driver if it can do legacy VGA IOs to the card. This is necessary for properly resuming consoles when in VGA text mode, but shouldn't be if the console is using radeonfb or some other graphic mode driver. Some platforms like PowerPC have issues with those, and they aren't necessary unless you have a real text mode in console. The default is off on PowerPC and SPARC and on on other architectures.

Option "ReverseDDC" "boolean"
  When BIOS connector information isn't available, use this option to reverse the mapping of the two main DDC ports. Use this if the X server obviously detects the wrong display for each connector. This is typically needed on the Radeon 9600 cards bundled with Apple G5s. The default is off.

Option "LVDSProbePLL" "boolean"
  When BIOS panel information isn't available (like on PowerBooks), it may still be necessary to use the firmware-provided PLL values for the panel or flickering will happen. This option will force probing of the current value programmed in the chip when X is launched in that case. This is only useful for LVDS panels (laptop internal panels). The default is on.

Option "TVDACLoadDetect" "boolean"
  Enable load detection on the TV DAC. The TV DAC is used to drive both TV-out and analog monitors. Load detection is often unreliable in the TV DAC so it is disabled by default. The default is off.

Option "DefaultTMDSPLL" "boolean"
  Use the default driver provided TMDS PLL values rather than the ones provided by the BIOS. This option has no effect on Mac cards. Enable this option if you are having problems with a DVI monitor using the internal TMDS controller. The default is off.

Option "DefaultTVDACAdj" "boolean"
  Use the default driver provided TVDAC Adj values rather than the ones provided by the BIOS. This option has no effect on Mac cards. Enable this option if you are having problems with a washed out display on the secondary DAC. The default is off.

Option "DRI" "boolean"
  Enable DRI support. This option allows you to enable to disable the DRI. The default is off for RN50/ES1000 and on for others.

Option "DefaultConnectorTable" "boolean"
  Enable this option to skip the BIOS connector table parsing and use the driver defaults for each chip. The default is off

Option "MacModel" "string"
  Used to specify Mac models for connector tables and quirks. If you have a PowerBook or Mini with DVI that does not work properly, try the alternate options as Apple does not seem to provide a good way of knowing whether they use internal or external TMDS for DVI. Only valid on PowerPC. On Linux, the driver will attempt to detect the MacModel automatically.
  ibook -- ibooks
  powerbook-external -- Powerbooks with external DVI
  powerbook-internal -- Powerbooks with integrated DVI
  powerbook-vga -- Powerbooks with VGA rather than DVI
  mini-external -- Mac Mini with external DVI
  mini-internal -- Mac Mini with integrated DVI
  imac-g5-isight -- iMac G5 iSight
  emac -- eMac G4
  sam440ep -- SAM440ep embedded board
  The default value is undefined.

Option "TVStandard" "string"
  Used to specify the default TV standard if you want to use something other than the BIOS default. Valid options are:
  ntsc
  pal
  pal-m
  pal-60
  ntsc-j
  scart-pal
  The default value is undefined.

Option "ForceTVOut" "boolean"
  Enable this option to force TV-out to always be detected as attached. The default is off

Option "IgnoreLidStatus" "boolean"
  Enable this option to ignore lid status on laptops and always detect LVDS as attached. The default is on.

Option "Int10" "boolean"
  This option allows you to disable INT10 initialization. Set this to False if you are experiencing a hang when initializing a secondary card. The default is on.

Option "ATOMTvOut" "boolean"
  This option enables experimental TV-out support for R/RV5xx, R/RV6xx, and R/RV7xx AtomBIOS chips. TV-out is experimental and may not function on these chips as well as hoped for. The default is off.

Option "R4xxATOM" "boolean"
  This option enables modesetting on R/RV4xx chips using AtomBIOS. The default is off.

# TEXTURED VIDEO ATTRIBUTES

The driver supports the following X11 Xv attributes for Textured Video. You can use the "xvattr" tool to query/set those attributes at runtime.

XV_VSYNC
  XV_VSYNC is used to control whether textured adapter synchronizes the screen update to the monitor vertical refresh to eliminate tearing. It has two values: 'off'(0) and 'on'(1). The default is 'on'(1).

XV_CRTC
  XV_CRTC is used to control which display controller (crtc) the textured adapter synchronizes the screen update with when XV_VSYNC is enabled. The default, 'auto'(-1), will sync to the display controller that more of the video is on; when this is ambiguous, the display controller associated with the RandR primary output is preferred. This attribute is useful for things like clone mode where the user can best decide which display should be synced. The default is 'auto'(-1).

XV_BICUBIC
  XV_BICUBIC is used to control whether textured adapter should apply a bicubic filter to smooth the output. It has three values: 'off'(0), 'on'(1) and 'auto'(2). 'off' means never apply the filter, 'on' means always apply the filter and 'auto' means apply the filter only if the X and Y sizes are scaled to more than double to avoid blurred output. Bicubic filtering is not currently compatible with other Xv attributes like hue, contrast, and brightness, and must be disabled to use those attributes. The default is 'off'(0).

# SEE ALSO

Xorg(1), xorg.conf(5), Xserver(1), X(7)

1.
  Wiki page:

http://www.x.org/wiki/radeon

2.
  Overview about radeon development code:

http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/

3.
  Mailing list:

http://lists.x.org/mailman/listinfo/xorg-driver-ati

4.
  IRC channel:

#radeon on irc.freenode.net

5.
  Query the bugtracker for radeon bugs:

https://bugs.freedesktop.org/query.cgi?product=xorg&component=Driver/Radeon

6.
  Submit bugs & patches:

https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/Radeon

# AUTHORS

Authors include:
Rickard E. (Rik) Faith faith@precisioninsight.com
Kevin E. Martin kem@freedesktop.org
Alan Hourihane alanh@fairlite.demon.co.uk
Marc Aurele La France tsi@xfree86.org
Benjamin Herrenschmidt benh@kernel.crashing.org
Michel Dänzer michel@daenzer.net
Alex Deucher alexdeucher@gmail.com
Bogdan D. bogdand@users.sourceforge.net
Eric Anholt eric@anholt.net

X Version 11 |