Provided by: xserver-xorg-video-intel_2.99.917+git20210115-1build1_amd64 bug

NAME

       intel - Intel integrated graphics chipsets

SYNOPSIS

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

DESCRIPTION

       intel  is  an  Xorg  driver  for  Intel integrated graphics chipsets.  The driver supports
       depths 8, 15, 16 and 24.  All visual types are supported in depth 8.   For  the  i810/i815
       other depths support the TrueColor and DirectColor visuals.  For the i830M and later, only
       the TrueColor visual is supported for depths greater than 8.  The driver supports 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 HARDWARE

       intel 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, Pineview-M in Atom N400 series, Pineview-D in  Atom  D400/D500  series,
       Intel(R) HD Graphics, Intel(R) Iris(TM) Graphics, Intel(R) Iris(TM) Pro Graphics.

CONFIGURATION DETAILS

       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 support 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" kernel 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.

              Default: undefined.

       Option "DRI" "string"
              Disable  or  enable  DRI  support.  A driver name to use can be provided instead of
              simple boolean value, which will be passed to the GL implementation for it to  load
              the  appropriate  backend.  Alternatively  the maximum level of DRI to enable (e.g.
              "1", "2" or "3") can be specified.

              Default: All levels of DRI are enabled for configurations where it is supported.

       The following driver Options are supported for the i810 and i815 chipsets:

       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 performance.

              Default:  depends on the resolution, depth, and available video memory.  The driver
              attempts to allocate space for at 3 screenfuls  of  pixmaps  plus  an  HD-sized  XV
              video.  The default used for a specific configuration can be found by examining the
              Xorg log file.

       Option "DDC" "boolean"
              Disable or enable DDC support.

              Default: enabled.

       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.

       VideoRam integer
              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 "Accel" "boolean"
              Enable or disable acceleration.

              Default: acceleration is enabled.

       The following driver Options are supported for the 830M and later chipsets:

       Option "Accel" "boolean"
              Enable or disable acceleration.

              Default: acceleration is enabled.

       Option "Present" "boolean"
              Enable use of hardware counters and flow control for the Present extension.

              Default: 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 support the GEM driver model. It is in the process
              of being superseded 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"  or  "none"  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 perform  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, however
              TearFree will redirect the compositor  updates  (and  those  of  fullscreen  games)
              directly  on to the scanout thus incurring no additional overhead in the composited
              case. Also note that not all compositing  managers  prevent  tearing,  and  if  the
              outputs are rotated, there 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  connected  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 circumstances 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 compositing.  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 selecting adaptors.

              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 "CustomEDID" "string"
              Override the probed EDID on particular outputs. Sometimes the manufacturer supplied
              EDID is corrupt or lacking a few usable modes and supplying a corrected EDID may be
              easier  than specifying every modeline. This option allows to pass the path to load
              an EDID from per output. The format is a  comma  separated  string  of  output:path
              pairs, e.g.  DP1:/path/to/dp1.edid,DP2:/path/to/dp2.edid

              Default: No override, use manufacturer supplied EDIDs.

       Option "FallbackDebug" "boolean"
              Enable  printing  of  debugging information on acceleration fallbacks to the server
              log.

              Default: Disabled

       Option "DebugFlushBatches" "boolean"
              Flush the batch buffer after every single operation.

              Default: Disabled

       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 completion of the batch.

              Default: Disabled

       Option "DebugWait" "boolean"
              Wait  for  the  completion  of  every  batch buffer before continuing, i.e. perform
              synchronous rendering.

              Default: Disabled

       Option "HWRotation" "boolean"
              Override the use of native hardware rotation and force the use of software, but GPU
              accelerated  where  possible,  rotation. On some platforms the hardware can scanout
              directly into a rotated output  bypassing  the  intermediate  rendering  and  extra
              allocations  required  for software implemented rotation (i.e. native rotation uses
              less resources, is quicker and uses less power). This allows  you  to  disable  the
              native rotation in case of errors.

              Default: Enabled (use hardware rotation)

       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.

              Default: enabled.

       Option "PageFlip" "boolean"
              This  option  controls the use of commands to flip the scanout address on a VBlank.
              This is used by glXSwapBuffers 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 performed asynchronrously to the render command stream by the
              display engine). However, it has historically been the source of many GPU hangs.

              Default: enabled.

       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.

              Default: enabled.

       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
              swapbuffers  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.

              Default: enabled.

       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 performance.

              Default: enabled.

       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 configurations you may wish to
              override this and force a linear layout.

              Default: disabled

       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 off.

              Default: Enabled for G33 (includes PineView), and later, class machines.

       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.

              Default: Disabled.

       Option "Throttle" "boolean"
              This  option  controls  whether  the  driver periodically waits for pending drawing
              operations to complete. Throttling 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.

              Default: enabled.

       Option "HotPlug" "boolean"
              This option controls whether the driver automatically  notifies  applications  when
              monitors are connected or disconnected.

              Default: enabled.

       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.

              Default: 0

       Option "ZaphodHeads" "string"

              Specify  the  randr  output(s)  to  use  with  zaphod  mode for a particular driver
              instance.  If you set this option you must use it with all instances of the driver.
              By  default,  each  head  is  assigned  only  one CRTC (which limits using multiple
              outputs with that head to cloned mode). CRTC can be manually assigned to individual
              heads  by  preceding  the  output names with a comma delimited list of pipe numbers
              followed  by  a  colon.  Note  that  different  pipes  may  be  limited  in   their
              functionality and some outputs may only work with different pipes.
              For example:

              Option "ZaphodHeads" "LVDS1,VGA1"

              will assign xrandr outputs LVDS1 and VGA1 to this instance of the driver.

              Option "ZaphodHeads" "0,2:HDMI1,DP2"

              will  assign xrandr outputs HDMI1 and DP2 and CRTCs 0 and 2 to this instance of the
              driver.

OUTPUT CONFIGURATION

       On 830M and better  chipsets,  the  driver  supports  runtime  configuration  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
       VGA output port (typically exposed via an HD15 connector).

   LVDS
       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 backlight).

       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
                     displayed pixels, but some portions of the panel may  be  unused  (so-called
                     "letterboxing").

              Full aspect
                     Scale  the  image  as much as possible while preserving aspect ratio. Pixels
                     may not be  displayed  one-to-one  (there  may  be  some  blurriness).  Some
                     portions of the panel may be unused if the aspect ratio of the selected mode
                     does not match that of the panel.

              Full   Scale the image to the panel size without regard to aspect  ratio.  This  is
                     the  only  mode which guarantees 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 available scaling modes.

   TV
       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 specific format.

       SATURATION - TV saturation, range 0-255
              Adjust TV saturation, default value is 1.0 in chipset specific format.

       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 monitor's section, it allows you
              to force the TV output connector type, which bypass load detect and TV will  always
              be taken as connected. You can select between S-Video, Composite and Component.

   TMDS-1
       First DVI SDVO output

   TMDS-2
       Second DVI SDVO output

   TMDS-1 , TMDS-2 , HDMI-1 , HDMI-2
       DVI/HDMI outputs. Available 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 requirement(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 time.

       See xorg.conf(5) for information on associating Monitor sections with  these  outputs  for
       configuration.   Associating  Monitor sections with each output can be helpful if you need
       to ignore a specific output, for example, or  statically  configure  an  extended  desktop
       monitor layout.

MULTIHEAD CONFIGURATIONS

       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 configuration.  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 display
       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  configure  your  outputs,  you  can  use  the
       "Monitor-<type>"  options  along  with  additional  monitor  sections in your xorg.conf to
       create your screen topology.  The example below puts the VGA output to the  right  of  the
       builtin laptop screen, both running at 1024x768.

       Section "Monitor"
         Identifier "Laptop FooBar Internal Display"
         Option "Position" "0 0"
       EndSection

       Section "Monitor"
         Identifier "Some Random CRT"
         Option "Position" "1024 0"
         Option "RightOf" "Laptop FoodBar Internal Display"
       EndSection

       Section "Device"
         Driver "intel"
         Option "monitor-LVDS" "Laptop FooBar Internal Display"
         Option "monitor-VGA" "Some Random CRT"
       EndSection

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
       XV_SYNC_TO_VBLANK is used to control whether  textured  adapter  synchronizes  the  screen
       update  to  the  vblank  to  eliminate tearing. 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).

   XV_BRIGHTNESS
   XV_CONTRAST

REPORTING BUGS

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

SEE ALSO

       Xorg(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 Render 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.