intel(4)intel(4)NAMEintel - Intel integrated graphics chipsets
DESCRIPTIONintel is an Xorg driver for Intel integrated graphics chipsets. The
driver supports depths 8, 15, 16 and 24. All visual types are sup‐
ported in depth 8. For the i810/i815 other depths support the True‐
Color and DirectColor visuals. For the i830M and later, only the True‐
Color visual is supported for depths greater than 8. The driver sup‐
ports hardware accelerated 3D via the Direct Rendering Infrastructure
(DRI), but only in depth 16 for the i810/i815 and depths 16 and 24 for
the 830M and later.
SUPPORTED HARDWAREintel supports the i810, i810-DC100, i810e, i815, i830M, 845G, 852GM,
855GM, 865G, 915G, 915GM, 945G, 945GM, 965G, 965Q, 946GZ, 965GM,
945GME, G33, Q33, Q35, G35, GM45, G45, Q45, G43, G41 chipsets, and
Pineview-M in Atom N400 series, Pineview-D in Atom D400/D500 series.
Please refer to xorg.conf(5) for general configuration details. This
section only covers configuration details specific to this driver.
The Intel 8xx and 9xx families of integrated graphics chipsets have a
unified memory architecture meaning that system memory is used as video
RAM. For the i810 and i815 family of chipsets, operating system sup‐
port for allocating system memory is required in order to use this
driver. For the 830M and later, this is required in order for the
driver to use more video RAM than has been pre-allocated at boot time
by the BIOS. This is usually achieved with an "agpgart" or "agp" ker‐
nel driver. Linux, FreeBSD, OpenBSD, NetBSD, and Solaris have such
kernel drivers available.
By default, the i810/i815 will use 8 MB of system memory for graphics
if AGP allocable memory is < 128 MB, 16 MB if < 192 MB or 24 MB if
higher. Use the VideoRam option to change the default value.
For the 830M and later, the driver will automatically size its memory
allocation according to the features it will support. Therefore, the
VideoRam option, which in the past had been necessary to allow more
than some small amount of memory to be allocated, is now ignored.
The following driver Options are supported
Option "ColorKey" "integer"
This sets the default pixel value for the YUV video overlay key.
Option "DRI" "boolean"
Disable or enable DRI support.
Default: DRI is enabled for configurations where it is sup‐
The following driver Options are supported for the i810 and i815
Option "CacheLines" "integer"
This allows the user to change the amount of graphics memory
used for 2D acceleration and video when XAA acceleration is
enabled. Decreasing this amount leaves more for 3D textures.
Increasing it can improve 2D performance at the expense of 3D
Default: depends on the resolution, depth, and available video
memory. The driver attempts to allocate space for at 3 screen‐
fuls of pixmaps plus an HD-sized XV video. The default used for
a specific configuration can be found by examining the Xorg log
Option "DDC" "boolean"
Disable or enable DDC support.
Option "Dac6Bit" "boolean"
Enable or disable 6-bits per RGB for 8-bit modes.
Default: 8-bits per RGB for 8-bit modes.
Option "XvMCSurfaces" "integer"
This option enables XvMC. The integer parameter specifies the
number of surfaces to use. Valid values are 6 and 7.
Default: XvMC is disabled.
This option specifies the amount of system memory to use for
graphics, in KB.
The default is 8192 if AGP allocable memory is < 128 MB, 16384
if < 192 MB, 24576 if higher. DRI require at least a value of
16384. Higher values may give better 3D performance, at expense
of available system memory.
Option "NoAccel" "boolean"
Disable or enable acceleration.
Default: acceleration is enabled.
The following driver Options are supported for the 830M and later
Option "NoAccel" "boolean"
Disable or enable acceleration.
Default: acceleration is enabled.
Option "AccelMethod" "string"
Select acceleration method. There are a couple of backends
available for accelerating the DDX. "UXA" (Unified Acceleration
Architecture) is the mature backend that was introduced to sup‐
port the GEM driver model. It is in the process of being super‐
seded by "SNA" (Sandybridge's New Acceleration). Until that
process is complete, the ability to choose which backend to use
remains for backwards compatibility. In addition, there are a
pair of sub-options to limit the acceleration for debugging use.
Specify "off" to disable all acceleration, or "blt" to disable
render acceleration and only use the BLT engine.
Default: use SNA (render acceleration)
Option "TearFree" "boolean"
Disable or enable TearFree updates. This option forces X to per‐
form all rendering to a backbuffer prior to updating the actual
display. It requires an extra memory allocation the same size as
a framebuffer, the occasional extra copy, and requires Damage
tracking. Thus enabling TearFree requires more memory and is
slower (reduced throughput) and introduces a small amount of
output latency, but it should not impact input latency. However,
the update to the screen is then performed synchronously with
the vertical refresh of the display so that the entire update is
completed before the display starts its refresh. That is only
one frame is ever visible, preventing an unsightly tear between
two visible and differing frames. Note that this replicates what
the compositing manager should be doing, so it is not advisable
to enable both. However, some compositing managers do cause
tearing, and if the outputs are rotated, there may will still be
tearing without TearFree enabled.
Default: TearFree is disabled.
Option "ReprobeOutputs" "boolean"
Disable or enable rediscovery of connected displays during
server startup. As the kernel driver loads it scans for con‐
nected displays and configures a console spanning those outputs.
When the X server starts, we then take the list of connected
displays and framebuffer layout and use that for the initial
configuration. Sometimes, not all displays are correctly
detected by the kernel and so it is useful in a few circum‐
stances for X to force the kernel to reprobe all displays when
it starts. To make the X server recheck the status of connected
displays, set the "ReprobeOutputs" option to true. Please do
file a bug for any circumstances which require this workaround.
Default: reprobing is disabled for a faster startup.
Option "VideoKey" "integer"
This is the same as the "ColorKey" option described above. It
is provided for compatibility with most other drivers.
Option "XvPreferOverlay" "boolean"
Make hardware overlay be the first XV adaptor. The overlay
behaves incorrectly in the presence of compositing, but some
prefer it due to it syncing to vblank in the absence of com‐
positing. While most XV-using applications have options to
select which XV adaptor to use, this option can be used to place
the overlay first for applications which don't have options for
Default: Textured video adaptor is preferred.
Option "Backlight" "string"
Override the probed backlight control interface. Sometimes the
automatically selected backlight interface may not correspond to
the correct, or simply most useful, interface available on the
system. This allows you to override that choice by specifying
the entry under /sys/class/backlight to use.
Default: Automatic selection.
Option "FallbackDebug" "boolean"
Enable printing of debugging information on acceleration fall‐
backs to the server log.
Option "DebugFlushBatches" "boolean"
Flush the batch buffer after every single operation.
Option "DebugFlushCaches" "boolean"
Include an MI_FLUSH at the end of every batch buffer to force
data to be flushed out of cache and into memory before the com‐
pletion of the batch.
Option "DebugWait" "boolean"
Wait for the completion of every batch buffer before continuing,
i.e. perform synchronous rendering.
Option "VSync" "boolean"
This option controls the use of commands to synchronise
rendering with the vertical refresh of the display. Some
rendering commands have the option to be performed in a
"tear-free" fashion by stalling the GPU to wait for the
display to be outside of the region to be updated. This
slows down all rendering, and historically has been the
source of many GPU hangs.
Option "PageFlip" "boolean"
This option controls the use of commands to flip the
scanout address on a VBlank. This is used by glXSwap‐
Buffers to efficiently perform the back-to-front exchange
at the end of a frame without incurring the penalty of a
copy, or stalling the render pipeline (the flip is per‐
formed asynchronrously to the render command stream by
the display engine). However, it has historically been
the source of many GPU hangs.
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 syn‐
chronization is performed, meaning tearing will likely
Option "TripleBuffer" "boolean"
This option enables the use of a third buffer for page-
flipping. The third buffer allows applications to run at
vrefresh rates even if they occasionally fail to swap‐
buffers on time. The effect of such missed swaps is the
output jitters between 60fps and 30fps, and in the worst
case appears frame-locked to 30fps. The disadvantage of
triple buffering is that there is an extra frame of
latency, due to the pre-rendered frame sitting in the
swap queue, between input and any display update.
Option "Tiling" "boolean"
This option controls whether memory buffers for Pixmaps
are allocated in tiled mode. In most cases (especially
for complex rendering), tiling dramatically improves per‐
Option "LinearFramebuffer" "boolean"
This option controls whether the memory for the scanout
(also known as the front or frame buffer) is allocated in
linear memory. A tiled framebuffer is required for power
conservation features, but for certain system configura‐
tions you may wish to override this and force a linear
Option "RelaxedFencing" "boolean"
This option controls whether we attempt to allocate the
minimal amount of memory required for the buffers. The
reduction in working set has a substantial improvement on
system performance. However, this has been demonstrate to
be buggy on older hardware (845-865 and 915-945, but ok
on PineView and later) so on those chipsets defaults to
Default: Enabled for G33 (includes PineView), and later,
Option "XvMC" "boolean"
Enable XvMC driver. Current support MPEG2 MC on 915/945
and G33 series. User should provide absolute path to
libIntelXvMC.so in XvMCConfig file.
Option "Throttle" "boolean"
This option controls whether the driver periodically
waits for pending drawing operations to complete. Throt‐
tling ensures that the GPU does not lag too far behind
the CPU and thus noticeable delays in user responsible at
the cost of throughput performance.
Option "HotPlug" "boolean"
This option controls whether the driver automatically
notifies applications when monitors are connected or dis‐
Option "Virtualheads" "integer"
This option controls specifies the number of fake outputs
to create in addition to the normal outputs detected on
your hardware. These outputs cannot be assigned to the
regular displays attached to the GPU, but do otherwise
act as any other xrandr output and share a portion of the
regular framebuffer. One use case for these extra heads
is for extending your desktop onto a discrete GPU using
the Bumblebee project. However, the recommendation here
is to use PRIME instead to create a single Xserver that
can addresses and coordinate between multiple GPUs.
Option "ZaphodHeads" "string"
Specify the randr output(s) to use with zaphod mode for a
particular driver instance. If you this option you must
use it with all instances of the driver
For example: Option "ZaphodHeads" "LVDS1,VGA1" will
assign xrandr outputs LVDS1 and VGA0 to this instance of
On 830M and better chipsets, the driver supports runtime config‐
uration of detected outputs. You can use the xrandr tool to
control outputs on the command line as follows:
xrandr --output output --set property value
Note that you may need to quote property and value arguments
that contain spaces. Each output listed below may have one or
more properties associated with it (like a binary EDID block if
one is found). Some outputs have unique properties which are
described below. See the "MULTIHEAD CONFIGURATIONS" section
below for additional information.
VGA output port (typically exposed via an HD15 connector).
Low Voltage Differential Signalling output (typically a laptop
LCD panel). Available properties:
BACKLIGHT - current backlight level (adjustable)
By adjusting the BACKLIGHT property, the brightness on
the LVDS output can be adjusted. In some cases, this
property may be unavailable (for example if your platform
uses an external microcontroller to control the back‐
scaling mode - control LCD panel scaling mode
When the currently selected display mode differs from the
native panel resolution, various scaling options are
available. These include
Center Simply center the image on-screen without scaling.
This is the only scaling mode that guarantees a
one-to-one correspondence between native and dis‐
played pixels, but some portions of the panel may
be unused (so-called "letterboxing").
Scale the image as much as possible while preserv‐
ing aspect ratio. Pixels may not be displayed one-
to-one (there may be some blurriness). Some por‐
tions of the panel may be unused if the aspect
ratio of the selected mode does not match that of
Full Scale the image to the panel size without regard
to aspect ratio. This is the only mode which guar‐
antees that every pixel of the panel will be used.
But the displayed image may be distorted by
stretching either horizontally or vertically, and
pixels may not be displayed one-to-one (there may
be some blurriness).
The precise names of these options may differ depending on the
kernel video driver, (but the functionality should be similar).
See the output of xrandr --prop for a list of currently avail‐
able scaling modes.
Integrated TV output. Available properties include:
BOTTOM, RIGHT, TOP, LEFT - margins
Adjusting these properties allows you to control the
placement of your TV output buffer on the screen. The
options with the same name can also be set in xorg.conf
with integer value.
BRIGHTNESS - TV brightness, range 0-255
Adjust TV brightness, default value is 128.
CONTRAST - TV contrast, range 0-255
Adjust TV contrast, default value is 1.0 in chipset spe‐
SATURATION - TV saturation, range 0-255
Adjust TV saturation, default value is 1.0 in chipset
HUE - TV hue, range 0-255
Adjust TV hue, default value is 0.
TV_FORMAT - output standard
This property allows you to control the output standard
used on your TV output port. You can select between
NTSC-M, NTSC-443, NTSC-J, PAL-M, PAL-N, and PAL.
TV_Connector - connector type
This config option should be added to xorg.conf TV moni‐
tor's section, it allows you to force the TV output con‐
nector type, which bypass load detect and TV will always
be taken as connected. You can select between S-Video,
Composite and Component.
First DVI SDVO output
Second DVI SDVO output
TMDS-1 , TMDS-2 , HDMI-1 , HDMI-2
DVI/HDMI outputs. Avaliable common properties include:
BROADCAST_RGB - method used to set RGB color range
Adjusting this property allows you to set RGB color range
on each channel in order to match HDTV requirment(default
0 for full range). Setting 1 means RGB color range is
16-235, 0 means RGB color range is 0-255 on each channel.
(Full range is 0-255, not 16-235)
SDVO and DVO TV outputs are not supported by the driver at this
See xorg.conf(5) for information on associating Monitor sections
with these outputs for configuration. Associating Monitor sec‐
tions with each output can be helpful if you need to ignore a
specific output, for example, or statically configure an
extended desktop monitor layout.
The number of independent outputs is dictated by the number of
CRTCs (in X parlance) a given chip supports. Most recent Intel
chips have two CRTCs, meaning that two separate framebuffers can
be displayed simultaneously, in an extended desktop configura‐
tion. If a chip supports more outputs than it has CRTCs (say
local flat panel, VGA and TV in the case of many outputs), two
of the outputs will have to be "cloned", meaning that they dis‐
play the same framebuffer contents (or one displays a subset of
another's framebuffer if the modes aren't equal).
You can use the "xrandr" tool, or various desktop utilities, to
change your output configuration at runtime. To statically con‐
figure your outputs, you can use the "Monitor-<type>" options
along with additional monitor sections in your xorg.conf to cre‐
ate your screen topology. The example below puts the VGA output
to the right of the builtin laptop screen, both running at
Identifier "Laptop FooBar Internal Display"
Option "Position" "0 0"
Identifier "Some Random CRT"
Option "Position" "1024 0"
Option "RightOf" "Laptop FoodBar Internal Display"
Option "monitor-LVDS" "Laptop FooBar Internal Display"
Option "monitor-VGA" "Some Random CRT"
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_SYNC_TO_VBLANK is used to control whether textured adapter
synchronizes the screen update to the vblank to eliminate tear‐
ing. It is a Boolean attribute with values of 0 (never sync) or
1 (always sync). An historic value of -1 (sync for large windows
only) will now be interpreted as 1, (since the current approach
for sync is not costly even with small video windows).
The xf86-video-intel driver is part of the X.Org and Freedesk‐
top.org umbrella projects. Details on bug reporting can be
found at http://www.intellinuxgraph‐
ics.org/how_to_report_bug.html. Mailing lists are also commonly
used to report experiences and ask questions about configuration
and other topics. See lists.freedesktop.org for more informa‐
tion (the email@example.com mailing list is the most
appropriate place to ask X.Org and driver related questions).
SEE ALSOXorg(1), xorg.conf(5), Xserver(1), X(7)AUTHORS
Authors include: Keith Whitwell, and also Jonathan Bian, Matthew
J Sottek, Jeff Hartmann, Mark Vojkovich, Alan Hourihane, H. J.
Lu. 830M and 845G support reworked for XFree86 4.3 by David
Dawes and Keith Whitwell. 852GM, 855GM, and 865G support added
by David Dawes and Keith Whitwell. 915G, 915GM, 945G, 945GM,
965G, 965Q and 946GZ support added by Alan Hourihane and Keith
Whitwell. Lid status support added by Alan Hourihane. Textured
video support for 915G and later chips, RandR 1.2 and hardware
modesetting added by Eric Anholt and Keith Packard. EXA and Ren‐
der acceleration added by Wang Zhenyu. TV out support added by
Zou Nan Hai and Keith Packard. 965GM, G33, Q33, and Q35 support
added by Wang Zhenyu.
X Version 11 xf86-video-intel 2.99.910 intel(4)