Mesa (main): vulkan/wsi: add drm_fd param to wsi_display_get_connector

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Jun 24 16:13:32 UTC 2021


Module: Mesa
Branch: main
Commit: fdf22aad739fdb9575e6839646dc3e948c5b40fc
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fdf22aad739fdb9575e6839646dc3e948c5b40fc

Author: Simon Zeni <simon at bl4ckb0ne.ca>
Date:   Tue Jun 15 11:05:05 2021 -0400

vulkan/wsi: add drm_fd param to wsi_display_get_connector

Modifies the signature on `wsi_display_get_connector` to retrieve the
connector of an arbitrary DRM FD instead of the one taken from the
wsi_display.

Signed-off-by: Simon Zeni <simon at bl4ckb0ne.ca>
Reviewed-by: Simon Ser <contact at emersion.fr>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11014>

---

 src/vulkan/wsi/wsi_common_display.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/vulkan/wsi/wsi_common_display.c b/src/vulkan/wsi/wsi_common_display.c
index e25dc1a3f64..24c206069c2 100644
--- a/src/vulkan/wsi/wsi_common_display.c
+++ b/src/vulkan/wsi/wsi_common_display.c
@@ -282,16 +282,17 @@ wsi_display_alloc_connector(struct wsi_display *wsi,
 
 static struct wsi_display_connector *
 wsi_display_get_connector(struct wsi_device *wsi_device,
+                          int drm_fd,
                           uint32_t connector_id)
 {
    struct wsi_display *wsi =
       (struct wsi_display *) wsi_device->wsi[VK_ICD_WSI_PLATFORM_DISPLAY];
 
-   if (wsi->fd < 0)
+   if (drm_fd < 0)
       return NULL;
 
    drmModeConnectorPtr drm_connector =
-      drmModeGetConnector(wsi->fd, connector_id);
+      drmModeGetConnector(drm_fd, connector_id);
 
    if (!drm_connector)
       return NULL;
@@ -314,7 +315,7 @@ wsi_display_get_connector(struct wsi_device *wsi_device,
    for (int p = 0; connector->dpms_property == 0 &&
            p < drm_connector->count_props; p++)
    {
-      drmModePropertyPtr prop = drmModeGetProperty(wsi->fd,
+      drmModePropertyPtr prop = drmModeGetProperty(drm_fd,
                                                    drm_connector->props[p]);
       if (!prop)
          continue;
@@ -480,7 +481,8 @@ wsi_display_get_physical_device_display_properties2(
 
    for (int c = 0; c < mode_res->count_connectors; c++) {
       struct wsi_display_connector *connector =
-         wsi_display_get_connector(wsi_device, mode_res->connectors[c]);
+         wsi_display_get_connector(wsi_device, wsi->fd,
+               mode_res->connectors[c]);
 
       if (!connector) {
          drmModeFreeResources(mode_res);



More information about the mesa-commit mailing list