[mutter] cursor-renderer/native: Refactor init to per-gpu



commit 4cc29cfb619102a8e7cd32731205c8018d83544e
Author: Pekka Paalanen <pekka paalanen collabora com>
Date:   Mon Feb 24 15:13:42 2020 +0200

    cursor-renderer/native: Refactor init to per-gpu
    
    Extract the code to initialize a single GPU cursor support into its own
    function. The new function will be used by GPU hotplug in the future.
    
    This is a pure refactoring without any behavioral changes.
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/1097

 src/backends/native/meta-cursor-renderer-native.c | 45 +++++++++++++----------
 1 file changed, 26 insertions(+), 19 deletions(-)
---
diff --git a/src/backends/native/meta-cursor-renderer-native.c 
b/src/backends/native/meta-cursor-renderer-native.c
index 39ebe646f..cf500f07c 100644
--- a/src/backends/native/meta-cursor-renderer-native.c
+++ b/src/backends/native/meta-cursor-renderer-native.c
@@ -1601,6 +1601,31 @@ on_monitors_changed (MetaMonitorManager       *monitors,
   force_update_hw_cursor (native);
 }
 
+static void
+init_hw_cursor_support_for_gpu (MetaGpuKms *gpu_kms)
+{
+  MetaKmsDevice *kms_device = meta_gpu_kms_get_kms_device (gpu_kms);
+  MetaCursorRendererNativeGpuData *cursor_renderer_gpu_data;
+  struct gbm_device *gbm_device;
+  uint64_t width, height;
+
+  gbm_device = meta_gbm_device_from_gpu (gpu_kms);
+  if (!gbm_device)
+    return;
+
+  cursor_renderer_gpu_data =
+    meta_create_cursor_renderer_native_gpu_data (gpu_kms);
+
+  if (!meta_kms_device_get_cursor_size (kms_device, &width, &height))
+    {
+      width = 64;
+      height = 64;
+    }
+
+  cursor_renderer_gpu_data->cursor_width = width;
+  cursor_renderer_gpu_data->cursor_height = height;
+}
+
 static void
 init_hw_cursor_support (MetaCursorRendererNative *cursor_renderer_native)
 {
@@ -1613,26 +1638,8 @@ init_hw_cursor_support (MetaCursorRendererNative *cursor_renderer_native)
   for (l = gpus; l; l = l->next)
     {
       MetaGpuKms *gpu_kms = l->data;
-      MetaKmsDevice *kms_device = meta_gpu_kms_get_kms_device (gpu_kms);
-      MetaCursorRendererNativeGpuData *cursor_renderer_gpu_data;
-      struct gbm_device *gbm_device;
-      uint64_t width, height;
-
-      gbm_device = meta_gbm_device_from_gpu (gpu_kms);
-      if (!gbm_device)
-        continue;
-
-      cursor_renderer_gpu_data =
-        meta_create_cursor_renderer_native_gpu_data (gpu_kms);
-
-      if (!meta_kms_device_get_cursor_size (kms_device, &width, &height))
-        {
-          width = 64;
-          height = 64;
-        }
 
-      cursor_renderer_gpu_data->cursor_width = width;
-      cursor_renderer_gpu_data->cursor_height = height;
+      init_hw_cursor_support_for_gpu (gpu_kms);
     }
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]