Mesa (master): wgl: Implement get_adapter_luid callback

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Nov 18 10:43:32 UTC 2020


Module: Mesa
Branch: master
Commit: 3b034e97716f0862151e5a52610edfef46ad0b16
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3b034e97716f0862151e5a52610edfef46ad0b16

Author: Jesse Natalie <jenatali at ntdev.microsoft.com>
Date:   Tue Mar 17 14:48:12 2020 -0700

wgl: Implement get_adapter_luid callback

Reviewed-by: Charmaine Lee <charmainel at vmware.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7535>

---

 src/gallium/targets/libgl-d3d12/libgl_d3d12.c | 15 ++++++++++++++-
 src/gallium/targets/libgl-gdi/libgl_gdi.c     | 19 +++++++++++++++++++
 2 files changed, 33 insertions(+), 1 deletion(-)

diff --git a/src/gallium/targets/libgl-d3d12/libgl_d3d12.c b/src/gallium/targets/libgl-d3d12/libgl_d3d12.c
index 9f98c7f2437..6a284e4a77c 100644
--- a/src/gallium/targets/libgl-d3d12/libgl_d3d12.c
+++ b/src/gallium/targets/libgl-d3d12/libgl_d3d12.c
@@ -89,10 +89,23 @@ gdi_present(struct pipe_screen *screen,
 }
 
 
+static boolean
+gdi_get_adapter_luid(struct pipe_screen *screen,
+                     HDC hDC,
+                     LUID *adapter_luid)
+{
+   if (!stw_dev || !stw_dev->callbacks.pfnGetAdapterLuid)
+      return false;
+
+   stw_dev->callbacks.pfnGetAdapterLuid(hDC, adapter_luid);
+   return true;
+}
+
+
 static const struct stw_winsys stw_winsys = {
    &gdi_screen_create,
    &gdi_present,
-   NULL, /* get_adapter_luid */
+   &gdi_get_adapter_luid,
    NULL, /* shared_surface_open */
    NULL, /* shared_surface_close */
    NULL  /* compose */
diff --git a/src/gallium/targets/libgl-gdi/libgl_gdi.c b/src/gallium/targets/libgl-gdi/libgl_gdi.c
index 4813e252402..b34181dce2f 100644
--- a/src/gallium/targets/libgl-gdi/libgl_gdi.c
+++ b/src/gallium/targets/libgl-gdi/libgl_gdi.c
@@ -208,10 +208,29 @@ gdi_present(struct pipe_screen *screen,
 }
 
 
+#if WINVER >= 0xA00
+static boolean
+gdi_get_adapter_luid(struct pipe_screen* screen,
+   HDC hDC,
+   LUID* adapter_luid)
+{
+   if (!stw_dev || !stw_dev->callbacks.pfnGetAdapterLuid)
+      return false;
+
+   stw_dev->callbacks.pfnGetAdapterLuid(hDC, adapter_luid);
+   return true;
+}
+#endif
+
+
 static const struct stw_winsys stw_winsys = {
    &gdi_screen_create,
    &gdi_present,
+#if WINVER >= 0xA00
+   &gdi_get_adapter_luid,
+#else
    NULL, /* get_adapter_luid */
+#endif
    NULL, /* shared_surface_open */
    NULL, /* shared_surface_close */
    NULL  /* compose */



More information about the mesa-commit mailing list