Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Michal Wajdeczko <michal.wajdeczko@intel.com>,
	intel-xe@lists.freedesktop.org
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Subject: Re: [PATCH 1/5] drm/xe: Keep all defaults in single header
Date: Tue, 03 Feb 2026 13:13:30 +0200	[thread overview]
Message-ID: <716600dcc0dd91626f45eed2faadc6d80d456de9@intel.com> (raw)
In-Reply-To: <20260121214218.2817-2-michal.wajdeczko@intel.com>

On Wed, 21 Jan 2026, Michal Wajdeczko <michal.wajdeczko@intel.com> wrote:
> We already have most of Xe defaults defined in xe_module.c,
> where we use them for the modparam initializations, but some
> were defined elsewhere, which breaks the consistency.
>
> Introduce xe_defaults.h file, that will act as a placeholder
> for all our default values, and can be used from other places.
>
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
> ---
>  drivers/gpu/drm/xe/xe_defaults.h     | 25 +++++++++++++++++
>  drivers/gpu/drm/xe/xe_device.c       |  3 +-
>  drivers/gpu/drm/xe/xe_device_types.h |  3 --
>  drivers/gpu/drm/xe/xe_module.c       | 42 ++++++++++------------------
>  4 files changed, 41 insertions(+), 32 deletions(-)
>  create mode 100644 drivers/gpu/drm/xe/xe_defaults.h
>
> diff --git a/drivers/gpu/drm/xe/xe_defaults.h b/drivers/gpu/drm/xe/xe_defaults.h
> new file mode 100644
> index 000000000000..9183d05b96e1
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_defaults.h
> @@ -0,0 +1,25 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2026 Intel Corporation
> + */
> +#ifndef _XE_DEFAULTS_H_
> +#define _XE_DEFAULTS_H_
> +
> +#include "xe_device_types.h"

What part of this header depends on xe_device_types.h?

> +
> +#if IS_ENABLED(CONFIG_DRM_XE_DEBUG)
> +#define XE_DEFAULT_GUC_LOG_LEVEL		3
> +#else
> +#define XE_DEFAULT_GUC_LOG_LEVEL		1
> +#endif
> +
> +#define XE_DEFAULT_PROBE_DISPLAY		true
> +#define XE_DEFAULT_VRAM_BAR_SIZE		0
> +#define XE_DEFAULT_FORCE_PROBE			CONFIG_DRM_XE_FORCE_PROBE
> +#define XE_DEFAULT_MAX_VFS			~0
> +#define XE_DEFAULT_MAX_VFS_STR			"unlimited"
> +#define XE_DEFAULT_WEDGED_MODE			XE_WEDGED_MODE_UPON_CRITICAL_ERROR
> +#define XE_DEFAULT_WEDGED_MODE_STR		"upon-critical-error"
> +#define XE_DEFAULT_SVM_NOTIFIER_SIZE		512
> +
> +#endif
> diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> index aad4aa53a51f..17f4d048c8b9 100644
> --- a/drivers/gpu/drm/xe/xe_device.c
> +++ b/drivers/gpu/drm/xe/xe_device.c
> @@ -26,6 +26,7 @@
>  #include "xe_bo.h"
>  #include "xe_bo_evict.h"
>  #include "xe_debugfs.h"
> +#include "xe_defaults.h"
>  #include "xe_devcoredump.h"
>  #include "xe_device_sysfs.h"
>  #include "xe_dma_buf.h"
> @@ -743,7 +744,7 @@ int xe_device_probe_early(struct xe_device *xe)
>  	assert_lmem_ready(xe);
>  
>  	xe->wedged.mode = xe_device_validate_wedged_mode(xe, xe_modparam.wedged_mode) ?
> -			  XE_WEDGED_MODE_DEFAULT : xe_modparam.wedged_mode;
> +			  XE_DEFAULT_WEDGED_MODE : xe_modparam.wedged_mode;
>  	drm_dbg(&xe->drm, "wedged_mode: setting mode (%u) %s\n",
>  		xe->wedged.mode, xe_wedged_mode_to_string(xe->wedged.mode));
>  
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index 34feef79fa4e..b4600c5069a9 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -62,9 +62,6 @@ enum xe_wedged_mode {
>  	XE_WEDGED_MODE_UPON_ANY_HANG_NO_RESET = 2,
>  };
>  
> -#define XE_WEDGED_MODE_DEFAULT		XE_WEDGED_MODE_UPON_CRITICAL_ERROR
> -#define XE_WEDGED_MODE_DEFAULT_STR	"upon-critical-error"
> -
>  #define XE_BO_INVALID_OFFSET	LONG_MAX
>  
>  #define GRAPHICS_VER(xe) ((xe)->info.graphics_verx100 / 100)
> diff --git a/drivers/gpu/drm/xe/xe_module.c b/drivers/gpu/drm/xe/xe_module.c
> index a0048f64ed12..903d3b433421 100644
> --- a/drivers/gpu/drm/xe/xe_module.c
> +++ b/drivers/gpu/drm/xe/xe_module.c
> @@ -10,6 +10,7 @@
>  
>  #include <drm/drm_module.h>
>  
> +#include "xe_defaults.h"
>  #include "xe_device_types.h"
>  #include "xe_drv.h"
>  #include "xe_configfs.h"
> @@ -19,51 +20,36 @@
>  #include "xe_observation.h"
>  #include "xe_sched_job.h"
>  
> -#if IS_ENABLED(CONFIG_DRM_XE_DEBUG)
> -#define DEFAULT_GUC_LOG_LEVEL		3
> -#else
> -#define DEFAULT_GUC_LOG_LEVEL		1
> -#endif
> -
> -#define DEFAULT_PROBE_DISPLAY		true
> -#define DEFAULT_VRAM_BAR_SIZE		0
> -#define DEFAULT_FORCE_PROBE		CONFIG_DRM_XE_FORCE_PROBE
> -#define DEFAULT_MAX_VFS			~0
> -#define DEFAULT_MAX_VFS_STR		"unlimited"
> -#define DEFAULT_WEDGED_MODE		XE_WEDGED_MODE_DEFAULT
> -#define DEFAULT_WEDGED_MODE_STR		XE_WEDGED_MODE_DEFAULT_STR
> -#define DEFAULT_SVM_NOTIFIER_SIZE	512
> -
>  struct xe_modparam xe_modparam = {
> -	.probe_display =	DEFAULT_PROBE_DISPLAY,
> -	.guc_log_level =	DEFAULT_GUC_LOG_LEVEL,
> -	.force_probe =		DEFAULT_FORCE_PROBE,
> +	.probe_display =	XE_DEFAULT_PROBE_DISPLAY,
> +	.guc_log_level =	XE_DEFAULT_GUC_LOG_LEVEL,
> +	.force_probe =		XE_DEFAULT_FORCE_PROBE,
>  #ifdef CONFIG_PCI_IOV
> -	.max_vfs =		DEFAULT_MAX_VFS,
> +	.max_vfs =		XE_DEFAULT_MAX_VFS,
>  #endif
> -	.wedged_mode =		DEFAULT_WEDGED_MODE,
> -	.svm_notifier_size =	DEFAULT_SVM_NOTIFIER_SIZE,
> +	.wedged_mode =		XE_DEFAULT_WEDGED_MODE,
> +	.svm_notifier_size =	XE_DEFAULT_SVM_NOTIFIER_SIZE,
>  	/* the rest are 0 by default */
>  };
>  
>  module_param_named(svm_notifier_size, xe_modparam.svm_notifier_size, uint, 0600);
>  MODULE_PARM_DESC(svm_notifier_size, "Set the svm notifier size in MiB, must be power of 2 "
> -		 "[default=" __stringify(DEFAULT_SVM_NOTIFIER_SIZE) "]");
> +		 "[default=" __stringify(XE_DEFAULT_SVM_NOTIFIER_SIZE) "]");
>  
>  module_param_named_unsafe(force_execlist, xe_modparam.force_execlist, bool, 0444);
>  MODULE_PARM_DESC(force_execlist, "Force Execlist submission");
>  
>  module_param_named(probe_display, xe_modparam.probe_display, bool, 0444);
>  MODULE_PARM_DESC(probe_display, "Probe display HW, otherwise it's left untouched "
> -		 "[default=" __stringify(DEFAULT_PROBE_DISPLAY) "])");
> +		 "[default=" __stringify(XE_DEFAULT_PROBE_DISPLAY) "])");
>  
>  module_param_named(vram_bar_size, xe_modparam.force_vram_bar_size, int, 0600);
>  MODULE_PARM_DESC(vram_bar_size, "Set the vram bar size in MiB (<0=disable-resize, 0=max-needed-size, >0=force-size "
> -		 "[default=" __stringify(DEFAULT_VRAM_BAR_SIZE) "])");
> +		 "[default=" __stringify(XE_DEFAULT_VRAM_BAR_SIZE) "])");
>  
>  module_param_named(guc_log_level, xe_modparam.guc_log_level, int, 0600);
>  MODULE_PARM_DESC(guc_log_level, "GuC firmware logging level (0=disable, 1=normal, 2..5=verbose-levels "
> -		 "[default=" __stringify(DEFAULT_GUC_LOG_LEVEL) "])");
> +		 "[default=" __stringify(XE_DEFAULT_GUC_LOG_LEVEL) "])");
>  
>  module_param_named_unsafe(guc_firmware_path, xe_modparam.guc_firmware_path, charp, 0400);
>  MODULE_PARM_DESC(guc_firmware_path,
> @@ -80,20 +66,20 @@ MODULE_PARM_DESC(gsc_firmware_path,
>  module_param_named_unsafe(force_probe, xe_modparam.force_probe, charp, 0400);
>  MODULE_PARM_DESC(force_probe,
>  		 "Force probe options for specified devices. See CONFIG_DRM_XE_FORCE_PROBE for details "
> -		 "[default=" DEFAULT_FORCE_PROBE "])");
> +		 "[default=" XE_DEFAULT_FORCE_PROBE "])");
>  
>  #ifdef CONFIG_PCI_IOV
>  module_param_named(max_vfs, xe_modparam.max_vfs, uint, 0400);
>  MODULE_PARM_DESC(max_vfs,
>  		 "Limit number of Virtual Functions (VFs) that could be managed. "
>  		 "(0=no VFs; N=allow up to N VFs "
> -		 "[default=" DEFAULT_MAX_VFS_STR "])");
> +		 "[default=" XE_DEFAULT_MAX_VFS_STR "])");
>  #endif
>  
>  module_param_named_unsafe(wedged_mode, xe_modparam.wedged_mode, uint, 0600);
>  MODULE_PARM_DESC(wedged_mode,
>  		 "Module's default policy for the wedged mode (0=never, 1=upon-critical-error, 2=upon-any-hang-no-reset "
> -		 "[default=" DEFAULT_WEDGED_MODE_STR "])");
> +		 "[default=" XE_DEFAULT_WEDGED_MODE_STR "])");
>  
>  static int xe_check_nomodeset(void)
>  {

-- 
Jani Nikula, Intel

  parent reply	other threads:[~2026-02-03 11:13 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-21 21:42 [PATCH 0/5] drm/xe/configfs: Add sriov.admin_only_pf attribute Michal Wajdeczko
2026-01-21 21:42 ` [PATCH 1/5] drm/xe: Keep all defaults in single header Michal Wajdeczko
2026-01-23 10:29   ` Piotr Piórkowski
2026-02-03  0:11   ` Rodrigo Vivi
2026-02-03 11:13   ` Jani Nikula [this message]
2026-02-03 14:58     ` Michal Wajdeczko
2026-01-21 21:42 ` [PATCH 2/5] drm/xe/configfs: Use proper notation for local include Michal Wajdeczko
2026-01-23 10:29   ` Piotr Piórkowski
2026-01-21 21:42 ` [PATCH 3/5] drm/xe/configfs: Always return consistent max_vfs value Michal Wajdeczko
2026-01-28 15:51   ` Piotr Piórkowski
2026-01-21 21:42 ` [PATCH 4/5] drm/xe/pf: Define admin_only as real flag Michal Wajdeczko
2026-01-27 21:05   ` [PATCH v2 " Michal Wajdeczko
2026-01-28 15:56     ` Piotr Piórkowski
2026-01-21 21:42 ` [PATCH 5/5] drm/xe/configfs: Add sriov.admin_only_pf attribute Michal Wajdeczko
2026-01-28 16:35   ` Piotr Piórkowski
2026-01-28 23:42     ` Michal Wajdeczko
2026-01-21 22:25 ` ✗ CI.checkpatch: warning for " Patchwork
2026-01-21 22:26 ` ✗ CI.KUnit: failure " Patchwork
2026-01-27 21:34 ` ✗ CI.checkpatch: warning for drm/xe/configfs: Add sriov.admin_only_pf attribute (rev2) Patchwork
2026-01-27 21:35 ` ✓ CI.KUnit: success " Patchwork
2026-01-27 22:33 ` ✓ Xe.CI.BAT: " Patchwork
2026-01-28  6:46 ` ✓ Xe.CI.Full: " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=716600dcc0dd91626f45eed2faadc6d80d456de9@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=michal.wajdeczko@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox