backend/drm: make wlr_drm_plane.{pending,queued,current}_fb pointers

This will be useful once we start re-using wlr_drm_fb.
This commit is contained in:
Simon Ser 2020-12-22 17:07:29 +01:00
parent 64da8f0c8d
commit 5b1b43c68c
6 changed files with 46 additions and 40 deletions

View file

@ -24,11 +24,11 @@ struct wlr_drm_plane {
struct wlr_drm_surface mgpu_surf;
/* Buffer to be submitted to the kernel on the next page-flip */
struct wlr_drm_fb pending_fb;
struct wlr_drm_fb *pending_fb;
/* Buffer submitted to the kernel, will be presented on next vblank */
struct wlr_drm_fb queued_fb;
struct wlr_drm_fb *queued_fb;
/* Buffer currently displayed on screen */
struct wlr_drm_fb current_fb;
struct wlr_drm_fb *current_fb;
struct wlr_drm_format_set formats;

View file

@ -45,14 +45,14 @@ void finish_drm_renderer(struct wlr_drm_renderer *renderer);
bool drm_surface_make_current(struct wlr_drm_surface *surf, int *buffer_age);
void drm_surface_unset_current(struct wlr_drm_surface *surf);
void drm_fb_clear(struct wlr_drm_fb *fb);
bool drm_fb_lock_surface(struct wlr_drm_fb *fb, struct wlr_drm_backend *drm,
bool drm_fb_lock_surface(struct wlr_drm_fb **fb, struct wlr_drm_backend *drm,
struct wlr_drm_surface *surf, struct wlr_drm_surface *mgpu);
bool drm_fb_import(struct wlr_drm_fb *fb, struct wlr_drm_backend *drm,
bool drm_fb_import(struct wlr_drm_fb **fb, struct wlr_drm_backend *drm,
struct wlr_buffer *buf, struct wlr_drm_surface *mgpu,
struct wlr_drm_format_set *set);
void drm_fb_move(struct wlr_drm_fb *new, struct wlr_drm_fb *old);
void drm_fb_clear(struct wlr_drm_fb **fb);
void drm_fb_move(struct wlr_drm_fb **new, struct wlr_drm_fb **old);
bool drm_surface_render_black_frame(struct wlr_drm_surface *surf);