Due to the upcoming changes to the GuC ABI interface, we must
disable GuC submission mode until final ABI will be available
on all GuC firmwares.

To avoid regressions on systems configured to run with no longer
supported configuration "enable_guc=3" or "enable_guc=1" clear
GuC submission bit.

v2: force switch to non-GuC submission mode

Signed-off-by: Michal Wajdeczko <[email protected]>
Cc: Joonas Lahtinen <[email protected]>
Cc: Chris Wilson <[email protected]>
Cc: Rodrigo Vivi <[email protected]>
Cc: Daniele Ceraolo Spurio <[email protected]>
Cc: John Spotswood <[email protected]>
Cc: Vinay Belgaumkar <[email protected]>
Cc: Tony Ye <[email protected]>
Cc: Anusha Srivatsa <[email protected]>
Cc: Jeff Mcgee <[email protected]>
Cc: Antonio Argenziano <[email protected]>
Cc: Sujaritha Sundaresan <[email protected]>
Cc: Martin Peres <[email protected]>
---
 drivers/gpu/drm/i915/intel_uc.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_uc.c b/drivers/gpu/drm/i915/intel_uc.c
index 2a56e2363888..9eadd21299ca 100644
--- a/drivers/gpu/drm/i915/intel_uc.c
+++ b/drivers/gpu/drm/i915/intel_uc.c
@@ -130,6 +130,15 @@ static void sanitize_options_early(struct drm_i915_private 
*i915)
                                          "no HuC firmware");
        }
 
+       /* XXX: GuC submission is unavailable for now */
+       if (intel_uc_is_using_guc_submission(i915)) {
+               DRM_INFO("Incompatible option detected: %s=%d, %s!\n",
+                        "enable_guc", i915_modparams.enable_guc,
+                        "GuC submission not supported");
+               DRM_INFO("Switching to non-GuC submission mode!\n");
+               i915_modparams.enable_guc &= ~ENABLE_GUC_SUBMISSION;
+       }
+
        /* A negative value means "use platform/config default" */
        if (i915_modparams.guc_log_level < 0)
                i915_modparams.guc_log_level =
@@ -286,6 +295,10 @@ int intel_uc_init(struct drm_i915_private *i915)
        if (!HAS_GUC(i915))
                return -ENODEV;
 
+       /* XXX: GuC submission is unavailable for now */
+       if (USES_GUC_SUBMISSION(i915))
+               return -EIO;
+
        ret = intel_guc_init(guc);
        if (ret)
                return ret;
-- 
2.19.2

_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to