Provided by: weston_14.0.2-1build1_amd64 bug

NAME

       weston-drm - the DRM backend for Weston

SYNOPSIS

       weston --backend=drm

DESCRIPTION

       The  DRM  backend is the native Weston backend for systems that support the Linux kernel DRM, kernel mode
       setting (KMS), and evdev input devices.  It is the recommended backend  for  desktop  PCs,  and  aims  to
       provide  the  full  Wayland  experience with the "every frame is perfect" concept.  It also relies on the
       Mesa GBM interface.

       With the DRM backend, weston runs without any underlying windowing system. The backend uses the Linux KMS
       API  to  detect  connected  monitors.  Monitor  hot-plugging  is  supported.  Input  devices  are   found
       automatically  by  udev(7).   Compositing  happens mainly in GL ES 2, initialized through EGL. It is also
       possible to take advantage of hardware cursors and overlays, when they exist and  are  functional.  Full-
       screen  surfaces  will  be scanned out directly without compositing, when possible.  Hardware accelerated
       clients are supported via EGL.

       The backend chooses the DRM graphics device first based on seat id.  If seat identifiers are not set,  it
       looks  for  the graphics device that was used in boot. If that is not found, it finally chooses the first
       DRM device returned by udev(7).  Combining multiple graphics devices is not supported yet.

       The DRM backend also supports virtual outputs that are transmitted over an RTP session  as  a  series  of
       JPEG images (RTP payload type 26) to a remote client. Virtual outputs are configured in the remote-output
       section of weston.ini.

CONFIGURATION

       The DRM backend uses the following entries from weston.ini.

   Section core
       gbm-format=format
              Sets  the  default  pixel  format  for DRM KMS framebuffers.  Format can be xrgb8888, xrgb2101010,
              rgb565 or others. Weston recognizes the names of most pixel formats  defined  by  the  kernel  DRM
              subsystem  in  drm_fourcc.h  header  without the DRM_FORMAT_ prefix.  The actually supported pixel
              formats depend on the DRM driver and hardware, and the renderer used. Using Pixman-renderer,  DRM-
              backend  supports  xrgb8888,  xrgb2101010,  rgb565  and  some  of their permutations.  The formats
              supported with GL-renderer depend on the EGL and OpenGL ES 2 or 3 implementations. The  names  are
              case-insensitive.   This   setting  applies  only  to  outputs  in  SDR  mode,  see  eotf-mode  in
              weston.ini(5).  If the hardware platform supports hardware planes placed  under  the  DRM  primary
              plane  type  (underlays), specifying argb8888 would be needed for Weston to display content lifted
              into such hardware planes.  If not specified, xrgb8888 is used.  See  also  gbm-format  in  output
              section.

       pageflip-timeout=milliseconds
              sets  Weston's  pageflip timeout in milliseconds.  This sets a timer to exit gracefully with a log
              message and an exit code of 1 in case the DRM driver is non-responsive.  Setting it to 0  disables
              this feature.

   Section output
       name=connector
              The KMS connector name identifying the output, for instance LVDS1.

       mode=mode
              Specify  the  video mode for the output. The argument mode can be one of the words off to turn the
              output off, preferred to use the monitor's preferred video mode, or current  to  use  the  current
              video mode and avoid a mode switch.  It can also be a resolution as:

       mode=widthxheight

       mode=widthxheight@refresh_rate
              Specify a mode with a given refresh-rate measured in Hz.

       mode=widthxheight@refresh_rate ratio
              Here  ratio  is  Picture Aspect-Ratio which can have values as 4:3, 16:9, 64:27, and 256:135. This
              resolution-format helps to select a CEA mode, if such a video mode is present in the mode-list  of
              the output.

              CEA  defines  the  timing of a video mode, which is considered as a standard for HDMI spcification
              and compliance testing. It defines each and  every  parameter  of  a  video  mode,  like  hactive,
              vactive,  vfront,  vback  etc.,  including aspect-ratio information. For CEA modes, the drm layer,
              stores this aspect-ratio information in user-mode (drmModeModeInfo) flag bits 19-22. For the  non-
              CEA modes a value of 0 is stored in the aspect-ratio flag bits.

              Each  CEA-mode  is identified by a unique, Video Identification Code (VIC).  For example, VIC=4 is
              1280x720@60 aspect-ratio 16:9. This mode will be different than a non-CEA  mode  1280x720@60  0:0.
              When  the  video  mode 1280x720@60 0:0 is applied, since its timing doesn't exactly match with the
              CEA information for VIC=4, it would be treated as a non-CEA mode. Also, while  setting  the  HDMI-
              AVI-Inforframe, VIC parameter will be given as '0'. If video mode 1280x720@60 16:9 is applied, its
              CEA timimgs matches with that of video mode with VIC=4, so the VIC parameter in HDMI-AVI-Infoframe
              will be set to 4.

              Many  a  times,  an  output may have both CEA and non-CEA modes, which are similar in all resepct,
              differing only in the aspect-ratio. A user can select a CEA mode by giving the aspect-ratio, along
              with the other arguments for the mode.  By omitting the aspect-ratio, user can specify the non-CEA
              modes.  This helps when certification testing is done,  in  tests  like  7-27,  the  HDMI-analyzer
              applies  a  particular  CEA  mode,  and  expects the applied mode to be with exactly same timings,
              including the aspect-ratio and VIC field.

              The resolution can also be a detailed mode line as below.

       mode=dotclock hdisp hsyncstart hsyncend htotal vdisp vsyncstart vsyncend vtotal hflag vflag
              Use the given detailed mode line as the video mode for this output.  The definition is the same as
              in xorg.conf(5), and cvt(1) can generate detailed mode lines.

       transform=transform
              Transform for the output, which can be rotated in 90-degree steps and possibly  flipped.  Possible
              values  are  normal,  rotate-90,  rotate-180,  rotate-270,  flipped,  flipped-rotate-90,  flipped-
              rotate-180, and flipped-rotate-270.

       gbm-format=format
              Set the DRM KMS framebuffer format for this specific output. If not set, the value from gbm-format
              option in core section is used for SDR mode outputs and xrgb2101010  for  other  modes.   For  the
              possible  values for format see gbm-format option in core section.  For SDR mode, see eotf-mode in
              weston.ini(7).

       pixman-shadow=boolean
              If using the Pixman-renderer, use shadow framebuffers. Defaults to true.

       clone-of=name
              Make this output (connector) a clone of another. The argument name is the name  value  of  another
              output  section.  The referred to output section must exist. When this key is present in an output
              section, all other keys have no effect on the configuration.

       force-on=true
              Force the output to be enabled even if the connector is disconnected.   Defaults  to  false.  Note
              that  mode=off  will  override  force-on=true.  When a connector is disconnected, there is no EDID
              information to provide a list of video modes.  Therefore  a  forced  output  should  also  have  a
              detailed mode line specified.

       max-bpc=N
              Set  "max  bpc"  KMS property to value N, silently clamped to the hardware driver supported range.
              This artificially limits the driver chosen link bits-per-channel which may be useful  for  working
              around sink hardware (e.g. monitor) limitations. The default is 16 which is practically unlimited.
              If  you need to work around hardware issues, try a lower value like 8. A value of 0 means that the
              current max bpc will be reprogrammed.

   Section remote-output
       name=name
              Specify unique name for the output.

       mode=mode
              Specify the video mode for the output. The argument mode is a resolution setting, such as:

       mode=widthxheight

       mode=widthxheight@refresh_rate
              If refresh_rate is not specified it will default to a 60Hz.

       host=host
              Specify the host name or IP Address that the remote output will be transmitted to.

       port=port
              Specify the port number to transmit the remote output to. Usable port range is 1-65533.

       gst-pipeline=pipeline
              Specify the gstreamer pipeline. It is necessary that source is appsrc, its name is "src", and sink
              name is "sink" in pipeline.  Ignore port and host configuration if the gst-pipeline is specified.

OPTIONS

       When the DRM backend is loaded, weston will understand the following additional command line options.

       --current-mode
              By default, use the current video mode of  all  outputs,  instead  of  switching  to  the  monitor
              preferred mode.

       --drm-device=cardN
              Use  the DRM device cardN for rendering and output instead of the default heuristics based on seat
              assignments and boot VGA status. For example, use card0.

       --additional-devices=cardN
              Comma separated list of secondary DRM devices cardM,cardN that will only be used as  outputs,  but
              not for rendering. For example, use card1,card2.

       --seat=seatid
              Use  graphics  and  input  devices  designated  for seat seatid instead of the seat defined in the
              environment variable XDG_SEAT. If neither is specified, seat0 will be assumed.

       --continue-without-input
              Allow Weston to start without input devices. Used for testing purposes.

ENVIRONMENT

       WESTON_LIBINPUT_LOG_PRIORITY
              The minimum libinput verbosity level to be printed to Weston's log.  Valid values are debug, info,
              and error. Default is info.

       XDG_SEAT
              The seat Weston will start on, unless overridden on the command line.

SEE ALSO

       weston(1)

Weston 14.0.2                                      2012-11-27                                      WESTON-DRM(7)