@@ -2053,6 +2053,7 @@ struct i915_params {
bool reset;
bool disable_display;
bool disable_vtd_wa;
+ int scheduler_override;
};
extern struct i915_params i915 __read_mostly;
@@ -48,6 +48,7 @@ struct i915_params i915 __read_mostly = {
.disable_display = 0,
.enable_cmd_parser = 1,
.disable_vtd_wa = 0,
+ .scheduler_override = 0,
};
module_param_named(modeset, i915.modeset, int, 0400);
@@ -156,3 +157,6 @@ MODULE_PARM_DESC(disable_vtd_wa, "Disable all VT-d workarounds (default: false)"
module_param_named(enable_cmd_parser, i915.enable_cmd_parser, int, 0600);
MODULE_PARM_DESC(enable_cmd_parser,
"Enable command parsing (1=enabled [default], 0=disabled)");
+
+module_param_named(scheduler_override, i915.scheduler_override, int, 0600);
+MODULE_PARM_DESC(scheduler_override, "Scheduler override option (default: 0)");
@@ -84,6 +84,11 @@ struct i915_scheduler {
uint32_t index;
};
+/* Options for 'scheduler_override' module parameter: */
+enum {
+ i915_so_normal = 0,
+};
+
int i915_scheduler_fly_seqno(struct intel_engine_cs *ring, uint32_t seqno);
int i915_scheduler_remove(struct intel_engine_cs *ring);
int i915_scheduler_flush(struct intel_engine_cs *ring, bool is_locked);
From: John Harrison <John.C.Harrison@Intel.com> It can be useful to be able to disable certain features (e.g. the entire scheduler) via a module parameter for debugging purposes. A parameter has the advantage of not being a compile time switch but without implying that it can be changed dynamically at runtime. --- drivers/gpu/drm/i915/i915_drv.h | 1 + drivers/gpu/drm/i915/i915_params.c | 4 ++++ drivers/gpu/drm/i915/i915_scheduler.h | 5 +++++ 3 files changed, 10 insertions(+)