[Intel-xe] [PATCH] drm/xe: do not register to PM if GuC is disabled
Ohad Sharabi
osharabi at habana.ai
Thu Sep 28 13:56:21 UTC 2023
When working without GuC (i.e. working with execlists), the flow
attempts to perform suspend operation which is failing due to a
lack of support without GuC.
If PM ops are not supported without GuC we may as well avoid PM
registration rather than returning errors from various PM flows.
Signed-off-by: Ohad Sharabi <osharabi at habana.ai>
---
drivers/gpu/drm/xe/xe_gt.c | 4 ----
drivers/gpu/drm/xe/xe_pm.c | 4 ++++
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
index 1aa44d4f9ac1..68cd9a7ee087 100644
--- a/drivers/gpu/drm/xe/xe_gt.c
+++ b/drivers/gpu/drm/xe/xe_gt.c
@@ -641,10 +641,6 @@ int xe_gt_suspend(struct xe_gt *gt)
{
int err;
- /* For now suspend/resume is only allowed with GuC */
- if (!xe_device_uc_enabled(gt_to_xe(gt)))
- return -ENODEV;
-
xe_gt_sanitize(gt);
xe_device_mem_access_get(gt_to_xe(gt));
diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
index ad3c08c4ff22..e31a91cf311c 100644
--- a/drivers/gpu/drm/xe/xe_pm.c
+++ b/drivers/gpu/drm/xe/xe_pm.c
@@ -167,6 +167,10 @@ void xe_pm_init(struct xe_device *xe)
{
struct pci_dev *pdev = to_pci_dev(xe->drm.dev);
+ /* For now suspend/resume is only allowed with GuC */
+ if (!xe_device_uc_enabled(xe))
+ return;
+
drmm_mutex_init(&xe->drm, &xe->d3cold.lock);
xe->d3cold.capable = xe_pm_pci_d3cold_capable(pdev);
--
2.34.1
More information about the Intel-xe
mailing list