Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5bedeb2d authored by Daniel Vetter's avatar Daniel Vetter
Browse files

drm/i915: Add module param to test the load detect code



This is useful for writing igts to make sure we don't break this,
without being forced to own a one of these dinosaurs.

Suggested-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
Cc: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
Reviewed-by: default avatarAnder Conselvan de Oliveira <conselvan2@gmail.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 55bb9992
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2462,6 +2462,7 @@ struct i915_params {
	bool enable_hangcheck;
	bool fastboot;
	bool prefault_disable;
	bool load_detect_test;
	bool reset;
	bool disable_display;
	bool disable_vtd_wa;
+7 −1
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ struct i915_params i915 __read_mostly = {
	.enable_ips = 1,
	.fastboot = 0,
	.prefault_disable = 0,
	.load_detect_test = 0,
	.reset = true,
	.invert_brightness = 0,
	.disable_display = 0,
@@ -139,11 +140,16 @@ module_param_named(fastboot, i915.fastboot, bool, 0600);
MODULE_PARM_DESC(fastboot,
	"Try to skip unnecessary mode sets at boot time (default: false)");

module_param_named(prefault_disable, i915.prefault_disable, bool, 0600);
module_param_named_unsafe(prefault_disable, i915.prefault_disable, bool, 0600);
MODULE_PARM_DESC(prefault_disable,
	"Disable page prefaulting for pread/pwrite/reloc (default:false). "
	"For developers only.");

module_param_named_unsafe(load_detect_test, i915.load_detect_test, bool, 0600);
MODULE_PARM_DESC(load_detect_test,
	"Force-enable the VGA load detect code for testing (default:false). "
	"For developers only.");

module_param_named(invert_brightness, i915.invert_brightness, int, 0600);
MODULE_PARM_DESC(invert_brightness,
	"Invert backlight brightness "
+4 −2
Original line number Diff line number Diff line
@@ -690,7 +690,7 @@ intel_crt_detect(struct drm_connector *connector, bool force)
	 * broken monitor (without edid) to work behind a broken kvm (that fails
	 * to have the right resistors for HP detection) needs to fix this up.
	 * For now just bail out. */
	if (I915_HAS_HOTPLUG(dev)) {
	if (I915_HAS_HOTPLUG(dev) && !i915.load_detect_test) {
		status = connector_status_disconnected;
		goto out;
	}
@@ -706,8 +706,10 @@ intel_crt_detect(struct drm_connector *connector, bool force)
	if (intel_get_load_detect_pipe(connector, NULL, &tmp, &ctx)) {
		if (intel_crt_detect_ddc(connector))
			status = connector_status_connected;
		else
		else if (INTEL_INFO(dev)->gen < 4)
			status = intel_crt_load_detect(crt);
		else
			status = connector_status_unknown;
		intel_release_load_detect_pipe(connector, &tmp, &ctx);
	} else
		status = connector_status_unknown;