mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2026-05-07 02:38:01 +02:00
drm: Change the renderer skip logic
There's only one mode where we can skip the renderer, let's base the check on that instead of checking for an existing scanout fb. Signed-off-by: Derek Foreman <derek.foreman@collabora.com>
This commit is contained in:
parent
0dd1d390be
commit
2f460b513f
1 changed files with 5 additions and 4 deletions
|
|
@ -559,11 +559,8 @@ drm_output_render(struct drm_output_state *state)
|
|||
pixman_box32_t *rects;
|
||||
int n_rects;
|
||||
|
||||
/* If we already have a client buffer promoted to scanout, then we don't
|
||||
* want to render. */
|
||||
scanout_state = drm_output_state_get_plane(state, scanout_plane);
|
||||
if (scanout_state->fb)
|
||||
return;
|
||||
weston_assert_ptr_null(c, scanout_state->fb);
|
||||
|
||||
pixman_region32_init(&damage);
|
||||
|
||||
|
|
@ -985,6 +982,10 @@ drm_output_repaint(struct weston_output *output_base)
|
|||
if (device->atomic_modeset)
|
||||
drm_output_pick_writeback_capture_task(output);
|
||||
|
||||
/* Skip the renderer if our mode allows it */
|
||||
if (state->mode == DRM_OUTPUT_PROPOSE_STATE_PLANES_ONLY)
|
||||
return 0;
|
||||
|
||||
drm_output_render(state);
|
||||
scanout_state = drm_output_state_get_plane(state,
|
||||
output->scanout_handle->plane);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue