From 7b91939d9e2387c4b1705fc6fb0dc541810cd23c Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Thu, 26 Jun 2025 13:15:49 +0200 Subject: [PATCH] output, backend/drm: add desired luminances to wlr_output --- backend/drm/util.c | 3 +++ include/wlr/types/wlr_output.h | 1 + 2 files changed, 4 insertions(+) diff --git a/backend/drm/util.c b/backend/drm/util.c index 76276849d..e0d3c03a3 100644 --- a/backend/drm/util.c +++ b/backend/drm/util.c @@ -110,6 +110,9 @@ void parse_edid(struct wlr_drm_connector *conn, size_t len, const uint8_t *data) if (conn->props.hdr_output_metadata != 0 && hdr_static_metadata->type1 && hdr_static_metadata->pq) { output->supported_transfer_functions |= WLR_COLOR_TRANSFER_FUNCTION_ST2084_PQ; } + output->min_luminance = hdr_static_metadata->desired_content_min_luminance; + output->max_luminance = hdr_static_metadata->desired_content_max_luminance; + output->max_fall = hdr_static_metadata->desired_content_max_frame_avg_luminance; di_info_destroy(info); } diff --git a/include/wlr/types/wlr_output.h b/include/wlr/types/wlr_output.h index 634b8498b..63903c499 100644 --- a/include/wlr/types/wlr_output.h +++ b/include/wlr/types/wlr_output.h @@ -198,6 +198,7 @@ struct wlr_output { uint32_t supported_transfer_functions; // bitfield of enum wlr_color_transfer_function const struct wlr_color_primaries *color_primaries; // NULL if unset + float min_luminance, max_luminance, max_fall; // cd/m², zero if unset bool enabled; float scale;