All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Cache DisplayPort link signal levels
@ 2016-04-20 10:21 Mika Kahola
  2016-04-20 13:56 ` ✗ Fi.CI.BAT: failure for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Mika Kahola @ 2016-04-20 10:21 UTC (permalink / raw)
  To: intel-gfx

Cache DisplayPort signal levels including voltage swing and
pre-emphasis. After resume, the DP link is re-trained by trying
previusly computed voltage swing and pre-emphasis. In case, we
are not able to train the link by using these settings, the link
training is restarted. Now, the link is trained until the signal
levels of previus link training is achieved and clock recovery
is achieved.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91393
Signed-off-by: Mika Kahola <mika.kahola@intel.com>
---
 drivers/gpu/drm/i915/intel_dp.c               | 1 +
 drivers/gpu/drm/i915/intel_dp_link_training.c | 7 ++++++-
 drivers/gpu/drm/i915/intel_drv.h              | 1 +
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index a3fc494..bb44a7c 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -3622,6 +3622,7 @@ intel_dp_set_signal_levels(struct intel_dp *intel_dp)
 			DP_TRAIN_PRE_EMPHASIS_SHIFT);
 
 	intel_dp->DP = (intel_dp->DP & ~mask) | signal_levels;
+	intel_dp->signal_levels = signal_levels;
 
 	I915_WRITE(intel_dp->output_reg, intel_dp->DP);
 	POSTING_READ(intel_dp->output_reg);
diff --git a/drivers/gpu/drm/i915/intel_dp_link_training.c b/drivers/gpu/drm/i915/intel_dp_link_training.c
index 0b8eefc..05d450d 100644
--- a/drivers/gpu/drm/i915/intel_dp_link_training.c
+++ b/drivers/gpu/drm/i915/intel_dp_link_training.c
@@ -149,6 +149,8 @@ intel_dp_link_training_clock_recovery(struct intel_dp *intel_dp)
 	loop_tries = 0;
 	for (;;) {
 		uint8_t link_status[DP_LINK_STATUS_SIZE];
+		DRM_DEBUG_KMS("signal levels (target/current): %.8x/%.8x\n",
+			      intel_dp->target_signal_levels, intel_dp->signal_levels);
 
 		drm_dp_link_train_clock_recovery_delay(intel_dp->dpcd);
 		if (!intel_dp_get_link_status(intel_dp, link_status)) {
@@ -156,7 +158,8 @@ intel_dp_link_training_clock_recovery(struct intel_dp *intel_dp)
 			break;
 		}
 
-		if (drm_dp_clock_recovery_ok(link_status, intel_dp->lane_count)) {
+		if (drm_dp_clock_recovery_ok(link_status, intel_dp->lane_count) &&
+			intel_dp->signal_levels >= intel_dp->target_signal_levels) {
 			DRM_DEBUG_KMS("clock recovery OK\n");
 			break;
 		}
@@ -324,6 +327,8 @@ intel_dp_link_training_channel_equalization(struct intel_dp *intel_dp)
 
 	if (channel_eq) {
 		intel_dp->train_set_valid = true;
+		intel_dp->target_signal_levels = max(intel_dp->signal_levels,
+						     intel_dp->target_signal_levels);
 		DRM_DEBUG_KMS("Channel EQ done. DP Training successful\n");
 	}
 }
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index beed9e8..e58f3935 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -859,6 +859,7 @@ struct intel_dp {
 	void (*prepare_link_retrain)(struct intel_dp *intel_dp);
 
 	bool train_set_valid;
+	uint32_t signal_levels, target_signal_levels;
 
 	/* Displayport compliance testing */
 	unsigned long compliance_test_type;
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* ✗ Fi.CI.BAT: failure for drm/i915: Cache DisplayPort link signal levels
  2016-04-20 10:21 [PATCH] drm/i915: Cache DisplayPort link signal levels Mika Kahola
@ 2016-04-20 13:56 ` Patchwork
  2016-04-22 16:53 ` ✓ Fi.CI.BAT: success " Patchwork
  2016-04-24 13:51 ` Patchwork
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2016-04-20 13:56 UTC (permalink / raw)
  To: Mika Kahola; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Cache DisplayPort link signal levels
URL   : https://patchwork.freedesktop.org/series/5973/
State : failure

== Summary ==

Series 5973v1 drm/i915: Cache DisplayPort link signal levels
http://patchwork.freedesktop.org/api/1.0/series/5973/revisions/1/mbox/

Test drv_module_reload_basic:
                pass       -> DMESG-FAIL (snb-dellxps)
Test gem_busy:
        Subgroup basic-bsd1:
                skip       -> INCOMPLETE (snb-dellxps)
Test gem_exec_nop:
        Subgroup basic:
                pass       -> FAIL       (snb-dellxps)
Test gem_exec_store:
        Subgroup basic-all:
                pass       -> FAIL       (snb-dellxps)
Test gem_exec_suspend:
        Subgroup basic:
                pass       -> FAIL       (snb-dellxps)
        Subgroup basic-s3:
                dmesg-warn -> PASS       (bsw-nuc-2)
        Subgroup basic-s4:
                skip       -> FAIL       (snb-dellxps)
Test gem_sync:
        Subgroup basic-all:
                pass       -> FAIL       (snb-dellxps)
        Subgroup basic-blt:
                pass       -> FAIL       (snb-dellxps)
        Subgroup basic-default:
                pass       -> FAIL       (snb-dellxps)
Test kms_frontbuffer_tracking:
        Subgroup basic:
                pass       -> FAIL       (snb-dellxps)
Test kms_pipe_crc_basic:
        Subgroup suspend-read-crc-pipe-c:
                pass       -> DMESG-WARN (bsw-nuc-2)
                skip       -> DMESG-FAIL (snb-dellxps)

bdw-nuci7        total:192  pass:180  dwarn:0   dfail:0   fail:0   skip:12 
bsw-nuc-2        total:191  pass:151  dwarn:1   dfail:0   fail:0   skip:39 
byt-nuc          total:191  pass:153  dwarn:0   dfail:0   fail:0   skip:38 
hsw-brixbox      total:192  pass:168  dwarn:0   dfail:0   fail:0   skip:24 
hsw-gt2          total:192  pass:173  dwarn:0   dfail:0   fail:0   skip:19 
ilk-hp8440p      total:192  pass:135  dwarn:0   dfail:0   fail:0   skip:57 
ivb-t430s        total:192  pass:164  dwarn:0   dfail:0   fail:0   skip:28 
skl-i7k-2        total:192  pass:167  dwarn:0   dfail:0   fail:0   skip:25 
skl-nuci5        total:192  pass:181  dwarn:0   dfail:0   fail:0   skip:11 
snb-dellxps      total:83   pass:61   dwarn:0   dfail:2   fail:8   skip:11 
snb-x220t failed to collect. IGT log at Patchwork_1954/snb-x220t/igt.log

Results at /archive/results/CI_IGT_test/Patchwork_1954/

16dfbb643433f63a34f226eb1f3d9f509cba9c1b drm-intel-nightly: 2016y-04m-20d-12h-50m-59s UTC integration manifest
ee6a7c9 drm/i915: Cache DisplayPort link signal levels

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

* ✓ Fi.CI.BAT: success for drm/i915: Cache DisplayPort link signal levels
  2016-04-20 10:21 [PATCH] drm/i915: Cache DisplayPort link signal levels Mika Kahola
  2016-04-20 13:56 ` ✗ Fi.CI.BAT: failure for " Patchwork
@ 2016-04-22 16:53 ` Patchwork
  2016-04-24 13:51 ` Patchwork
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2016-04-22 16:53 UTC (permalink / raw)
  To: Mika Kahola; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Cache DisplayPort link signal levels
URL   : https://patchwork.freedesktop.org/series/5973/
State : success

== Summary ==

Series 5973v1 drm/i915: Cache DisplayPort link signal levels
http://patchwork.freedesktop.org/api/1.0/series/5973/revisions/1/mbox/


bdw-nuci7        total:193  pass:181  dwarn:0   dfail:0   fail:0   skip:12 
bdw-ultra        total:193  pass:170  dwarn:0   dfail:0   fail:0   skip:23 
bsw-nuc-2        total:192  pass:153  dwarn:0   dfail:0   fail:0   skip:39 
byt-nuc          total:192  pass:154  dwarn:0   dfail:0   fail:0   skip:38 
hsw-brixbox      total:193  pass:169  dwarn:0   dfail:0   fail:0   skip:24 
hsw-gt2          total:193  pass:174  dwarn:0   dfail:0   fail:0   skip:19 
ilk-hp8440p      total:193  pass:136  dwarn:0   dfail:0   fail:0   skip:57 
ivb-t430s        total:193  pass:165  dwarn:0   dfail:0   fail:0   skip:28 
skl-i7k-2        total:193  pass:168  dwarn:0   dfail:0   fail:0   skip:25 
skl-nuci5        total:193  pass:182  dwarn:0   dfail:0   fail:0   skip:11 
snb-dellxps      total:193  pass:155  dwarn:0   dfail:0   fail:0   skip:38 
snb-x220t        total:193  pass:155  dwarn:0   dfail:0   fail:1   skip:37 

Results at /archive/results/CI_IGT_test/Patchwork_1999/

43973a44fd376caef9419c7abb460b47520a1734 drm-intel-nightly: 2016y-04m-22d-13h-33m-45s UTC integration manifest
1351b37 drm/i915: Cache DisplayPort link signal levels

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

* ✓ Fi.CI.BAT: success for drm/i915: Cache DisplayPort link signal levels
  2016-04-20 10:21 [PATCH] drm/i915: Cache DisplayPort link signal levels Mika Kahola
  2016-04-20 13:56 ` ✗ Fi.CI.BAT: failure for " Patchwork
  2016-04-22 16:53 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2016-04-24 13:51 ` Patchwork
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2016-04-24 13:51 UTC (permalink / raw)
  To: Mika Kahola; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Cache DisplayPort link signal levels
URL   : https://patchwork.freedesktop.org/series/5973/
State : success

== Summary ==

Series 5973v1 drm/i915: Cache DisplayPort link signal levels
http://patchwork.freedesktop.org/api/1.0/series/5973/revisions/1/mbox/


byt-nuc          total:192  pass:154  dwarn:0   dfail:0   fail:0   skip:38 
ilk-hp8440p      total:193  pass:136  dwarn:0   dfail:0   fail:0   skip:57 
ivb-t430s        total:193  pass:165  dwarn:0   dfail:0   fail:0   skip:28 
snb-dellxps      total:193  pass:155  dwarn:0   dfail:0   fail:0   skip:38 

Results at /archive/results/CI_IGT_test/Patchwork_2041/

1e81bacf1f7fdbdf83f46b55389713fa13cb1256 drm-intel-nightly: 2016y-04m-24d-10h-36m-11s UTC integration manifest
fb62cab drm/i915: Cache DisplayPort link signal levels

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-04-24 13:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-20 10:21 [PATCH] drm/i915: Cache DisplayPort link signal levels Mika Kahola
2016-04-20 13:56 ` ✗ Fi.CI.BAT: failure for " Patchwork
2016-04-22 16:53 ` ✓ Fi.CI.BAT: success " Patchwork
2016-04-24 13:51 ` Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.