diff options
author | Philipp Zabel <p.zabel@pengutronix.de> | 2016-06-14 13:11:25 +0200 |
---|---|---|
committer | Philipp Zabel <p.zabel@pengutronix.de> | 2016-06-14 16:56:44 +0200 |
commit | c4491dee3b8449f285eb6a81f6ba518883f91040 (patch) | |
tree | ebd0d7968429028455bd5019e1f0ecd2e7883a8a | |
parent | 12ffd6f02982ed192c5757d4b35627569c3eab5f (diff) | |
download | kmsfbwrap-c4491dee3b8449f285eb6a81f6ba518883f91040.tar.gz kmsfbwrap-c4491dee3b8449f285eb6a81f6ba518883f91040.tar.xz |
find partial modes
This allows to let "-w yres=1080" find an 1920x1080 mode if available,
for example.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
-rw-r--r-- | src/kmsfb-manage.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/kmsfb-manage.c b/src/kmsfb-manage.c index 9cb493c..88f2172 100644 --- a/src/kmsfb-manage.c +++ b/src/kmsfb-manage.c @@ -313,8 +313,9 @@ static struct drm_mode_modeinfo *drm_find_mode(struct drm_connector *con, for (i = 0; i < con->num_modes; i++) { struct drm_mode_modeinfo *mode = &con->modes[i]; - if (((mode->hdisplay == xres && mode->vdisplay == yres) || - (!xres && !yres)) && (!fps || mode->vrefresh == fps)) + if ((!xres || mode->hdisplay == xres) && + (!yres || mode->vdisplay == yres) && + (!fps || mode->vrefresh == fps)) return mode; } |