summaryrefslogtreecommitdiff
path: root/src/config/ConfigManager.hpp
diff options
context:
space:
mode:
authorAndrei Alexeyev <akari@taisei-project.org>2023-05-09 15:01:45 +0200
committerGitHub <noreply@github.com>2023-05-09 14:01:45 +0100
commit2f87e4c2f3bccf33bfffcd8d9822b81f41a47a3e (patch)
tree272531afecf8560bc33fb388958f23502fa48061 /src/config/ConfigManager.hpp
parente7c2ea9724ef11038b14367587d9b4987708b1d1 (diff)
renderer,config: add custom DRM modeline support (#2254)
This allows specifying custom display resolutions for the DRM backend. This is useful for display overclocking, working around broken EDIDs, etc. To use this feature, specify a modeline instead of a resolution in the config, for example: monitor = DP-1, modeline 1071.101 3840 3848 3880 3920 2160 2263 2271 2277 +hsync -vsync, 0x0, 1 This example is a custom 3840x2160@120Hz mode with tightened timings. I use it because the standard timings don't work with my monitor and GPU combination (M28U with RX580). The syntax is compatible with Sway and Xorg.
Diffstat (limited to 'src/config/ConfigManager.hpp')
-rw-r--r--src/config/ConfigManager.hpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/config/ConfigManager.hpp b/src/config/ConfigManager.hpp
index 1d35e9dd..ea824a32 100644
--- a/src/config/ConfigManager.hpp
+++ b/src/config/ConfigManager.hpp
@@ -11,6 +11,7 @@
#include <algorithm>
#include <regex>
#include <optional>
+#include <xf86drmMode.h>
#include "../Window.hpp"
#include "../helpers/WLClasses.hpp"
@@ -44,6 +45,7 @@ struct SMonitorRule {
wl_output_transform transform = WL_OUTPUT_TRANSFORM_NORMAL;
std::string mirrorOf = "";
bool enable10bit = false;
+ drmModeModeInfo drmMode = {};
};
struct SWorkspaceRule {