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-launch
10
11       weston --backend=drm-backend.so
12

DESCRIPTION

14       The  DRM  backend is the native Weston backend for systems that support
15       the Linux kernel DRM,  kernel  mode  setting  (KMS),  and  evdev  input
16       devices.   It  is  the recommended backend for desktop PCs, and aims to
17       provide the full Wayland experience with the "every frame  is  perfect"
18       concept.  It also relies on the Mesa GBM interface.
19
20       With the DRM backend, weston runs without any underlying windowing sys‐
21       tem. The backend uses the Linux KMS API to detect  connected  monitors.
22       Monitor  hot-plugging  is  supported. Input devices are found automati‐
23       cally by udev(7).  Compositing happens mainly in  GL ES 2,  initialized
24       through  EGL. It is also possible to take advantage of hardware cursors
25       and overlays, when they exist and are functional. Full-screen  surfaces
26       will be scanned out directly without compositing, when possible.  Hard‐
27       ware accelerated clients are supported via EGL.
28
29       The backend chooses the DRM graphics device first based on seat id.  If
30       seat identifiers are not set, it looks for the graphics device that was
31       used in boot. If that is not found, it finally chooses  the  first  DRM
32       device  returned  by  udev(7).  Combining multiple graphics devices are
33       not supported yet.
34
35       The DRM backend relies  on  weston-launch  for  managing  input  device
36       access  and  DRM  master status, so that weston can be run without root
37       privileges. On switching away from the virtual  terminal  (VT)  hosting
38       Weston,  all  input devices are closed and the DRM master capability is
39       dropped, so that other servers, including Xorg(1),  can  run  on  other
40       VTs. On switching back to Weston's VT, input devices and DRM master are
41       re-acquired through the parent process weston-launch.
42
43       The DRM backend also supports virtual outputs that are transmitted over
44       an  RTP  session  as a series of JPEG images (RTP payload type 26) to a
45       remote client. Virtual outputs are configured in the remote-output sec‐
46       tion of weston.ini.
47

CONFIGURATION

49       The DRM backend uses the following entries from weston.ini.
50
51   Section output
52       name=connector
53              The  KMS  connector  name  identifying  the output, for instance
54              LVDS1.
55
56       mode=mode
57              Specify the video mode for the output. The argument mode can  be
58              one  of  the  words off to turn the output off, preferred to use
59              the monitor's preferred video mode, or current to use  the  cur‐
60              rent video mode and avoid a mode switch.  It can also be a reso‐
61              lution as:
62
63       mode=widthxheight
64
65       mode=widthxheight@refresh_rate
66              Specify a mode with a given refresh-rate measured in Hz.
67
68       mode=widthxheight@refresh_rate ratio
69              Here ratio is Picture Aspect-Ratio which can have values as 4:3,
70              16:9, 64:27, and 256:135. This resolution-format helps to select
71              a CEA mode, if such a video mode is present in the mode-list  of
72              the output.
73
74              CEA defines the timing of a video mode, which is considered as a
75              standard  for  HDMI  spcification  and  compliance  testing.  It
76              defines  each and every parameter of a video mode, like hactive,
77              vactive, vfront, vback etc., including aspect-ratio information.
78              For  CEA modes, the drm layer, stores this aspect-ratio informa‐
79              tion in user-mode (drmModeModeInfo) flag  bits  19-22.  For  the
80              non-CEA  modes  a  value of 0 is stored in the aspect-ratio flag
81              bits.
82
83              Each CEA-mode is identified by a  unique,  Video  Identification
84              Code  (VIC).   For  example,  VIC=4  is 1280x720@60 aspect-ratio
85              16:9.  This  mode  will  be  different  than  a   non-CEA   mode
86              1280x720@60 0:0. When the video mode 1280x720@60 0:0 is applied,
87              since its timing doesn't exactly match with the CEA  information
88              for  VIC=4,  it  would be treated as a non-CEA mode. Also, while
89              setting the HDMI-AVI-Inforframe, VIC parameter will be given  as
90              '0'.  If video mode 1280x720@60 16:9 is applied, its CEA timimgs
91              matches with that of video mode with VIC=4, so the VIC parameter
92              in HDMI-AVI-Infoframe will be set to 4.
93
94              Many  a  times,  an  output may have both CEA and non-CEA modes,
95              which are similar in all resepct, differing only in the  aspect-
96              ratio.  A user can select a CEA mode by giving the aspect-ratio,
97              along with the other arguments for the mode.   By  omitting  the
98              aspect-ratio,  user  can  specify the non-CEA modes.  This helps
99              when certification testing is done,  in  tests  like  7-27,  the
100              HDMI-analyzer  applies  a  particular  CEA mode, and expects the
101              applied mode to be with  exactly  same  timings,  including  the
102              aspect-ratio and VIC field.
103
104              The resolution can also be a detailed mode line as below.
105
106       mode=dotclock  hdisp  hsyncstart hsyncend htotal vdisp vsyncstart vsyn‐
107       cend vtotal hflag vflag
108              Use the given detailed mode line as the video mode for this out‐
109              put.   The definition is the same as in xorg.conf(5), and cvt(1)
110              can generate detailed mode lines.
111
112       transform=transform
113              Transform for the output, which  can  be  rotated  in  90-degree
114              steps and possibly flipped. Possible values are normal, 90, 180,
115              270, flipped, flipped-90, flipped-180, and flipped-270.
116
117       pixman-shadow=boolean
118              If using the Pixman-renderer, use shadow framebuffers.  Defaults
119              to true.
120
121       same-as=name
122              Make  this  output  (connector) a clone of another. The argument
123              name is the name value of another output section.  The  referred
124              to  output  section  must  exist. When this key is present in an
125              output section, all other keys have no effect on the  configura‐
126              tion.
127
128              NOTE:  cms-colord  plugin  does  not  work  correctly  with this
129              option. The plugin chooses an  arbitrary  monitor  to  load  the
130              color  profile  for,  but  the profile is applied equally to all
131              cloned monitors regardless of their properties.
132
133       force-on=true
134              Force the output to be enabled even if the connector is  discon‐
135              nected.   Defaults  to  false.  Note that mode=off will override
136              force-on=true.  When a connector is disconnected,  there  is  no
137              EDID  information  to provide a list of video modes. Therefore a
138              forced output should also have a detailed mode line specified.
139
140
141   Section remote-output
142       name=name
143              Specify unique name for the output.
144
145       mode=mode
146              Specify the video mode for the output. The argument  mode  is  a
147              resolution setting, such as:
148
149       mode=widthxheight
150
151       mode=widthxheight@refresh_rate
152              If refresh_rate is not specified it will default to a 60Hz.
153
154       host=host
155              Specify  the host name or IP Address that the remote output will
156              be transmitted to.
157
158       port=port
159              Specify the port number to transmit the remote output to. Usable
160              port range is 1-65533.
161
162

OPTIONS

164       When  the  DRM  backend is loaded, weston will understand the following
165       additional command line options.
166
167       --current-mode
168              By default, use the current video mode of all  outputs,  instead
169              of switching to the monitor preferred mode.
170
171       --drm-device=cardN
172              Use the DRM device cardN instead of the default heuristics based
173              on seat assignments and boot VGA status. For example, use card0.
174
175       --seat=seatid
176              Use graphics  and  input  devices  designated  for  seat  seatid
177              instead   of  the  seat  defined  in  the  environment  variable
178              XDG_SEAT. If neither is specified, seat0 will be assumed.
179
180       --tty=x
181              Launch Weston on tty x instead of using the current tty.
182

ENVIRONMENT

184       WESTON_LIBINPUT_LOG_PRIORITY
185              The minimum libinput verbosity level to be printed  to  Weston's
186              log.  Valid values are debug, info, and error. Default is info.
187
188       WESTON_TTY_FD
189              The  file  descriptor  (integer)  of the opened tty where weston
190              will run. Set by weston-launch.
191
192       WESTON_LAUNCHER_SOCK
193              The file descriptor (integer) where weston-launch is  listening.
194              Automatically set by weston-launch.
195
196       XDG_SEAT
197              The  seat Weston will start on, unless overridden on the command
198              line.
199

SEE ALSO

201       weston(1)
202
203
204
205Weston 6.0.0                      2012-11-27                     WESTON-DRM(7)
Impressum