[PATCH] drm/xe/gsc: Don't create mei-gscfi aux device while running in VF mode
Michal Wajdeczko
michal.wajdeczko at intel.com
Fri Aug 1 06:00:19 UTC 2025
On 8/1/2025 12:01 AM, Vivek Kasireddy wrote:
> While running in SR-IOV VF mode inside a Guest Virtual Machine (VM),
> we do not have to initialize and enable the mei-gscfi auxiliary
> device. This is because communication with the GSC/CSC firmware,
> which is the main purpose of the aux device, would not work in
> this mode (as relevant MMIO registers cannot be accessed), and
> can result in the following errors while loading the Xe driver:
>
> [ 762.274208] mei_gsc xe.mei-gscfi.24: H_RST is not set = 0x00000000
> [ 764.299203] mei_gsc xe.mei-gscfi.24: wait hw ready failed
> [ 764.300334] mei_gsc xe.mei-gscfi.24: hw_start failed ret = -62 fw status = 00000000 00000000 00000000 00000000 00000000 00000000
> [ 768.333706] mei_gsc xe.mei-gscfi.24: reset: reached maximal consecutive resets: disabling the device
> [ 768.334466] mei_gsc xe.mei-gscfi.24: reset failed ret = -19
> [ 768.334941] mei_gsc xe.mei-gscfi.24: link layer initialization failed.
> [ 768.335346] mei_gsc xe.mei-gscfi.24: init hw failure.
>
> Cc: Alexander Usyskin <alexander.usyskin at intel.com>
> Signed-off-by: Vivek Kasireddy <vivek.kasireddy at intel.com>
> ---
> v2: Reword commit message to clarify that the mei-gscfi aux device
> do not have to be created only while running in SR-IOV VF mode.
> ---
> drivers/gpu/drm/xe/xe_heci_gsc.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_heci_gsc.c b/drivers/gpu/drm/xe/xe_heci_gsc.c
> index 6d7b62724126..eb94fcb3f03b 100644
> --- a/drivers/gpu/drm/xe/xe_heci_gsc.c
> +++ b/drivers/gpu/drm/xe/xe_heci_gsc.c
> @@ -13,6 +13,7 @@
> #include "xe_heci_gsc.h"
> #include "regs/xe_gsc_regs.h"
> #include "xe_platform_types.h"
> +#include "xe_sriov.h"
> #include "xe_survivability_mode.h"
>
> #define GSC_BAR_LENGTH 0x00000FFC
> @@ -176,6 +177,9 @@ int xe_heci_gsc_init(struct xe_device *xe)
> if (!xe->info.has_heci_gscfi && !xe->info.has_heci_cscfi)
> return 0;
>
> + if (IS_SRIOV_VF(xe))
> + return 0;
> +
this shouldn't be needed any more after commit 552dbba1caaf
("drm/xe/vf: Disable CSC support on VF")
> heci_gsc->irq = -1;
>
> if (xe->info.platform == XE_BATTLEMAGE) {
More information about the Intel-xe
mailing list