drm/vmwgfx: Print capabilities early during the initialization
authorZack Rusin <zackr@vmware.com>
Wed, 2 Mar 2022 15:24:21 +0000 (10:24 -0500)
committerZack Rusin <zackr@vmware.com>
Fri, 11 Mar 2022 18:29:33 +0000 (13:29 -0500)
Capabilities were logged at the end of initialization so any early errors
would make them not appear in the logs. Which is also when they're needed
the most.
Print the the capabilities right after fetching them, before the init
code starts using them to make sure they always show up in the logs.

Signed-off-by: Zack Rusin <zackr@vmware.com>
Reviewed-by: Martin Krastev <krastevm@vmware.com>
Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220302152426.885214-4-zack@kde.org
drivers/gpu/drm/vmwgfx/vmwgfx_drv.c

index 621231c..f43afd5 100644 (file)
@@ -848,12 +848,16 @@ static int vmw_driver_load(struct vmw_private *dev_priv, u32 pci_id)
 
 
        dev_priv->capabilities = vmw_read(dev_priv, SVGA_REG_CAPABILITIES);
-
+       vmw_print_bitmap(&dev_priv->drm, "Capabilities",
+                        dev_priv->capabilities,
+                        cap1_names, ARRAY_SIZE(cap1_names));
        if (dev_priv->capabilities & SVGA_CAP_CAP2_REGISTER) {
                dev_priv->capabilities2 = vmw_read(dev_priv, SVGA_REG_CAP2);
+               vmw_print_bitmap(&dev_priv->drm, "Capabilities2",
+                                dev_priv->capabilities2,
+                                cap2_names, ARRAY_SIZE(cap2_names));
        }
 
-
        ret = vmw_dma_select_mode(dev_priv);
        if (unlikely(ret != 0)) {
                drm_info(&dev_priv->drm,
@@ -939,14 +943,6 @@ static int vmw_driver_load(struct vmw_private *dev_priv, u32 pci_id)
                 "MOB limits: max mob size = %u kB, max mob pages = %u\n",
                 dev_priv->max_mob_size / 1024, dev_priv->max_mob_pages);
 
-       vmw_print_bitmap(&dev_priv->drm, "Capabilities",
-                        dev_priv->capabilities,
-                        cap1_names, ARRAY_SIZE(cap1_names));
-       if (dev_priv->capabilities & SVGA_CAP_CAP2_REGISTER)
-               vmw_print_bitmap(&dev_priv->drm, "Capabilities2",
-                                dev_priv->capabilities2,
-                                cap2_names, ARRAY_SIZE(cap2_names));
-
        ret = vmw_dma_masks(dev_priv);
        if (unlikely(ret != 0))
                goto out_err0;