[PATCH] drm/xe: Use fixed CCS mode when running in SR-IOV mode
Lucas De Marchi
lucas.demarchi at intel.com
Thu Jun 13 20:51:53 UTC 2024
On Thu, Jun 13, 2024 at 03:54:45PM GMT, Michal Wajdeczko wrote:
>We don't support changing CCS mode when running in SR-IOV mode yet.
>When running as a PF driver just apply default ccs_mode=1 that VF
>drivers will assume as already applied and fixed.
>
>Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
>---
> drivers/gpu/drm/xe/xe_gt_ccs_mode.c | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
>diff --git a/drivers/gpu/drm/xe/xe_gt_ccs_mode.c b/drivers/gpu/drm/xe/xe_gt_ccs_mode.c
>index 5d4cdbd69bc3..aea49253d9c9 100644
>--- a/drivers/gpu/drm/xe/xe_gt_ccs_mode.c
>+++ b/drivers/gpu/drm/xe/xe_gt_ccs_mode.c
>@@ -12,6 +12,7 @@
> #include "xe_gt_printk.h"
> #include "xe_gt_sysfs.h"
> #include "xe_mmio.h"
>+#include "xe_sriov.h"
>
> static void __xe_gt_apply_ccs_mode(struct xe_gt *gt, u32 num_engines)
> {
>@@ -75,7 +76,7 @@ static void __xe_gt_apply_ccs_mode(struct xe_gt *gt, u32 num_engines)
>
> void xe_gt_apply_ccs_mode(struct xe_gt *gt)
> {
>- if (!gt->ccs_mode)
>+ if (!gt->ccs_mode || IS_SRIOV_VF(gt_to_xe(gt)))
> return;
>
> __xe_gt_apply_ccs_mode(gt, gt->ccs_mode);
>@@ -110,6 +111,12 @@ ccs_mode_store(struct device *kdev, struct device_attribute *attr,
> u32 num_engines, num_slices;
> int ret;
>
>+ if (IS_SRIOV(xe)) {
>+ xe_gt_dbg(gt, "Can't change compute mode when running as %s\n",
>+ xe_sriov_mode_to_string(xe_device_sriov_mode(xe)));
>+ return -EPERM;
EPERM? I'd expect ENOTSUPP
Lucas De Marchi
>+ }
>+
> ret = kstrtou32(buff, 0, &num_engines);
> if (ret)
> return ret;
>--
>2.43.0
>
More information about the Intel-xe
mailing list