1intel(4)                   Kernel Interfaces Manual                   intel(4)
2
3
4

NAME

6       intel - Intel integrated graphics chipsets
7

SYNOPSIS

9       Section "Device"
10         Identifier "devname"
11         Driver "intel"
12         ...
13       EndSection
14

DESCRIPTION

16       intel  is  an  Xorg driver for Intel integrated graphics chipsets.  The
17       driver supports depths 8, 15, 16 and 24.  All  visual  types  are  sup‐
18       ported  in  depth  8.  For the i810/i815 other depths support the True‐
19       Color and DirectColor visuals.  For the i830M and later, only the True‐
20       Color  visual  is supported for depths greater than 8.  The driver sup‐
21       ports hardware accelerated 3D via the Direct  Rendering  Infrastructure
22       (DRI),  but only in depth 16 for the i810/i815 and depths 16 and 24 for
23       the 830M and later.
24

SUPPORTED HARDWARE

26       intel supports the i810, i810-DC100, i810e, i815, i830M,  845G,  852GM,
27       855GM,  865G,  915G,  915GM,  945G,  945GM,  965G,  965Q, 946GZ, 965GM,
28       945GME, G33,  Q33,  Q35,  G35,  GM45,  G45,  Q45,  G43,  G41  chipsets,
29       Pineview-M  in  Atom  N400 series, Pineview-D in Atom D400/D500 series,
30       Intel(R) HD Graphics, Intel(R) Iris(TM) Graphics, Intel(R) Iris(TM) Pro
31       Graphics.
32
33

CONFIGURATION DETAILS

35       Please  refer  to xorg.conf(5) for general configuration details.  This
36       section only covers configuration details specific to this driver.
37
38       The Intel 8xx and 9xx families of integrated graphics chipsets  have  a
39       unified memory architecture meaning that system memory is used as video
40       RAM.  For the i810 and i815 family of chipsets, operating  system  sup‐
41       port  for  allocating  system  memory  is required in order to use this
42       driver.  For the 830M and later, this is  required  in  order  for  the
43       driver  to  use more video RAM than has been pre-allocated at boot time
44       by the BIOS.  This is usually achieved with an "agpgart" or "agp"  ker‐
45       nel  driver.   Linux,  FreeBSD,  OpenBSD, NetBSD, and Solaris have such
46       kernel drivers available.
47
48       By default, the i810/i815 will use 8 MB of system memory  for  graphics
49       if  AGP  allocable  memory  is  < 128 MB, 16 MB if < 192 MB or 24 MB if
50       higher. Use the VideoRam option to change the default value.
51
52       For the 830M and later, the driver will automatically size  its  memory
53       allocation  according  to the features it will support.  Therefore, the
54       VideoRam option, which in the past had been  necessary  to  allow  more
55       than some small amount of memory to be allocated, is now ignored.
56
57       The following driver Options are supported
58
59       Option "ColorKey" "integer"
60              This sets the default pixel value for the YUV video overlay key.
61
62              Default: undefined.
63
64       Option "DRI" "string"
65              Disable  or enable DRI support. A driver name to use can be pro‐
66              vided instead of simple boolean value, which will be  passed  to
67              the  GL  implementation  for it to load the appropriate backend.
68              Alternatively the maximum level of DRI to enable (e.g. "1",  "2"
69              or "3") can be specified.
70
71              Default:  All levels of DRI are enabled for configurations where
72              it is supported.
73
74
75       The following driver Options  are  supported  for  the  i810  and  i815
76       chipsets:
77
78       Option "CacheLines" "integer"
79              This  allows  the  user  to change the amount of graphics memory
80              used for 2D acceleration and  video  when  XAA  acceleration  is
81              enabled.   Decreasing  this  amount leaves more for 3D textures.
82              Increasing it can improve 2D performance at the  expense  of  3D
83              performance.
84
85              Default:  depends  on the resolution, depth, and available video
86              memory.  The driver attempts to allocate space for at 3  screen‐
87              fuls of pixmaps plus an HD-sized XV video.  The default used for
88              a specific configuration can be found by examining the Xorg  log
89              file.
90
91       Option "DDC" "boolean"
92              Disable or enable DDC support.
93
94              Default: enabled.
95
96       Option "Dac6Bit" "boolean"
97              Enable or disable 6-bits per RGB for 8-bit modes.
98
99              Default: 8-bits per RGB for 8-bit modes.
100
101       Option "XvMCSurfaces" "integer"
102              This  option  enables XvMC.  The integer parameter specifies the
103              number of surfaces to use.  Valid values are 6 and 7.
104
105              Default: XvMC is disabled.
106
107       VideoRam integer
108              This option specifies the amount of system  memory  to  use  for
109              graphics, in KB.
110
111              The  default  is 8192 if AGP allocable memory is < 128 MB, 16384
112              if < 192 MB, 24576 if higher. DRI require at least  a  value  of
113              16384.  Higher values may give better 3D performance, at expense
114              of available system memory.
115
116       Option "Accel" "boolean"
117              Enable or disable acceleration.
118
119              Default: acceleration is enabled.
120
121
122       The following driver Options are  supported  for  the  830M  and  later
123       chipsets:
124
125       Option "Accel" "boolean"
126              Enable or disable acceleration.
127
128              Default: acceleration is enabled.
129
130       Option "Present" "boolean"
131              Enable use of hardware counters and flow control for the Present
132              extension.
133
134              Default: Enabled
135
136       Option "AccelMethod" "string"
137              Select acceleration method.  There  are  a  couple  of  backends
138              available  for accelerating the DDX. "UXA" (Unified Acceleration
139              Architecture) is the mature backend that was introduced to  sup‐
140              port  the GEM driver model. It is in the process of being super‐
141              seded by "SNA"  (Sandybridge's  New  Acceleration).  Until  that
142              process  is complete, the ability to choose which backend to use
143              remains for backwards compatibility.  In addition, there  are  a
144              pair of sub-options to limit the acceleration for debugging use.
145              Specify "off" or "none" to disable all acceleration, or "blt" to
146              disable render acceleration and only use the BLT engine.
147
148              Default: use SNA (render acceleration)
149
150       Option "TearFree" "boolean"
151              Disable or enable TearFree updates. This option forces X to per‐
152              form all rendering to a backbuffer prior to updating the  actual
153              display. It requires an extra memory allocation the same size as
154              a framebuffer, the occasional extra copy,  and  requires  Damage
155              tracking.  Thus  enabling  TearFree  requires more memory and is
156              slower (reduced throughput) and introduces  a  small  amount  of
157              output latency, but it should not impact input latency. However,
158              the update to the screen is then  performed  synchronously  with
159              the vertical refresh of the display so that the entire update is
160              completed before the display starts its refresh.  That  is  only
161              one  frame is ever visible, preventing an unsightly tear between
162              two visible and differing frames. Note that this replicates what
163              the  compositing  manager should be doing, however TearFree will
164              redirect the compositor updates (and those of fullscreen  games)
165              directly on to the scanout thus incurring no additional overhead
166              in the composited case. Also note that not all compositing  man‐
167              agers  prevent  tearing,  and  if the outputs are rotated, there
168              will still be tearing without TearFree enabled.
169
170              Default: TearFree is disabled.
171
172       Option "ReprobeOutputs" "boolean"
173              Disable or  enable  rediscovery  of  connected  displays  during
174              server  startup.   As  the kernel driver loads it scans for con‐
175              nected displays and configures a console spanning those outputs.
176              When  the  X  server  starts, we then take the list of connected
177              displays and framebuffer layout and use  that  for  the  initial
178              configuration.   Sometimes,   not  all  displays  are  correctly
179              detected by the kernel and so it is  useful  in  a  few  circum‐
180              stances  for  X to force the kernel to reprobe all displays when
181              it starts. To make the X server recheck the status of  connected
182              displays,  set  the  "ReprobeOutputs" option to true.  Please do
183              file a bug for any circumstances which require this workaround.
184
185              Default: reprobing is disabled for a faster startup.
186
187       Option "VideoKey" "integer"
188              This is the same as the "ColorKey" option described  above.   It
189              is provided for compatibility with most other drivers.
190
191       Option "XvPreferOverlay" "boolean"
192              Make  hardware  overlay  be  the  first XV adaptor.  The overlay
193              behaves incorrectly in the presence  of  compositing,  but  some
194              prefer  it  due  to  it syncing to vblank in the absence of com‐
195              positing.  While most  XV-using  applications  have  options  to
196              select which XV adaptor to use, this option can be used to place
197              the overlay first for applications which don't have options  for
198              selecting adaptors.
199
200              Default: Textured video adaptor is preferred.
201
202       Option "Backlight" "string"
203              Override  the  probed backlight control interface. Sometimes the
204              automatically selected backlight interface may not correspond to
205              the  correct,  or simply most useful, interface available on the
206              system. This allows you to override that  choice  by  specifying
207              the entry under /sys/class/backlight to use.
208
209              Default: Automatic selection.
210
211       Option "CustomEDID" "string"
212              Override  the  probed  EDID on particular outputs. Sometimes the
213              manufacturer supplied EDID is corrupt or lacking  a  few  usable
214              modes and supplying a corrected EDID may be easier than specify‐
215              ing every modeline. This option allows to pass the path to  load
216              an  EDID from per output. The format is a comma separated string
217              of             output:path              pairs,              e.g.
218              DP1:/path/to/dp1.edid,DP2:/path/to/dp2.edid
219
220              Default: No override, use manufacturer supplied EDIDs.
221
222       Option "FallbackDebug" "boolean"
223              Enable  printing  of debugging information on acceleration fall‐
224              backs to the server log.
225
226              Default: Disabled
227
228       Option "DebugFlushBatches" "boolean"
229              Flush the batch buffer after every single operation.
230
231              Default: Disabled
232
233       Option "DebugFlushCaches" "boolean"
234              Include an MI_FLUSH at the end of every batch  buffer  to  force
235              data  to be flushed out of cache and into memory before the com‐
236              pletion of the batch.
237
238              Default: Disabled
239
240       Option "DebugWait" "boolean"
241              Wait for the completion of every batch buffer before continuing,
242              i.e. perform synchronous rendering.
243
244              Default: Disabled
245
246       Option "HWRotation" "boolean"
247              Override  the  use of native hardware rotation and force the use
248              of software, but GPU accelerated where  possible,  rotation.  On
249              some  platforms the hardware can scanout directly into a rotated
250              output bypassing the intermediate rendering  and  extra  alloca‐
251              tions  required  for  software implemented rotation (i.e. native
252              rotation uses less resources, is quicker and uses  less  power).
253              This  allows  you  to  disable  the  native  rotation in case of
254              errors.
255
256              Default: Enabled (use hardware rotation)
257
258       Option "VSync" "boolean"
259              This option controls the use of commands to synchronise  render‐
260              ing  with  the  vertical  refresh of the display. Some rendering
261              commands have the option to be performed in a "tear-free"  fash‐
262              ion by stalling the GPU to wait for the display to be outside of
263              the region to be updated. This slows  down  all  rendering,  and
264              historically has been the source of many GPU hangs.
265
266              Default: enabled.
267
268       Option "PageFlip" "boolean"
269              This  option  controls  the  use of commands to flip the scanout
270              address on a VBlank. This is used  by  glXSwapBuffers  to  effi‐
271              ciently perform the back-to-front exchange at the end of a frame
272              without incurring the penalty of a copy, or stalling the  render
273              pipeline  (the  flip  is performed asynchronrously to the render
274              command stream by the display engine). However, it has  histori‐
275              cally been the source of many GPU hangs.
276
277              Default: enabled.
278
279       Option "SwapbuffersWait" "boolean"
280              This option controls the behavior of glXSwapBuffers and glXCopy‐
281              SubBufferMESA calls by GL applications.  If enabled,  the  calls
282              will  avoid  tearing by making sure the display scanline is out‐
283              side of the area to be copied before the copy occurs.   If  dis‐
284              abled, no scanline synchronization is performed, meaning tearing
285              will likely occur.
286
287              Default: enabled.
288
289       Option "TripleBuffer" "boolean"
290              This option enables the use of a third buffer for page-flipping.
291              The  third  buffer  allows applications to run at vrefresh rates
292              even if they occasionally  fail  to  swapbuffers  on  time.  The
293              effect  of such missed swaps is the output jitters between 60fps
294              and 30fps, and in the worst case appears frame-locked to  30fps.
295              The  disadvantage  of triple buffering is that there is an extra
296              frame of latency, due to the pre-rendered frame sitting  in  the
297              swap queue, between input and any display update.
298
299              Default: enabled.
300
301       Option "Tiling" "boolean"
302              This  option  controls  whether  memory  buffers for Pixmaps are
303              allocated in tiled mode.  In most cases (especially for  complex
304              rendering), tiling dramatically improves performance.
305
306              Default: enabled.
307
308       Option "LinearFramebuffer" "boolean"
309              This  option  controls  whether the memory for the scanout (also
310              known as the front or frame buffer) is allocated in linear  mem‐
311              ory. A tiled framebuffer is required for power conservation fea‐
312              tures, but for certain system configurations  you  may  wish  to
313              override this and force a linear layout.
314
315              Default: disabled
316
317       Option "RelaxedFencing" "boolean"
318              This  option controls whether we attempt to allocate the minimal
319              amount of memory required for  the  buffers.  The  reduction  in
320              working set has a substantial improvement on system performance.
321              However, this has been demonstrate to be buggy on older hardware
322              (845-865  and 915-945, but ok on PineView and later) so on those
323              chipsets defaults to off.
324
325              Default: Enabled for G33 (includes PineView), and  later,  class
326              machines.
327
328       Option "XvMC" "boolean"
329              Enable  XvMC driver. Current support MPEG2 MC on 915/945 and G33
330              series.  User should provide absolute path to libIntelXvMC.so in
331              XvMCConfig file.
332
333              Default: Disabled.
334
335       Option "Throttle" "boolean"
336              This  option  controls whether the driver periodically waits for
337              pending drawing operations to complete. Throttling ensures  that
338              the  GPU does not lag too far behind the CPU and thus noticeable
339              delays in user responsible at the  cost  of  throughput  perfor‐
340              mance.
341
342              Default: enabled.
343
344       Option "HotPlug" "boolean"
345              This  option  controls whether the driver automatically notifies
346              applications when monitors are connected or disconnected.
347
348              Default: enabled.
349
350       Option "Virtualheads" "integer"
351              This option controls specifies the number  of  fake  outputs  to
352              create  in addition to the normal outputs detected on your hard‐
353              ware. These outputs cannot be assigned to the  regular  displays
354              attached  to  the  GPU, but do otherwise act as any other xrandr
355              output and share a portion of the regular framebuffer.  One  use
356              case  for these extra heads is for extending your desktop onto a
357              discrete GPU using the Bumblebee project. However, the recommen‐
358              dation  here  is to use PRIME instead to create a single Xserver
359              that can addresses and coordinate between multiple GPUs.
360
361              Default: 0
362
363       Option "ZaphodHeads" "string"
364
365              Specify the randr output(s) to use with zaphod mode for  a  par‐
366              ticular driver instance.  If you set this option you must use it
367              with all instances of the  driver.  By  default,  each  head  is
368              assigned only one CRTC (which limits using multiple outputs with
369              that head to cloned mode). CRTC  can  be  manually  assigned  to
370              individual  heads  by  preceding  the  output names with a comma
371              delimited list of pipe numbers followed by a  colon.  Note  that
372              different  pipes  may be limited in their functionality and some
373              outputs may only work with different pipes.
374              For example:
375
376              Option "ZaphodHeads" "LVDS1,VGA1"
377
378              will assign xrandr outputs LVDS1 and VGA1 to  this  instance  of
379              the driver.
380
381              Option "ZaphodHeads" "0,2:HDMI1,DP2"
382
383              will  assign  xrandr  outputs HDMI1 and DP2 and CRTCs 0 and 2 to
384              this instance of the driver.
385
386

OUTPUT CONFIGURATION

388       On 830M and better chipsets, the driver supports runtime  configuration
389       of detected outputs.  You can use the xrandr tool to control outputs on
390       the command line as follows:
391
392              xrandr --output output --set property value
393
394       Note that you may need to quote property and value arguments that  con‐
395       tain  spaces.  Each output listed below may have one or more properties
396       associated with it (like a binary EDID block if one  is  found).   Some
397       outputs  have  unique  properties  which  are described below.  See the
398       "MULTIHEAD CONFIGURATIONS" section below for additional information.
399
400   VGA
401       VGA output port (typically exposed via an HD15 connector).
402
403
404   LVDS
405       Low Voltage Differential Signalling  output  (typically  a  laptop  LCD
406       panel).  Available properties:
407
408
409       BACKLIGHT - current backlight level (adjustable)
410              By  adjusting the BACKLIGHT property, the brightness on the LVDS
411              output can be adjusted.  In some cases,  this  property  may  be
412              unavailable  (for  example  if  your  platform  uses an external
413              microcontroller to control the backlight).
414
415       scaling mode - control LCD panel scaling mode
416              When the currently selected display mode differs from the native
417              panel  resolution,  various scaling options are available. These
418              include
419
420              Center Simply center the image on-screen without  scaling.  This
421                     is  the  only  scaling  mode that guarantees a one-to-one
422                     correspondence between native and displayed  pixels,  but
423                     some portions of the panel may be unused (so-called "let‐
424                     terboxing").
425
426              Full aspect
427                     Scale the image as  much  as  possible  while  preserving
428                     aspect  ratio.  Pixels  may  not  be displayed one-to-one
429                     (there may be some  blurriness).  Some  portions  of  the
430                     panel  may  be unused if the aspect ratio of the selected
431                     mode does not match that of the panel.
432
433              Full   Scale the image to  the  panel  size  without  regard  to
434                     aspect ratio. This is the only mode which guarantees that
435                     every pixel of the panel will be used. But the  displayed
436                     image  may be distorted by stretching either horizontally
437                     or vertically, and pixels may not be displayed one-to-one
438                     (there may be some blurriness).
439
440       The  precise  names of these options may differ depending on the kernel
441       video driver, (but the functionality should be similar). See the output
442       of xrandr --prop for a list of currently available scaling modes.
443
444   TV
445       Integrated TV output.  Available properties include:
446
447       BOTTOM, RIGHT, TOP, LEFT - margins
448              Adjusting  these  properties allows you to control the placement
449              of your TV output buffer on the screen.  The  options  with  the
450              same name can also be set in xorg.conf with integer value.
451
452       BRIGHTNESS - TV brightness, range 0-255
453              Adjust TV brightness, default value is 128.
454
455       CONTRAST - TV contrast, range 0-255
456              Adjust  TV  contrast,  default  value is 1.0 in chipset specific
457              format.
458
459       SATURATION - TV saturation, range 0-255
460              Adjust TV saturation, default value is 1.0 in  chipset  specific
461              format.
462
463       HUE - TV hue, range 0-255
464              Adjust TV hue, default value is 0.
465
466       TV_FORMAT - output standard
467              This  property allows you to control the output standard used on
468              your TV output port.  You can select between  NTSC-M,  NTSC-443,
469              NTSC-J, PAL-M, PAL-N, and PAL.
470
471       TV_Connector - connector type
472              This  config  option  should  be added to xorg.conf TV monitor's
473              section, it allows you to force the TV  output  connector  type,
474              which  bypass  load  detect  and TV will always be taken as con‐
475              nected. You can select between S-Video, Composite and Component.
476
477
478   TMDS-1
479       First DVI SDVO output
480
481
482   TMDS-2
483       Second DVI SDVO output
484
485
486   TMDS-1 , TMDS-2 , HDMI-1 , HDMI-2
487       DVI/HDMI outputs. Available common properties include:
488
489       BROADCAST_RGB - method used to set RGB color range
490              Adjusting this property allows you to set  RGB  color  range  on
491              each  channel  in  order to match HDTV requirement(default 0 for
492              full range). Setting 1 means RGB color range is 16-235, 0  means
493              RGB color range is 0-255 on each channel.  (Full range is 0-255,
494              not 16-235)
495
496
497       SDVO and DVO TV outputs are not supported by the driver at this time.
498
499       See xorg.conf(5) for information on associating Monitor  sections  with
500       these  outputs  for  configuration.   Associating Monitor sections with
501       each output can be helpful if you need to ignore a specific output, for
502       example, or statically configure an extended desktop monitor layout.
503
504

MULTIHEAD CONFIGURATIONS

506       The  number  of  independent outputs is dictated by the number of CRTCs
507       (in X parlance) a given chip supports.  Most recent  Intel  chips  have
508       two  CRTCs,  meaning  that  two  separate framebuffers can be displayed
509       simultaneously, in an extended desktop configuration.  If a  chip  sup‐
510       ports  more outputs than it has CRTCs (say local flat panel, VGA and TV
511       in the case of many outputs), two  of  the  outputs  will  have  to  be
512       "cloned",  meaning  that they display the same framebuffer contents (or
513       one displays a subset of another's  framebuffer  if  the  modes  aren't
514       equal).
515
516       You  can use the "xrandr" tool, or various desktop utilities, to change
517       your output configuration at runtime.   To  statically  configure  your
518       outputs, you can use the "Monitor-<type>" options along with additional
519       monitor sections in your xorg.conf to create your screen topology.  The
520       example  below  puts  the VGA output to the right of the builtin laptop
521       screen, both running at 1024x768.
522
523       Section "Monitor"
524         Identifier "Laptop FooBar Internal Display"
525         Option "Position" "0 0"
526       EndSection
527
528       Section "Monitor"
529         Identifier "Some Random CRT"
530         Option "Position" "1024 0"
531         Option "RightOf" "Laptop FoodBar Internal Display"
532       EndSection
533
534       Section "Device"
535         Driver "intel"
536         Option "monitor-LVDS" "Laptop FooBar Internal Display"
537         Option "monitor-VGA" "Some Random CRT"
538       EndSection
539
540

TEXTURED VIDEO ATTRIBUTES

542       The driver supports the following X11 Xv attributes for Textured Video.
543       You can use the "xvattr" tool to query/set those attributes at runtime.
544
545
546   XV_SYNC_TO_VBLANK
547       XV_SYNC_TO_VBLANK  is used to control whether textured adapter synchro‐
548       nizes the screen update to the vblank to eliminate  tearing.  It  is  a
549       Boolean  attribute with values of 0 (never sync) or 1 (always sync). An
550       historic value of -1 (sync for large windows only) will now  be  inter‐
551       preted  as  1,  (since the current approach for sync is not costly even
552       with small video windows).
553
554
555   XV_BRIGHTNESS
556   XV_CONTRAST

REPORTING BUGS

558       The xf86-video-intel driver is part of the  X.Org  and  Freedesktop.org
559       umbrella   projects.    Details  on  bug  reporting  can  be  found  at
560       https://01.org/linuxgraphics/documentation/how-report-bugs.     Mailing
561       lists  are  also  commonly used to report experiences and ask questions
562       about configuration and other topics.   See  lists.freedesktop.org  for
563       more  information  (the  xorg@lists.freedesktop.org mailing list is the
564       most appropriate place to ask X.Org and driver related questions).
565
566

SEE ALSO

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

AUTHORS

571       Authors include: Keith Whitwell, and also Jonathan Bian, Matthew J Sot‐
572       tek, Jeff Hartmann, Mark Vojkovich, Alan Hourihane, H. J. Lu.  830M and
573       845G support  reworked  for  XFree86  4.3  by  David  Dawes  and  Keith
574       Whitwell.   852GM,  855GM,  and  865G  support added by David Dawes and
575       Keith Whitwell.  915G, 915GM, 945G, 945GM, 965G, 965Q and 946GZ support
576       added by Alan Hourihane and Keith Whitwell. Lid status support added by
577       Alan Hourihane. Textured video support for 915G and later chips,  RandR
578       1.2  and  hardware  modesetting added by Eric Anholt and Keith Packard.
579       EXA and Render acceleration added by Wang Zhenyu. TV out support  added
580       by  Zou  Nan  Hai  and  Keith Packard. 965GM, G33, Q33, and Q35 support
581       added by Wang Zhenyu.
582
583
584
585X Version 11               xf86-video-intel 2.99.917                  intel(4)
Impressum