Unverified Commit ceb33b9d authored by Rodrigo Vivi's avatar Rodrigo Vivi
Browse files

drm/{i915, xe}/display: Move dsm registration under intel_driver



Move dsm register/unregister calls from the drivers to under
intel_display_driver register/unregister.

v2: Rebase only

Reviewed-by: default avatarJonathan Cavitt <jonathan.cavitt@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250217200133.741758-1-rodrigo.vivi@intel.com


Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
parent eb79d71e
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -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);

	/*
+0 −5
Original line number Diff line number Diff line
@@ -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);

+0 −2
Original line number Diff line number Diff line
@@ -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);
}