On 6/5/2026 6:04 PM, Jonathan Cavitt wrote:
> Update xe_heci_gsc.c to use the xe error reporting helper functions in
> xe_printk.h instead of directly calling the associated drm print
> functions from drm_print.h
> 
> Signed-off-by: Jonathan Cavitt <[email protected]>
> ---
>  drivers/gpu/drm/xe/xe_heci_gsc.c | 21 ++++++++++-----------
>  1 file changed, 10 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_heci_gsc.c 
> b/drivers/gpu/drm/xe/xe_heci_gsc.c
> index 5af8903e10af..d716371fbbe9 100644
> --- a/drivers/gpu/drm/xe/xe_heci_gsc.c
> +++ b/drivers/gpu/drm/xe/xe_heci_gsc.c
> @@ -8,10 +8,9 @@
>  #include <linux/pci.h>
>  #include <linux/sizes.h>
>  
> -#include <drm/drm_print.h>
> -
>  #include "xe_device_types.h"
>  #include "xe_heci_gsc.h"
> +#include "xe_printk.h"
>  #include "regs/xe_gsc_regs.h"

nit: this one is at wrong place
>  #include "xe_platform_types.h"

and xe_printk.h should be here

>  #include "xe_survivability_mode.h"
> @@ -112,13 +111,13 @@ static int heci_gsc_irq_setup(struct xe_device *xe)
>  
>       heci_gsc->irq = irq_alloc_desc(0);

nit: what about moving to devm_irq_alloc_desc() first?

>       if (heci_gsc->irq < 0) {
> -             drm_err(&xe->drm, "gsc irq error %d\n", heci_gsc->irq);
> +             xe_err(xe, "gsc irq error %d\n", heci_gsc->irq);

can we print error code in more friendly way using %pe

and I guess we should use "GSC" name, not "gsc", so maybe:

        xe_err(xe, "GSC: irq allocation failed (%pe)\n", ERR_PTR(..

>               return heci_gsc->irq;
>       }
>  
>       ret = heci_gsc_irq_init(heci_gsc->irq);
>       if (ret < 0)
> -             drm_err(&xe->drm, "gsc irq init failed %d\n", ret);
> +             xe_err(xe, "gsc irq init failed %d\n", ret);

        xe_err(xe, "GSC: irq initialization failed (%pe)\n", ERR_PTR(..

>  
>       return ret;
>  }
> @@ -151,7 +150,7 @@ static int heci_gsc_add_device(struct xe_device *xe, 
> const struct heci_gsc_def *
>  
>       ret = auxiliary_device_init(aux_dev);
>       if (ret < 0) {
> -             drm_err(&xe->drm, "gsc aux init failed %d\n", ret);
> +             xe_err(xe, "gsc aux init failed %d\n", ret);
>               kfree(adev);
>               return ret;
>       }
> @@ -159,7 +158,7 @@ static int heci_gsc_add_device(struct xe_device *xe, 
> const struct heci_gsc_def *
>       heci_gsc->adev = adev; /* needed by the notifier */
>       ret = auxiliary_device_add(aux_dev);
>       if (ret < 0) {
> -             drm_err(&xe->drm, "gsc aux add failed %d\n", ret);
> +             xe_err(xe, "gsc aux add failed %d\n", ret);
>               heci_gsc->adev = NULL;
>  
>               /* adev will be freed with the put_device() and .release 
> sequence */
> @@ -190,7 +189,7 @@ int xe_heci_gsc_init(struct xe_device *xe)
>       }
>  
>       if (!def || !def->name) {

missing def looks like our coding error, shouldn't we just use xe_assert()?

missing def->name is also our coding error,
we should have no runtime checks for it (except xe_assert)

> -             drm_warn(&xe->drm, "HECI is not implemented!\n");
> +             xe_warn(xe, "HECI is not implemented!\n");
>               return 0;
>       }
>  
> @@ -215,7 +214,7 @@ void xe_heci_gsc_irq_handler(struct xe_device *xe, u32 
> iir)
>               return;
>  
>       if (!xe->info.has_heci_gscfi) {
> -             drm_warn_once(&xe->drm, "GSC irq: not supported");
> +             xe_warn_once(xe, "GSC irq: not supported");

                xe_warn_once(xe, "GSC: unexpected irq %#x\n", iir);

>               return;
>       }
>  
> @@ -224,7 +223,7 @@ void xe_heci_gsc_irq_handler(struct xe_device *xe, u32 
> iir)
>  
>       ret = generic_handle_irq_safe(xe->heci_gsc.irq);
>       if (ret)
> -             drm_err_ratelimited(&xe->drm, "error handling GSC irq: %d\n", 
> ret);
> +             xe_err_ratelimited(xe, "error handling GSC irq: %d\n", ret);

                xe_err_ratelimited(xe, "GSC: irq handling failed (%pe)\n", 

>  }
>  
>  void xe_heci_csc_irq_handler(struct xe_device *xe, u32 iir)
> @@ -235,7 +234,7 @@ void xe_heci_csc_irq_handler(struct xe_device *xe, u32 
> iir)
>               return;
>  
>       if (!xe->info.has_heci_cscfi) {
> -             drm_warn_once(&xe->drm, "CSC irq: not supported");
> +             xe_warn_once(xe, "CSC irq: not supported");

                xe_warn_once(xe, "CSC: unexpected irq %#x\n", iir);

>               return;
>       }
>  
> @@ -244,5 +243,5 @@ void xe_heci_csc_irq_handler(struct xe_device *xe, u32 
> iir)
>  
>       ret = generic_handle_irq_safe(xe->heci_gsc.irq);
>       if (ret)
> -             drm_err_ratelimited(&xe->drm, "error handling GSC irq: %d\n", 
> ret);
> +             xe_err_ratelimited(xe, "error handling GSC irq: %d\n", ret);

GSC or CSC ? function is 'heci_csc'

>  }

Reply via email to