- Oct 30, 2018
-
-
Tomohito Esaki authored
Add support virtual output for streaming image to remote output by remoting-plugin which will be added by the patch: "Add remoting plugin for output streaming." The gbm bo of virtual output is the linear format. Virtual output is implemented based on a patch by Grigory Kletsko <grigory.kletsko@cogentembedded.com>. Signed-off-by:
Tomohito Esaki <etom@igel.co.jp>
-
- Jul 02, 2018
-
-
This will allow the seat to be set by the environment as pam_systemd typically sets the XDG_SEAT variable Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Emil Velikov <emil.velikov@collabora.com>
-
- May 24, 2018
-
-
Pekka Paalanen authored
Allow global control of the pixman shadow buffers. The compositor can choose whether all output use or do not use a shadow buffer with the pixman renderer. The option is added to the end of struct weston_drm_backend_config to avoid bumping WESTON_DRM_BACKEND_CONFIG_VERSION. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Signed-off-by:
Fabien Lahoudere <fabien.lahoudere@collabora.com> Reviewed-by:
Ian Ray <ian.ray@ge.com>
-
- Dec 18, 2017
-
-
Pekka Paalanen authored
Developers with testing rigs having multiple graphics cards plugged in often want to test things on a specific card. We have ways to choose a card through seat assignments, but configuring that run by run is awkward. Add a new DRM backend option to try to open a specific device, and quit if it fails. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
- Sep 04, 2017
-
-
Remove the option, because it is hard to use. Drm connector ids are hard to reach for users, and they can change when kernel or device tree is modified. Signed-off-by:
Emre Ucan <eucan@de.adit-jv.com> Reviewed-by:
Daniel Stone <daniels@collabora.com> [Pekka: bump WESTON_DRM_BACKEND_CONFIG_VERSION] Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
- Mar 07, 2017
-
-
Weston will not repaint until previous update has been acked by a pageflip event coming from the drm driver. However, some buggy drivers won’t return those events or will stop sending them at some point and Weston output repaints will completely freeze. To ease developers’ task in testing their drivers, this patch makes compositor-drm use a timer to detect cases where those pageflip events stop coming. This timeout implementation is software only and includes basic features usually found in a watchdog. We simply exit Weston gracefully with a log message and an exit code when the timout is reached. The timeout value can be set via weston.ini by adding a pageflip-timeout=<MILLISECONDS> entry under [core] section. Setting it to 0 disables the timeout feature. v2: - Made sure we would get both the pageflip and the vblank events before stopping the timer. - Reordered the error and success cases in drm_output_pageflip_timer_create() to be more in line with the rest of the code. v3: - Reordered (de)arming of the timer with the code around it to avoid it being rearmed before the current dearming. - Return the proper value for the dispatcher in the pageflip_timeout callback. - Also display the output name in case the timer fires. v4: - Reordered a forgotten timer rearming after its drmModePageFlip(). Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=83884 Signed-off-by: Frederic Plourde <frederic.plourde at collabora.co.uk> Signed-off-by:
Emmanuel Gil Peyrot <emmanuel.peyrot@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
- Jan 26, 2017
-
-
It got lost during the porting to the config API. Signed-off-by:
Armin Krezović <krezovic.armin@gmail.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
- Oct 03, 2016
-
-
This is a complete port of the DRM backend that uses the recently added output handling API for output configuration. Output can be configured at runtime by passing the necessary configuration parameters, which can be filled in manually or obtained from the configuration file using previously added functionality. It is required that the scale and transform values are set using the previously added functionality. After everything has been set, output needs to be enabled manually using weston_output_enable(). v2: - Added missing drmModeFreeCrtc() to drm_output_enable() cleanup list in case of failure. - Split drm_backend_disable() into drm_backend_deinit() to accomodate for changes in the first patch in the series. Moved restoring original crtc to drm_output_destroy(). v3: - Moved origcrtc allocation to drm_output_set_mode(). - Swapped connector_get_current_mode() and drm_output_add_mode() calls in drm_output_set_mode() to match current weston. - Moved crtc_allocator and connector_allocator update from drm_output_enable() to create_output_for_connector() to avoid problems when more than one monitor is connected at startup and crtc allocator wasn't updated before create_output_for_connector() was called second time, resulting in one screen being turned off. - Moved crtc_allocator and connector_allocator update from drm_output_deinit() to drm_output_destroy(), as it should not be called on drm_output_disable(). - Use weston_compositor_add_pending_output(). - Bump weston_drm_backend_config version to 2. v4: - Reset output->original_crtc to NULL if drm_output_set_mode() fails. - Remove unneeded log message when disabling an output when a pageflip is pending. - Document that create_output_for_connector() takes ownership of the connector. - Free the connector if create output conditionals are not met in create_outputs() and update_outputs(). Signed-off-by:
Armin Krezović <krezovic.armin@gmail.com> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
- Jun 23, 2016
-
-
Pekka Paalanen authored
This clarifies what is supposed to be the libweston code. v2: screen-share.c is already in compositor/ instead. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Yong Bakos <ybakos@humanoriented.com> Acked-by:
Daniel Stone <daniels@collabora.com> Reviewed-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Tested-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Tested-by:
Benoit Gschwind <gschwind@gnu-log.net> Acked-by:
Benoit Gschwind <gschwind@gnu-log.net> [Pekka: rebased]
-
- Jun 03, 2016
-
-
Instead add callbacks to the drm and fbdev backends and pass that to the input backens so that when a new device needs to be configured that is called and the compositor can configure it. Signed-off-by:
Giulio Camuffo <giuliocamuffo@gmail.com> Reviewed-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
- May 10, 2016
-
-
Preparing for libweston and for the separation of the code base into libweston vs. weston the compositor, we must remove all uses weston_config structures from the backends. We have decided that all option and config input happens in the compositor (main.c), and configuration is passed in for the backends as structs. Most other backends have already converted, and this patch converts the DRM-backend to the libweston-style init API. The libweston-style init API includes a header for each backend (here compositor-drm.h) defining the configuration interface. The compositor (main.c) prepares a configuration struct to be passed through libweston core to the backend during initialization. A complication with the DRM-backend is that outputs can be hotplugged, and their configuration needs to be fetched from the compositor (main.c). For this, the config struct contains a callback member. The output configuration API is subject to change later, this is just a temporary API to get libweston forward. As weston_compositor's user_data was not previously used for anything, and the output configuration callback needs data, the user_data is set to the 'config' pointer. This pointer is only used in drm_configure_output() in main.c. [Bryce: lots of stuff and rebasing] Signed-off-by:
Bryce Harrington <bryce@osg.samsung.com> Reviewed-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Acked-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Tested-by:
Benoit Gschwind <gschwind@gnu-log.net> [Pekka: write commit message] [Pekka: squash in "drm: Don't hang onto the backend config object post-backend_init" from Bryce Harrington] [Pekka: drop the compositor.h hunk] [Pekka: do not #include inside extern "C"] [Pekka: remove incorrect comment about weston_drm_backend_config ownership.] Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-