[PATCH 2/2] drm/i915/gvt: Add GVT suspend/resume routine to i915.
Colin Xu
colin.xu at intel.com
Mon May 18 06:28:52 UTC 2020
Add GVT suspend/resume routine to i915.
GVT relies on i915 so suspend ahead of other i915 routine, and resume
at last vice versa.
Signed-off-by: Hang Yuan <hang.yuan at linux.intel.com>
Signed-off-by: Colin Xu <colin.xu at intel.com>
---
drivers/gpu/drm/i915/i915_drv.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 34ee12f3f02d..c5d7d58df67e 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -87,6 +87,10 @@
#include "intel_pm.h"
#include "vlv_suspend.h"
+#if IS_ENABLED(CONFIG_DRM_I915_GVT)
+#include "gvt.h"
+#endif
+
static struct drm_driver driver;
static int i915_get_bridge_dev(struct drm_i915_private *dev_priv)
@@ -1177,6 +1181,11 @@ static int i915_drm_suspend(struct drm_device *dev)
drm_kms_helper_poll_disable(dev);
+#if IS_ENABLED(CONFIG_DRM_I915_GVT)
+ if (dev_priv->gvt)
+ intel_gvt_pm_suspend(dev_priv->gvt);
+#endif
+
pci_save_state(pdev);
intel_display_suspend(dev);
@@ -1354,6 +1363,12 @@ static int i915_drm_resume(struct drm_device *dev)
intel_power_domains_enable(dev_priv);
+#if IS_ENABLED(CONFIG_DRM_I915_GVT)
+ if (dev_priv->gvt) {
+ return intel_gvt_pm_resume(dev_priv->gvt);
+ }
+#endif
+
enable_rpm_wakeref_asserts(&dev_priv->runtime_pm);
return 0;
--
2.26.2
More information about the intel-gvt-dev
mailing list