The DRM backend uses the following entries from weston.ini.
Sectioncoregbm-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.
Sectionoutputname=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=widthxheightmode=widthxheight@refresh_rate
Specify a mode with a given refresh-rate measured in Hz.
mode=widthxheight@refresh_rateratio
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=dotclockhdisphsyncstarthsyncendhtotalvdispvsyncstartvsyncendvtotalhflagvflag
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 "maxbpc" 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.
Sectionremote-outputname=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=widthxheightmode=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.