Table of Contents
radeon - ATI RADEON video driver
Section "Device"
Identifier "devname"
Driver "radeon"
...
EndSection
radeon is an XFree86 driver for ATI RADEON based video cards.
It contains full support for 8, 15, 16 and 24 bit pixel depths, dual-head
setup, flat panel, hardware 2D acceleration, hardware 3D acceleration (experimental
on R300 and R400 series cards), hardware cursor, XV extension, and the
Xinerama extension.
The radeon driver supports PCI and
AGP video cards based on the following ATI chips
- R100
- Radeon 7200
- RV100
- Radeon 7000(VE), M6
- 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
- RS300
- Radeon 9100 IGP
- RS350
- Radeon 9200 IGP
- RS400
- Radeon XPRESS 200/200M IGP
- RV280
- Radeon 9200PRO/9200/9200SE, M9+
- R300
- Radeon 9700PRO/9700/9500PRO/9500/9600TX,
FireGL X1/Z1 (2D only)
- R350
- Radeon 9800PRO/9800SE/9800, FireGL X2 (2D only)
- R360
- Radeon 9800XT (2d only)
- RV350
- Radeon 9600PRO/9600SE/9600, M10/M11,
FireGL T2 (2D only)
- RV360
- Radeon 9600XT (2d only)
- RV370
- Radeon X300, M22
(2d only)
- RV380
- Radeon X600, M24 (2d only)
- RV410
- Radeon X700, M26 PCIE
(2d only)
- R420
- Radeon X800 AGP (2d only)
- R423/R430
- Radeon X800, M28 PCIE
(2d only)
- R480/R481
- Radeon X850 PCIE/AGP (2d only)
Please
refer to XF86Config(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:
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:
- 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 "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 "UseFBDev" "boolean"
- Enable or disable
use of an OS-specific framebuffer device interface (which is not supported
on all OSs). MergedFB does not work when this option is in use. See fbdevhw(4)
for further information.
The default is off.
- Option "AGPMode" "integer"
- Set AGP data transfer rate.
(used only when DRI is enabled)
1 -- x1 (default)
2 -- x2
4 -- x4
8 -- x8
others -- invalid
- Option "AGPFastWrite" "boolean"
- Enable AGP fast write.
Enabling this option is frequently the cause of instability. Used only when
the DRI is enabled.
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 a AGP card to PCI mode. Should NEVER force a PCI card to AGP
bus.
PCI -- PCI bus
AGP -- AGP bus
PCIE -- PCI Express (falls back to PCI at present)
(used only when DRI is enabled)
The default is auto detect.
- Option "DDCMode" "boolean"
- Force to use the
modes queried from the connected monitor.
The default is off.
- 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 might affect performance slightly.
The default value is AUTO.
- Option "MonitorLayout" "string"
This option is used to overwrite the detected monitor types. This is only
required when driver makes a false detection. The possible monitor types
are:
NONE -- Not connected
CRT -- Analog CRT monitor
TMDS -- Desktop flat panel
LVDS -- Laptop flat panel
This option can be used in following format:
Option "MonitorLayout" "[type on primary], [type on secondary]"
For example, Option "MonitorLayout" "CRT, TMDS"
Primary/Secondary head
for dual-head cards:
(when only one port is used, it will be treated as the primary regardless)
Primary head:
DVI port on DVI+VGA cards
LCD output on laptops
Internal TMDS port on DVI+DVI cards
Secondary head:
VGA port on DVI+VGA cards
VGA port on laptops
External TMDS port on DVI+DVI cards
The default value is undefined.
- Option
"MergedFB" "boolean"
- This enables merged framebuffer mode. In this mode
you have a single shared framebuffer with two viewports looking into it.
It is similar to Xinerama, but has some advantages. It is faster than
Xinerama, the DRI works on both heads, and it supports clone modes.
Merged framebuffer mode provides two linked viewports looking into a single
large shared framebuffer. The size of the framebuffer is determined by
the Virtual keyword defined on the Screen section of your XF86Config file.
It works just like regular virtual desktop except you have two viewports
looking into it instead of one.
For example, if you wanted a desktop composed of two 1024x768 viewports
looking into a single desktop you would create a virtual desktop of 2048x768
(left/right) or 1024x1536 (above/below), e.g.,
Virtual 2048 768 or Virtual 1024 1536
The virtual desktop can be larger than the size of the viewports looking
into it. In this case the linked viewports will scroll around in the virtual
desktop. Viewports with different sizes are also supported (e.g., one that
is 1024x768 and one that is 640x480). In this case the smaller viewport
will scroll relative to the larger one such that none of the virtual desktop
is inaccessible. If you do not define a virtual desktop the driver will
create one based on the orientation of the heads and size of the largest
defined mode in the display section that is supported on each head.
The relation of the viewports in specified by the CRT2Position Option.
The options are Clone , LeftOf , RightOf , Above , and Below. MergedFB
is enabled by default if a monitor is detected on each output. If no position
is given it defaults to clone mode (the old clone options are now deprecated,
also, the option OverlayOnCRTC2 has been replaced by the Xv attribute
XV_SWITCHCRT; the overlay can be switched to CRT1 or CRT2 on the fly in
clone mode).
The maximum framebuffer size that the 2D acceleration engine can handle
is 8192x8192. The maximum framebuffer size that the 3D engine can handle
is 2048x2048.
Note: Page flipping does not work well in certain configurations with MergedFB.
If you see rendering errors or other strange behavior, disable page flipping.
Also MergedFB is not compatible with the UseFBDev option.
The default value is undefined.
- Option "CRT2HSync" "string"
- Set the horizontal
sync range for the secondary monitor. It is not required if a DDC-capable
monitor is connected.
For example, Option "CRT2HSync" "30.0-86.0"
The default value is undefined.
- Option "CRT2VRefresh" "string"
- Set the vertical
refresh range for the secondary monitor. It is not required if a DDC-capable
monitor is connected.
For example, Option "CRT2VRefresh" "50.0-120.0"
The default value is undefined.
- Option "CRT2Position" "string"
- Set the relationship
of CRT2 relative to CRT1. Valid options are: Clone , LeftOf , RightOf ,
Above , and Below
For example, Option "CRT2Position" "RightOf"
This option also supports an offset. This is most useful when MergedNonRectangular
is enabled. For example if you want CRT2 to be offset 100 pixels down
from the start of CRT1, you'd type:
Option "CRT2Position" "LeftOf 100"
The offset is vertical for LeftOf and RightOf and horizontal for Above
and Below. Offsets can be positive or negative.
The default value is Clone.
- Option "MetaModes" "string"
- MetaModes are mode
combinations for CRT1 and CRT2. If you are using merged frame buffer mode
and want to change modes (CTRL-ALT-+/-), these define which modes will be
switched to on CRT1 and CRT2. The MetaModes are defined as CRT1Mode-CRT2Mode
(800x600-1024x768). Modes listed individually (800x600) define clone modes,
that way you can mix clone modes with non-clone modes. Also some programs
require "standard" modes. If you want to add clone modes of different
refreshes or sizes to the mix, they are defined as CRT1Mode+CRT2Mode (800x600+1024x768).
Note: Any mode you use in the MetaModes must be defined in the Screen
section of your XF86Config file. Modes not defined there will be ignored
when the MetaModes are parsed since the driver uses them to make sure the
monitors can handle those modes. If you do not define a MetaMode the driver
will create one based on the orientation of the heads and size of the largest
defined mode in the display section that is supported on each head.
Modes "1024x768" "800x600" "640x480"
For example, Option "MetaModes" "1024x768-1024x768 800x600-1024x768 640x480-800x600
800x600"
The default value is undefined.
- Option "MergedXinerama" "boolean"
- Since
merged framebuffer mode does not use Xinerama, apps are not able to intelligently
place windows. Merged framebuffer mode provides its own pseudo-Xinerama.
This allows Xinerama compliant applications to place windows appropriately.
There are some caveats. Since merged framebuffer mode is able to change
relative screen sizes and orientations on the fly, as well has having overlapping
viewports, pseudo-Xinerama, might not always provide the right hints. Also
many Xinerama compliant applications only query Xinerama once at startup;
if the information changes, they might not be aware of the change. If you
are already using Xinerama (e.g., a single head card and a dualhead card
providing three heads), pseudo-Xinerama will be disabled.
This option allows you turn off the driver provided pseudo-Xinerama extension.
The default value is TRUE.
- Option "MergedXineramaCRT2IsScreen0" "boolean"
- By default the pseudo-Xinerama provided by the driver makes the left-most
or bottom head Xinerama screen 0. Certain Xinerama-aware applications do
special things with screen 0. To change that behavior, use this option.
The default value is undefined.
- Option "MergedDPI" "string"
- The driver will
attempt to figure out an appropriate DPI based on the DDC information and
the orientation of the heads when in merged framebuffer mode. If this value
does not suit you, you can manually set the DPI using this option.
For example, Option "MergedDPI" "100 100"
The default value is undefined.
- Option "MergedNonRectangular" "boolean"
- If you are using MergedFB with two modes of different sizes, turn this
option on to keep the smaller head from scrolling within the larger virtual
desktop and to keep the mouse from moving into that area. Applications
that are not Xinerama aware can potentially end up stranded in this area.
The default value is FALSE.
- Option "ColorTiling" "boolean"
- Frame buffer
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), if option UseFBDev is used, or (if DRI
is enabled) the drm module is too old.
If this option is enabled, a new dri driver is required for direct rendering
too.
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, but DDC is still used for monitor detection. This is
different from NoDDC option.
The default value is off.
- 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 "PanelOff" "boolean"
- Disable panel output.
The default value is off.
- 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.
- 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 might 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 "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 might 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 "DynamicClocks"
"boolean"
- Enable dynamic clock scaling. The on-chip clocks will scale dynamically
based on usage. 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 "BIOSHotkeys" "boolean"
- Enable BIOS
hotkey output switching. This allows the BIOS to toggle outputs using hotkeys
(e.g., fn-f7, etc.). Since the driver does not support ACPI, there is no way
to validate modes on an output switch and the BIOS can potentially change
things behind the driver's back. The default is off.
- Option "ReverseDDC"
"boolean"
- When BIOS connector informations aren't available, use this option
to reverse the mapping of the 2 main DDC ports. Use this if the X serve
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 informations aren't available
(like on PowerBooks), it might 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.
XFree86(1)
, XF86Config(5)
, xf86config(1)
, Xserver(1)
,
X(7)
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@tungstengraphics.com
Alex Deucher alexdeucher@gmail.com
Bogdan D. bogdand@users.sourceforge.net
Eric Anholt eric@anholt.net