]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/{i915, xe}/display: Move dsm registration under intel_driver
authorRodrigo Vivi <rodrigo.vivi@intel.com>
Mon, 17 Feb 2025 20:01:33 +0000 (15:01 -0500)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Tue, 18 Feb 2025 23:03:18 +0000 (18:03 -0500)
Move dsm register/unregister calls from the drivers to under
intel_display_driver register/unregister.

v2: Rebase only

Reviewed-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250217200133.741758-1-rodrigo.vivi@intel.com
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/display/intel_display_driver.c
drivers/gpu/drm/i915/i915_driver.c
drivers/gpu/drm/xe/display/xe_display.c

index 1aa0b298c278d402852199800c3efc7df384b93f..20104c88ffdb2865622c77f26f565a53387a4255 100644 (file)
@@ -566,6 +566,8 @@ void intel_display_driver_register(struct intel_display *display)
 
        intel_display_device_info_print(DISPLAY_INFO(display),
                                        DISPLAY_RUNTIME_INFO(display), &p);
+
+       intel_register_dsm_handler();
 }
 
 /* part #1: call before irq uninstall */
@@ -643,6 +645,8 @@ void intel_display_driver_unregister(struct intel_display *display)
        if (!HAS_DISPLAY(display))
                return;
 
+       intel_unregister_dsm_handler();
+
        drm_client_dev_unregister(display->drm);
 
        /*
index c2ae37d6b94d59c5e3ae7004c83db3ff8d00631a..ce163f58fd766c83aa191f4cdc1c97caef83bfca 100644 (file)
@@ -46,7 +46,6 @@
 #include <drm/drm_probe_helper.h>
 
 #include "display/i9xx_display_sr.h"
-#include "display/intel_acpi.h"
 #include "display/intel_bw.h"
 #include "display/intel_cdclk.h"
 #include "display/intel_crtc.h"
@@ -657,8 +656,6 @@ static void i915_driver_register(struct drm_i915_private *dev_priv)
        intel_power_domains_enable(display);
        intel_runtime_pm_enable(&dev_priv->runtime_pm);
 
-       intel_register_dsm_handler();
-
        if (i915_switcheroo_register(dev_priv))
                drm_err(&dev_priv->drm, "Failed to register vga switcheroo!\n");
 }
@@ -675,8 +672,6 @@ static void i915_driver_unregister(struct drm_i915_private *dev_priv)
 
        i915_switcheroo_unregister(dev_priv);
 
-       intel_unregister_dsm_handler();
-
        intel_runtime_pm_disable(&dev_priv->runtime_pm);
        intel_power_domains_disable(display);
 
index ac0804726e550cb360ad7d15d6514fbb35b19c23..215a50061485a151f30b9c4665e1df6808026e4c 100644 (file)
@@ -196,7 +196,6 @@ void xe_display_register(struct xe_device *xe)
 
        intel_display_driver_register(display);
        intel_power_domains_enable(display);
-       intel_register_dsm_handler();
 }
 
 void xe_display_unregister(struct xe_device *xe)
@@ -206,7 +205,6 @@ void xe_display_unregister(struct xe_device *xe)
        if (!xe->info.probe_display)
                return;
 
-       intel_unregister_dsm_handler();
        intel_power_domains_disable(display);
        intel_display_driver_unregister(display);
 }