diff mbox series

[33/47] drm/i915/guc: Add disable interrupts to guc sanitize

Message ID 20210624070516.21893-34-matthew.brost@intel.com (mailing list archive)
State New, archived
Headers show
Series GuC submission support | expand

Commit Message

Matthew Brost June 24, 2021, 7:05 a.m. UTC
Add disable GuC interrupts to intel_guc_sanitize(). Part of this
requires moving the guc_*_interrupt wrapper function into header file
intel_guc.h.

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com
---
 drivers/gpu/drm/i915/gt/uc/intel_guc.h | 16 ++++++++++++++++
 drivers/gpu/drm/i915/gt/uc/intel_uc.c  | 21 +++------------------
 2 files changed, 19 insertions(+), 18 deletions(-)

Comments

John Harrison July 12, 2021, 8:11 p.m. UTC | #1
On 6/24/2021 00:05, Matthew Brost wrote:
> Add disable GuC interrupts to intel_guc_sanitize(). Part of this
> requires moving the guc_*_interrupt wrapper function into header file
> intel_guc.h.
>
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>
> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com
Reviewed-by: John Harrison <John.C.Harrison@Intel.com>

> ---
>   drivers/gpu/drm/i915/gt/uc/intel_guc.h | 16 ++++++++++++++++
>   drivers/gpu/drm/i915/gt/uc/intel_uc.c  | 21 +++------------------
>   2 files changed, 19 insertions(+), 18 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
> index 40c9868762d7..85ef6767f13b 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc.h
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
> @@ -217,9 +217,25 @@ static inline bool intel_guc_is_ready(struct intel_guc *guc)
>   	return intel_guc_is_fw_running(guc) && intel_guc_ct_enabled(&guc->ct);
>   }
>   
> +static inline void intel_guc_reset_interrupts(struct intel_guc *guc)
> +{
> +	guc->interrupts.reset(guc);
> +}
> +
> +static inline void intel_guc_enable_interrupts(struct intel_guc *guc)
> +{
> +	guc->interrupts.enable(guc);
> +}
> +
> +static inline void intel_guc_disable_interrupts(struct intel_guc *guc)
> +{
> +	guc->interrupts.disable(guc);
> +}
> +
>   static inline int intel_guc_sanitize(struct intel_guc *guc)
>   {
>   	intel_uc_fw_sanitize(&guc->fw);
> +	intel_guc_disable_interrupts(guc);
>   	intel_guc_ct_sanitize(&guc->ct);
>   	guc->mmio_msg = 0;
>   
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> index f0b02200aa01..ab11fe731ee7 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> @@ -207,21 +207,6 @@ static void guc_handle_mmio_msg(struct intel_guc *guc)
>   	spin_unlock_irq(&guc->irq_lock);
>   }
>   
> -static void guc_reset_interrupts(struct intel_guc *guc)
> -{
> -	guc->interrupts.reset(guc);
> -}
> -
> -static void guc_enable_interrupts(struct intel_guc *guc)
> -{
> -	guc->interrupts.enable(guc);
> -}
> -
> -static void guc_disable_interrupts(struct intel_guc *guc)
> -{
> -	guc->interrupts.disable(guc);
> -}
> -
>   static int guc_enable_communication(struct intel_guc *guc)
>   {
>   	struct intel_gt *gt = guc_to_gt(guc);
> @@ -242,7 +227,7 @@ static int guc_enable_communication(struct intel_guc *guc)
>   	guc_get_mmio_msg(guc);
>   	guc_handle_mmio_msg(guc);
>   
> -	guc_enable_interrupts(guc);
> +	intel_guc_enable_interrupts(guc);
>   
>   	/* check for CT messages received before we enabled interrupts */
>   	spin_lock_irq(&gt->irq_lock);
> @@ -265,7 +250,7 @@ static void guc_disable_communication(struct intel_guc *guc)
>   	 */
>   	guc_clear_mmio_msg(guc);
>   
> -	guc_disable_interrupts(guc);
> +	intel_guc_disable_interrupts(guc);
>   
>   	intel_guc_ct_disable(&guc->ct);
>   
> @@ -463,7 +448,7 @@ static int __uc_init_hw(struct intel_uc *uc)
>   	if (ret)
>   		goto err_out;
>   
> -	guc_reset_interrupts(guc);
> +	intel_guc_reset_interrupts(guc);
>   
>   	/* WaEnableuKernelHeaderValidFix:skl */
>   	/* WaEnableGuCBootHashCheckNotSet:skl,bxt,kbl */
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
index 40c9868762d7..85ef6767f13b 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
@@ -217,9 +217,25 @@  static inline bool intel_guc_is_ready(struct intel_guc *guc)
 	return intel_guc_is_fw_running(guc) && intel_guc_ct_enabled(&guc->ct);
 }
 
+static inline void intel_guc_reset_interrupts(struct intel_guc *guc)
+{
+	guc->interrupts.reset(guc);
+}
+
+static inline void intel_guc_enable_interrupts(struct intel_guc *guc)
+{
+	guc->interrupts.enable(guc);
+}
+
+static inline void intel_guc_disable_interrupts(struct intel_guc *guc)
+{
+	guc->interrupts.disable(guc);
+}
+
 static inline int intel_guc_sanitize(struct intel_guc *guc)
 {
 	intel_uc_fw_sanitize(&guc->fw);
+	intel_guc_disable_interrupts(guc);
 	intel_guc_ct_sanitize(&guc->ct);
 	guc->mmio_msg = 0;
 
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
index f0b02200aa01..ab11fe731ee7 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
@@ -207,21 +207,6 @@  static void guc_handle_mmio_msg(struct intel_guc *guc)
 	spin_unlock_irq(&guc->irq_lock);
 }
 
-static void guc_reset_interrupts(struct intel_guc *guc)
-{
-	guc->interrupts.reset(guc);
-}
-
-static void guc_enable_interrupts(struct intel_guc *guc)
-{
-	guc->interrupts.enable(guc);
-}
-
-static void guc_disable_interrupts(struct intel_guc *guc)
-{
-	guc->interrupts.disable(guc);
-}
-
 static int guc_enable_communication(struct intel_guc *guc)
 {
 	struct intel_gt *gt = guc_to_gt(guc);
@@ -242,7 +227,7 @@  static int guc_enable_communication(struct intel_guc *guc)
 	guc_get_mmio_msg(guc);
 	guc_handle_mmio_msg(guc);
 
-	guc_enable_interrupts(guc);
+	intel_guc_enable_interrupts(guc);
 
 	/* check for CT messages received before we enabled interrupts */
 	spin_lock_irq(&gt->irq_lock);
@@ -265,7 +250,7 @@  static void guc_disable_communication(struct intel_guc *guc)
 	 */
 	guc_clear_mmio_msg(guc);
 
-	guc_disable_interrupts(guc);
+	intel_guc_disable_interrupts(guc);
 
 	intel_guc_ct_disable(&guc->ct);
 
@@ -463,7 +448,7 @@  static int __uc_init_hw(struct intel_uc *uc)
 	if (ret)
 		goto err_out;
 
-	guc_reset_interrupts(guc);
+	intel_guc_reset_interrupts(guc);
 
 	/* WaEnableuKernelHeaderValidFix:skl */
 	/* WaEnableGuCBootHashCheckNotSet:skl,bxt,kbl */