From 2b06f88f0b1e5784fa468feb71a7224bb9a55632 Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Sat, 10 Jun 2017 12:30:02 -0400 Subject: Combine internal DRM headers into one Everything always just included both anyway --- include/backend/drm.h | 93 +++++++++++++++++++++++++++++++++++++++++++ include/backend/drm/backend.h | 39 ------------------ include/backend/drm/drm.h | 65 ------------------------------ 3 files changed, 93 insertions(+), 104 deletions(-) create mode 100644 include/backend/drm.h delete mode 100644 include/backend/drm/backend.h delete mode 100644 include/backend/drm/drm.h (limited to 'include') diff --git a/include/backend/drm.h b/include/backend/drm.h new file mode 100644 index 00000000..e75dff27 --- /dev/null +++ b/include/backend/drm.h @@ -0,0 +1,93 @@ +#ifndef DRM_BACKEND_H +#define DRM_BACKEND_H + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include "backend/egl.h" +#include "backend/udev.h" +#include "event.h" +#include "drm.h" + +struct wlr_drm_renderer { + int fd; + struct gbm_device *gbm; + struct wlr_egl egl; +}; + +bool wlr_drm_renderer_init(struct wlr_drm_renderer *renderer, int fd); +void wlr_drm_renderer_free(struct wlr_drm_renderer *renderer); + +struct wlr_backend_state { + int fd; + dev_t dev; + + struct wlr_backend *backend; + struct wl_event_source *drm_event; + + struct wl_listener device_paused; + struct wl_listener device_resumed; + struct wl_listener drm_invalidated; + + uint32_t taken_crtcs; + list_t *outputs; + + struct wlr_drm_renderer renderer; + struct wlr_session *session; + struct wlr_udev *udev; +}; + +enum wlr_drm_output_state { + DRM_OUTPUT_DISCONNECTED, + DRM_OUTPUT_NEEDS_MODESET, + DRM_OUTPUT_CONNECTED, +}; + +struct wlr_output_mode_state { + struct wlr_wl_output_mode *wlr_mode; + drmModeModeInfo mode; +}; + +struct wlr_output_state { + struct wlr_output *wlr_output; + enum wlr_drm_output_state state; + uint32_t connector; + + struct { + uint32_t dpms; + } props; + + uint32_t width; + uint32_t height; + + uint32_t crtc; + drmModeCrtc *old_crtc; + + struct wlr_drm_renderer *renderer; + struct gbm_surface *gbm; + struct gbm_bo *bo_last; + struct gbm_bo *bo_current; + EGLSurface *egl; + + bool pageflip_pending; + bool cleanup; +}; + +void wlr_drm_output_cleanup(struct wlr_output_state *output, bool restore); + +void wlr_drm_scan_connectors(struct wlr_backend_state *state); +int wlr_drm_event(int fd, uint32_t mask, void *data); + +void wlr_drm_output_start_renderer(struct wlr_output_state *output); + +#endif diff --git a/include/backend/drm/backend.h b/include/backend/drm/backend.h deleted file mode 100644 index 3f0bce73..00000000 --- a/include/backend/drm/backend.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef DRM_BACKEND_H -#define DRM_BACKEND_H - -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include "backend.h" -#include "backend/udev.h" -#include "event.h" -#include "drm.h" - -struct wlr_backend_state { - int fd; - dev_t dev; - - struct wlr_backend *backend; - struct wl_event_source *drm_event; - - struct wl_listener device_paused; - struct wl_listener device_resumed; - struct wl_listener drm_invalidated; - - uint32_t taken_crtcs; - list_t *outputs; - - struct wlr_drm_renderer renderer; - struct wlr_session *session; - struct wlr_udev *udev; -}; - -#endif diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h deleted file mode 100644 index 443873fd..00000000 --- a/include/backend/drm/drm.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef DRM_H -#define DRM_H - -#include -#include -#include -#include -#include - -#include "backend/egl.h" -#include "backend.h" - -struct wlr_drm_renderer { - int fd; - struct gbm_device *gbm; - struct wlr_egl egl; -}; - -bool wlr_drm_renderer_init(struct wlr_drm_renderer *renderer, int fd); -void wlr_drm_renderer_free(struct wlr_drm_renderer *renderer); - -enum wlr_drm_output_state { - DRM_OUTPUT_DISCONNECTED, - DRM_OUTPUT_NEEDS_MODESET, - DRM_OUTPUT_CONNECTED, -}; - -struct wlr_output_mode_state { - struct wlr_wl_output_mode *wlr_mode; - drmModeModeInfo mode; -}; - -struct wlr_output_state { - struct wlr_output *wlr_output; - enum wlr_drm_output_state state; - uint32_t connector; - - struct { - uint32_t dpms; - } props; - - uint32_t width; - uint32_t height; - - uint32_t crtc; - drmModeCrtc *old_crtc; - - struct wlr_drm_renderer *renderer; - struct gbm_surface *gbm; - struct gbm_bo *bo_last; - struct gbm_bo *bo_current; - EGLSurface *egl; - - bool pageflip_pending; - bool cleanup; -}; - -void wlr_drm_output_cleanup(struct wlr_output_state *output, bool restore); - -void wlr_drm_scan_connectors(struct wlr_backend_state *state); -int wlr_drm_event(int fd, uint32_t mask, void *data); - -void wlr_drm_output_start_renderer(struct wlr_output_state *output); - -#endif -- cgit v1.2.3