aboutsummaryrefslogtreecommitdiff
path: root/include/backend/drm
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2017-05-07 12:26:48 -0400
committerDrew DeVault <sir@cmpwn.com>2017-05-07 12:26:48 -0400
commit00931f2f8fa4098c5e70b5ececd6d2dcb8786f90 (patch)
tree45d3e79648d601161f483d3f66ac960851ba233f /include/backend/drm
parent15b1ce9e6ced22a90ab0df7a6b86c6d35c40ca93 (diff)
Generalize output handling
Diffstat (limited to 'include/backend/drm')
-rw-r--r--include/backend/drm/drm.h15
1 files changed, 8 insertions, 7 deletions
diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h
index 3e83058a..4b42aa68 100644
--- a/include/backend/drm/drm.h
+++ b/include/backend/drm/drm.h
@@ -12,7 +12,6 @@
struct wlr_drm_renderer {
int fd;
-
struct gbm_device *gbm;
struct wlr_egl egl;
};
@@ -26,15 +25,17 @@ enum wlr_drm_output_state {
DRM_OUTPUT_CONNECTED,
};
-struct wlr_drm_output {
+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;
char name[16];
- size_t num_modes;
- struct wlr_drm_mode *modes;
- struct wlr_drm_mode *active_mode;
-
uint32_t width;
uint32_t height;
@@ -49,7 +50,7 @@ struct wlr_drm_output {
bool cleanup;
};
-void wlr_drm_output_cleanup(struct wlr_drm_output *out, bool restore);
+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);