aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2019-10-26 22:35:51 +0200
committerDrew DeVault <sir@cmpwn.com>2019-10-27 10:46:47 -0400
commit0e57effd38d4566d6245d8b9f985c5af923472f3 (patch)
treebf6ace0d48262ba0a7ab3d4b72aee71417887377 /include
parente97c2c3639119831ced4f6b9f704b096c2075973 (diff)
backend/drm: add support for custom modes
Use the CVT algorithm to create a drmModeModeInfo.
Diffstat (limited to 'include')
-rw-r--r--include/backend/drm/cvt.h13
-rw-r--r--include/wlr/backend/drm.h3
2 files changed, 15 insertions, 1 deletions
diff --git a/include/backend/drm/cvt.h b/include/backend/drm/cvt.h
new file mode 100644
index 00000000..34db5384
--- /dev/null
+++ b/include/backend/drm/cvt.h
@@ -0,0 +1,13 @@
+#ifndef BACKEND_DRM_CVT_H
+#define BACKEND_DRM_CVT_H
+
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <xf86drmMode.h>
+
+void generate_cvt_mode(drmModeModeInfo *mode, int hdisplay, int vdisplay,
+ float vrefresh, bool reduced, bool interlaced);
+
+#endif
diff --git a/include/wlr/backend/drm.h b/include/wlr/backend/drm.h
index e4b5e2d1..c1380323 100644
--- a/include/wlr/backend/drm.h
+++ b/include/wlr/backend/drm.h
@@ -32,6 +32,7 @@ bool wlr_output_is_drm(struct wlr_output *output);
* Add mode to the list of available modes
*/
typedef struct _drmModeModeInfo drmModeModeInfo;
-bool wlr_drm_connector_add_mode(struct wlr_output *output, const drmModeModeInfo *mode);
+struct wlr_output_mode *wlr_drm_connector_add_mode(struct wlr_output *output,
+ const drmModeModeInfo *mode);
#endif