aboutsummaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2021-01-15 21:50:17 +0100
committerSimon Ser <contact@emersion.fr>2021-01-17 12:42:32 +0100
commitf17b0f975d271a2c001627fe47af9a5b8800c774 (patch)
tree33885c62026693b0e6a0316bd6fda57d388923a2 /backend
parentcb6f58449683f7b30a6a8718bac5475c39b291d8 (diff)
backend/drm: add wlr_drm_connector_get_id
This allows a compositor to get a KMS connector object ID from a wlr_output. The compositor can then query more information about the connector via libdrm. This gives more freedom to compositors and allows them to read KMS properties that wlroots doesn't know about. For instance, they could read the EDID or the suggested_{X,Y} properties and change their output configuration based on that.
Diffstat (limited to 'backend')
-rw-r--r--backend/drm/drm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
index 0bf51209..99520143 100644
--- a/backend/drm/drm.c
+++ b/backend/drm/drm.c
@@ -1046,6 +1046,11 @@ bool wlr_output_is_drm(struct wlr_output *output) {
return output->impl == &output_impl;
}
+uint32_t wlr_drm_connector_get_id(struct wlr_output *output) {
+ struct wlr_drm_connector *conn = get_drm_connector_from_output(output);
+ return conn->id;
+}
+
static const int32_t subpixel_map[] = {
[DRM_MODE_SUBPIXEL_UNKNOWN] = WL_OUTPUT_SUBPIXEL_UNKNOWN,
[DRM_MODE_SUBPIXEL_HORIZONTAL_RGB] = WL_OUTPUT_SUBPIXEL_HORIZONTAL_RGB,