Commit d3414acf authored by Michal Wajdeczko's avatar Michal Wajdeczko
Browse files

drm/xe/vf: Don't try Driver-FLR if VF



Driver-FLR can't be triggered from the VF driver, so treat it
as disabled if VF. While around, fix also the message, as it
shouldn't be printed just 'once' as we may have many devices.

Signed-off-by: default avatarMichal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: default avatarHimal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Reviewed-by: default avatarMatt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250311135726.1998-2-michal.wajdeczko@intel.com
parent de35cc27
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -496,7 +496,15 @@ ALLOW_ERROR_INJECTION(xe_device_create, ERRNO); /* See xe_pci_probe() */

static bool xe_driver_flr_disabled(struct xe_device *xe)
{
	return xe_mmio_read32(xe_root_tile_mmio(xe), GU_CNTL_PROTECTED) & DRIVERINT_FLR_DIS;
	if (IS_SRIOV_VF(xe))
		return true;

	if (xe_mmio_read32(xe_root_tile_mmio(xe), GU_CNTL_PROTECTED) & DRIVERINT_FLR_DIS) {
		drm_info(&xe->drm, "Driver-FLR disabled by BIOS\n");
		return true;
	}

	return false;
}

/*
@@ -560,10 +568,8 @@ static void __xe_driver_flr(struct xe_device *xe)

static void xe_driver_flr(struct xe_device *xe)
{
	if (xe_driver_flr_disabled(xe)) {
		drm_info_once(&xe->drm, "BIOS Disabled Driver-FLR\n");
	if (xe_driver_flr_disabled(xe))
		return;
	}

	__xe_driver_flr(xe);
}