1WESTON-DRM(7)          Miscellaneous Information Manual          WESTON-DRM(7)
2
3
4

NAME

6       weston-drm - the DRM backend for Weston
7

SYNOPSIS

9       weston --backend=drm-backend.so
10

DESCRIPTION

12       The  DRM  backend is the native Weston backend for systems that support
13       the Linux kernel DRM, kernel mode setting (KMS), and  evdev  input  de‐
14       vices.  It is the recommended backend for desktop PCs, and aims to pro‐
15       vide the full Wayland experience with the "every frame is perfect" con‐
16       cept.  It also relies on the Mesa GBM interface.
17
18       With the DRM backend, weston runs without any underlying windowing sys‐
19       tem. The backend uses the Linux KMS API to detect  connected  monitors.
20       Monitor  hot-plugging  is  supported. Input devices are found automati‐
21       cally by udev(7).  Compositing happens mainly in  GL ES 2,  initialized
22       through  EGL. It is also possible to take advantage of hardware cursors
23       and overlays, when they exist and are functional. Full-screen  surfaces
24       will be scanned out directly without compositing, when possible.  Hard‐
25       ware accelerated clients are supported via EGL.
26
27       The backend chooses the DRM graphics device first based on seat id.  If
28       seat identifiers are not set, it looks for the graphics device that was
29       used in boot. If that is not found, it finally chooses  the  first  DRM
30       device returned by udev(7).  Combining multiple graphics devices is not
31       supported yet.
32
33       The DRM backend also supports virtual outputs that are transmitted over
34       an  RTP  session  as a series of JPEG images (RTP payload type 26) to a
35       remote client. Virtual outputs are configured in the remote-output sec‐
36       tion of weston.ini.
37

CONFIGURATION

39       The DRM backend uses the following entries from weston.ini.
40
41   Section core
42       gbm-format=format
43              Sets  the default pixel format for DRM KMS framebuffers.  Format
44              can be xrgb8888, xrgb2101010, rgb565 or  others.  Weston  recog‐
45              nizes  the names of most pixel formats defined by the kernel DRM
46              subsystem in drm_fourcc.h header without the DRM_FORMAT_ prefix.
47              The  actually  supported  pixel formats depend on the DRM driver
48              and hardware, and the renderer used. Using Pixman-renderer, DRM-
49              backend  supports  only  xrgb8888  and rgb565.  The formats sup‐
50              ported with GL-renderer depend on the EGL and OpenGL ES 2  or  3
51              implementations.  The  names  are case-insensitive. This setting
52              applies only to outputs  in  SDR  mode,  see  eotf-mode  in  we‐
53              ston.ini(5).
54
55              If  not specified, xrgb8888 is used. See also gbm-format in out‐
56              put section.
57
58       pageflip-timeout=milliseconds
59              sets Weston's pageflip timeout in  milliseconds.   This  sets  a
60              timer  to exit gracefully with a log message and an exit code of
61              1 in case the DRM driver is non-responsive.   Setting  it  to  0
62              disables this feature.
63
64
65   Section output
66       name=connector
67              The  KMS  connector  name  identifying  the output, for instance
68              LVDS1.
69
70       mode=mode
71              Specify the video mode for the output. The argument mode can  be
72              one  of  the  words off to turn the output off, preferred to use
73              the monitor's preferred video mode, or current to use  the  cur‐
74              rent video mode and avoid a mode switch.  It can also be a reso‐
75              lution as:
76
77       mode=widthxheight
78
79       mode=widthxheight@refresh_rate
80              Specify a mode with a given refresh-rate measured in Hz.
81
82       mode=widthxheight@refresh_rate ratio
83              Here ratio is Picture Aspect-Ratio which can have values as 4:3,
84              16:9, 64:27, and 256:135. This resolution-format helps to select
85              a CEA mode, if such a video mode is present in the mode-list  of
86              the output.
87
88              CEA defines the timing of a video mode, which is considered as a
89              standard for HDMI spcification and compliance  testing.  It  de‐
90              fines  each  and  every parameter of a video mode, like hactive,
91              vactive, vfront, vback etc., including aspect-ratio information.
92              For  CEA modes, the drm layer, stores this aspect-ratio informa‐
93              tion in user-mode (drmModeModeInfo) flag  bits  19-22.  For  the
94              non-CEA  modes  a  value of 0 is stored in the aspect-ratio flag
95              bits.
96
97              Each CEA-mode is identified by a  unique,  Video  Identification
98              Code  (VIC).   For  example,  VIC=4  is 1280x720@60 aspect-ratio
99              16:9.  This  mode  will  be  different  than  a   non-CEA   mode
100              1280x720@60 0:0. When the video mode 1280x720@60 0:0 is applied,
101              since its timing doesn't exactly match with the CEA  information
102              for  VIC=4,  it  would be treated as a non-CEA mode. Also, while
103              setting the HDMI-AVI-Inforframe, VIC parameter will be given  as
104              '0'.  If video mode 1280x720@60 16:9 is applied, its CEA timimgs
105              matches with that of video mode with VIC=4, so the VIC parameter
106              in HDMI-AVI-Infoframe will be set to 4.
107
108              Many  a  times,  an  output may have both CEA and non-CEA modes,
109              which are similar in all resepct, differing only in the  aspect-
110              ratio.  A user can select a CEA mode by giving the aspect-ratio,
111              along with the other arguments for the mode.   By  omitting  the
112              aspect-ratio,  user  can  specify the non-CEA modes.  This helps
113              when certification testing is done,  in  tests  like  7-27,  the
114              HDMI-analyzer applies a particular CEA mode, and expects the ap‐
115              plied mode to be with exactly same timings,  including  the  as‐
116              pect-ratio and VIC field.
117
118              The resolution can also be a detailed mode line as below.
119
120       mode=dotclock  hdisp  hsyncstart hsyncend htotal vdisp vsyncstart vsyn‐
121       cend vtotal hflag vflag
122              Use the given detailed mode line as the video mode for this out‐
123              put.   The definition is the same as in xorg.conf(5), and cvt(1)
124              can generate detailed mode lines.
125
126       transform=transform
127              Transform for the output, which  can  be  rotated  in  90-degree
128              steps  and  possibly  flipped.  Possible  values are normal, ro‐
129              tate-90,  rotate-180,  rotate-270,  flipped,  flipped-rotate-90,
130              flipped-rotate-180, and flipped-rotate-270.
131
132       gbm-format=format
133              Set  the DRM KMS framebuffer format for this specific output. If
134              not set, the value from gbm-format option  in  core  section  is
135              used  for SDR mode outputs and xrgb2101010 for other modes.  For
136              the possible values for format see  gbm-format  option  in  core
137              section.  For SDR mode, see eotf-mode in weston.ini(7).
138
139       pixman-shadow=boolean
140              If  using the Pixman-renderer, use shadow framebuffers. Defaults
141              to true.
142
143       same-as=name
144              Make this output (connector) a clone of  another.  The  argument
145              name  is  the name value of another output section. The referred
146              to output section must exist. When this key  is  present  in  an
147              output  section, all other keys have no effect on the configura‐
148              tion.
149
150              NOTE: cms-colord plugin does not work correctly  with  this  op‐
151              tion.  The plugin chooses an arbitrary monitor to load the color
152              profile for, but the profile is applied equally  to  all  cloned
153              monitors regardless of their properties.
154
155       force-on=true
156              Force  the output to be enabled even if the connector is discon‐
157              nected.  Defaults to false. Note  that  mode=off  will  override
158              force-on=true.   When  a  connector is disconnected, there is no
159              EDID information to provide a list of video modes.  Therefore  a
160              forced output should also have a detailed mode line specified.
161
162       max-bpc=N
163              Set  "max  bpc"  KMS property to value N, silenty clamped to the
164              hardware driver supported range. This  artificially  limits  the
165              driver  chosen  link  bits-per-channel  which  may be useful for
166              working around sink hardware (e.g. monitor) limitations. The de‐
167              fault  is 16 which is practically unlimited. If you need to work
168              around hardware issues, try a lower value like 8. A value  of  0
169              means that the current max bpc will be reprogrammed.
170
171
172   Section remote-output
173       name=name
174              Specify unique name for the output.
175
176       mode=mode
177              Specify  the  video  mode for the output. The argument mode is a
178              resolution setting, such as:
179
180       mode=widthxheight
181
182       mode=widthxheight@refresh_rate
183              If refresh_rate is not specified it will default to a 60Hz.
184
185       host=host
186              Specify the host name or IP Address that the remote output  will
187              be transmitted to.
188
189       port=port
190              Specify the port number to transmit the remote output to. Usable
191              port range is 1-65533.
192
193       gst-pipeline=pipeline
194              Specify the gstreamer pipeline. It is necessary that  source  is
195              appsrc,  its name is "src", and sink name is "sink" in pipeline.
196              Ignore port and host configuration if the gst-pipeline is speci‐
197              fied.
198
199

OPTIONS

201       When  the  DRM  backend is loaded, weston will understand the following
202       additional command line options.
203
204       --current-mode
205              By default, use the current video mode of all  outputs,  instead
206              of switching to the monitor preferred mode.
207
208       --drm-device=cardN
209              Use the DRM device cardN instead of the default heuristics based
210              on seat assignments and boot VGA status. For example, use card0.
211
212       --seat=seatid
213              Use graphics and input devices designated for  seat  seatid  in‐
214              stead  of the seat defined in the environment variable XDG_SEAT.
215              If neither is specified, seat0 will be assumed.
216
217       --continue-without-input
218              Allow Weston to start without input devices.  Used  for  testing
219              purposes.
220

ENVIRONMENT

222       WESTON_LIBINPUT_LOG_PRIORITY
223              The  minimum  libinput verbosity level to be printed to Weston's
224              log.  Valid values are debug, info, and error. Default is info.
225
226       XDG_SEAT
227              The seat Weston will start on, unless overridden on the  command
228              line.
229

SEE ALSO

231       weston(1)
232
233
234
235Weston 11.0.1                     2012-11-27                     WESTON-DRM(7)
Impressum