[Intel-gfx] [PATCH 1/2] [i915] add module param "force_dp_sst"

Nathan Schulte nmschulte at gmail.com
Thu Mar 10 23:43:23 UTC 2016


Adds an (unsafe; auto-kernel-tainting) boolean module parameter to the i915
drm driver: "force_dp_sst", which is disabled by default.  Enabling the
parameter forces newly connected DisplayPort sinks to report as not
supporting multi-stream transport (MST), thus "forcing" the use of
single-stream transport (SST).
---
 drivers/gpu/drm/i915/i915_drv.h    | 1 +
 drivers/gpu/drm/i915/i915_params.c | 5 +++++
 drivers/gpu/drm/i915/intel_dp.c    | 3 +++
 3 files changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index b0847b9..515e335 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2701,6 +2701,7 @@ struct i915_params {
 	int guc_log_level;
 	int use_mmio_flip;
 	int mmio_debug;
+	bool force_dp_sst;
 	bool verbose_state_checks;
 	bool nuclear_pageflip;
 	int edp_vswing;
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
index 835d609..cc2aaf3 100644
--- a/drivers/gpu/drm/i915/i915_params.c
+++ b/drivers/gpu/drm/i915/i915_params.c
@@ -51,6 +51,7 @@ struct i915_params i915 __read_mostly = {
 	.disable_vtd_wa = 0,
 	.use_mmio_flip = 0,
 	.mmio_debug = 0,
+	.force_dp_sst = false,
 	.verbose_state_checks = 1,
 	.nuclear_pageflip = 0,
 	.edp_vswing = 0,
@@ -181,6 +182,10 @@ MODULE_PARM_DESC(mmio_debug,
 	"Enable the MMIO debug code for the first N failures (default: off). "
 	"This may negatively affect performance.");
 
+module_param_named_unsafe(force_dp_sst, i915.force_dp_sst, bool, 0600);
+MODULE_PARM_DESC(force_dp_sst,
+	"Force single-stream transport (SST; disable MST) for new DisplayPort sinks (default: false). ");
+
 module_param_named(verbose_state_checks, i915.verbose_state_checks, bool, 0600);
 MODULE_PARM_DESC(verbose_state_checks,
 	"Enable verbose logs (ie. WARN_ON()) in case of unexpected hw state conditions.");
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index 1d8de43..4c4725e 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -3969,6 +3969,9 @@ intel_dp_probe_mst(struct intel_dp *intel_dp)
 {
 	u8 buf[1];
 
+	if (i915.force_dp_sst)
+		return false;
+
 	if (!intel_dp->can_mst)
 		return false;
 
-- 
2.7.0



More information about the Intel-gfx mailing list