wlroots0.17: update to 0.17.2.
This commit is contained in:
parent
1de09433e6
commit
5c47bfbff0
|
@ -1,65 +0,0 @@
|
||||||
From f81c3d93cd6f61b20ae784297679283438def8df Mon Sep 17 00:00:00 2001
|
|
||||||
From: Simon Ser <contact@emersion.fr>
|
|
||||||
Date: Sat, 30 Dec 2023 20:06:33 +0100
|
|
||||||
Subject: [PATCH] backend/drm: save current refresh rate
|
|
||||||
|
|
||||||
wlr_output.refresh is populated by core wlr_output, and thus will
|
|
||||||
be zero for a custom mode with an unset refresh rate.
|
|
||||||
|
|
||||||
Save the refresh rate from the drmModeModeInfo in wlr_drm_connector
|
|
||||||
instead.
|
|
||||||
|
|
||||||
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3791
|
|
||||||
---
|
|
||||||
backend/drm/drm.c | 7 ++++++-
|
|
||||||
include/backend/drm/drm.h | 2 ++
|
|
||||||
2 files changed, 8 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
|
|
||||||
index b630c9dd2..9c4f569cf 100644
|
|
||||||
--- a/backend/drm/drm.c
|
|
||||||
+++ b/backend/drm/drm.c
|
|
||||||
@@ -475,6 +475,10 @@ static bool drm_crtc_commit(struct wlr_drm_connector *conn,
|
|
||||||
}
|
|
||||||
|
|
||||||
drm_connector_set_pending_page_flip(conn, page_flip);
|
|
||||||
+
|
|
||||||
+ if (state->base->committed & WLR_OUTPUT_STATE_MODE) {
|
|
||||||
+ conn->refresh = calculate_refresh_rate(&state->mode);
|
|
||||||
+ }
|
|
||||||
} else {
|
|
||||||
// The set_cursor() hook is a bit special: it's not really synchronized
|
|
||||||
// to commit() or test(). Once set_cursor() returns true, the new
|
|
||||||
@@ -1466,6 +1470,7 @@ static bool connect_drm_connector(struct wlr_drm_connector *wlr_conn,
|
|
||||||
wlr_conn->crtc->props.mode_id, &mode_id);
|
|
||||||
|
|
||||||
wlr_conn->crtc->mode_id = mode_id;
|
|
||||||
+ wlr_conn->refresh = calculate_refresh_rate(current_modeinfo);
|
|
||||||
}
|
|
||||||
|
|
||||||
wlr_log(WLR_INFO, " %"PRId32"x%"PRId32" @ %.3f Hz %s",
|
|
||||||
@@ -1765,7 +1770,7 @@ static void handle_page_flip(int fd, unsigned seq,
|
|
||||||
.presented = drm->session->active,
|
|
||||||
.when = &present_time,
|
|
||||||
.seq = seq,
|
|
||||||
- .refresh = mhz_to_nsec(conn->output.refresh),
|
|
||||||
+ .refresh = mhz_to_nsec(conn->refresh),
|
|
||||||
.flags = present_flags,
|
|
||||||
};
|
|
||||||
wlr_output_send_present(&conn->output, &present_event);
|
|
||||||
diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h
|
|
||||||
index 88eacc6e9..39a247b1f 100644
|
|
||||||
--- a/include/backend/drm/drm.h
|
|
||||||
+++ b/include/backend/drm/drm.h
|
|
||||||
@@ -175,6 +175,8 @@ struct wlr_drm_connector {
|
|
||||||
|
|
||||||
// Last committed page-flip
|
|
||||||
struct wlr_drm_page_flip *pending_page_flip;
|
|
||||||
+
|
|
||||||
+ int32_t refresh;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct wlr_drm_backend *get_drm_backend_from_backend(
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Template file for 'wlroots0.17'
|
# Template file for 'wlroots0.17'
|
||||||
pkgname=wlroots0.17
|
pkgname=wlroots0.17
|
||||||
version=0.17.1
|
version=0.17.2
|
||||||
revision=4
|
revision=1
|
||||||
build_style=meson
|
build_style=meson
|
||||||
# Follow upstream packaging recommendations:
|
# Follow upstream packaging recommendations:
|
||||||
# https://gitlab.freedesktop.org/wlroots/wlroots/-/wikis/Packaging-recommendations
|
# https://gitlab.freedesktop.org/wlroots/wlroots/-/wikis/Packaging-recommendations
|
||||||
|
@ -20,7 +20,7 @@ maintainer="Andrew J. Hesford <ajh@sideband.org>"
|
||||||
license="MIT"
|
license="MIT"
|
||||||
homepage="https://gitlab.freedesktop.org/wlroots/wlroots"
|
homepage="https://gitlab.freedesktop.org/wlroots/wlroots"
|
||||||
distfiles="${homepage}/-/releases/${version}/downloads/wlroots-${version}.tar.gz"
|
distfiles="${homepage}/-/releases/${version}/downloads/wlroots-${version}.tar.gz"
|
||||||
checksum=d58d68e3f90d92de4d49fa43b4d75dc78f8af1d920d090729331cefbdfcf361b
|
checksum=f4007d3f71e190b9000ab4a30afd87833b034ab2602030a00af4465ffd4e997c
|
||||||
|
|
||||||
post_install() {
|
post_install() {
|
||||||
vlicense LICENSE
|
vlicense LICENSE
|
||||||
|
|
Loading…
Reference in New Issue