I've been running the 4.8.x mainline release kernels recently, and had
some success with 4k DP connected to the dock. It doesn't always work,
but a reboot fixes it, until it breaks again.

I'd appreciate advice for debugging this, it's pretty reproducible, but
typically when it happens I don't exactly have the time to start
debugging it, and just reboot.

With recent 4.8.10 kernels the symptom is usually that xrandr does
indeed detect and configure the display, but the monitor does not get
any signal and remains black. This is accompanied with the following
dmesg:

marras 23 11:43:46 tehobari kernel: Linux version 4.8.10-040810-generic 
(kernel@tangerine) (gcc version 6.2.0 20161005 (Ubuntu 6.2.0-5ubuntu12) ) 
#20161121053
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* too many voltage retries, give up
marras 24 10:23:00 tehobari kernel: [drm:intel_wait_ddi_buf_idle [i915]] 
*ERROR* Timeout waiting for DDI BUF C idle bit
marras 24 10:23:00 tehobari kernel: [drm] RC6 on
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* failed to get link status
marras 24 10:23:00 tehobari kernel: thinkpad_acpi: EC reports that Thermal 
Table has changed
marras 24 10:23:00 tehobari kernel: [drm:intel_wait_ddi_buf_idle [i915]] 
*ERROR* Timeout waiting for DDI BUF C idle bit
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* too many voltage retries, give up
marras 24 10:23:00 tehobari kernel: [drm:intel_wait_ddi_buf_idle [i915]] 
*ERROR* Timeout waiting for DDI BUF C idle bit
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* too many voltage retries, give up
marras 24 10:23:00 tehobari kernel: [drm:intel_wait_ddi_buf_idle [i915]] 
*ERROR* Timeout waiting for DDI BUF C idle bit
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* too many voltage retries, give up
marras 24 10:23:00 tehobari kernel: [drm:intel_wait_ddi_buf_idle [i915]] 
*ERROR* Timeout waiting for DDI BUF C idle bit
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* too many voltage retries, give up
marras 24 10:23:00 tehobari kernel: [drm:intel_wait_ddi_buf_idle [i915]] 
*ERROR* Timeout waiting for DDI BUF C idle bit
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* too many voltage retries, give up
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_start_link_train [i915]] 
*ERROR* failed to train DP, aborting
marras 24 10:23:00 tehobari kernel: [drm:intel_dp_set_idle_link_train [i915]] 
*ERROR* Timed out waiting for DP idle patterns

Once this happens, AFAIK nothing short of a reboot will restore 4k DP
output on the dock. When I tried to fall back to the integrated miniDP
output, I was able to get a 1080p image, but no 4k image.

I upgraded to 4.8.11 having the following changelog entry: "drm/i915:
Refresh that status of MST capable connectors in ->detect()". Now I'm no
longer seeing the dmesg entries, but I still have occasional issues with
the DP output not working reliabily... not had a chance to figure those
out yet.

Here's some random bits of kernel dmesgs for 4.8.6, thrown in for good
measure:

marras 08 18:37:04 tehobari kernel: Linux version 4.8.6-040806-generic 
(kernel@tangerine) (gcc version 6.2.0 20161005 (Ubuntu 6.2.0-5ubuntu12) ) 
#201610310831 SMP Mon Oct 31 12:33:48 UTC 2016
marras 08 18:37:04 tehobari kernel: [drm] Finished loading 
i915/skl_dmc_ver1_26.bin (v1.26)
marras 08 18:37:04 tehobari kernel: [drm] Finished loading 
i915/skl_dmc_ver1_26.bin (v1.26)
marras 09 17:49:12 tehobari kernel: ------------[ cut here ]------------
marras 09 17:49:12 tehobari kernel: WARNING: CPU: 1 PID: 10699 at 
/home/kernel/COD/linux/drivers/gpu/drm/i915/intel_display.c:14305 
skl_max_scale.part.120+0x75/0x80 [i915]
marras 09 17:49:12 tehobari kernel: WARN_ON_ONCE(!crtc_clock || cdclk < 
crtc_clock)
marras 09 18:10:29 tehobari kernel: [drm:intel_dp_link_training_clock_recovery 
[i915]] *ERROR* failed to enable link training
marras 09 18:10:30 tehobari kernel: [drm:intel_dp_start_link_train [i915]] 
*ERROR* failed to start channel equalization
marras 09 19:18:58 tehobari kernel: [drm:intel_display_resume [i915]] *ERROR* 
Restoring old state failed with -22
marras 09 19:18:58 tehobari kernel: [drm] RC6 on
marras 09 20:08:28 tehobari kernel: ------------[ cut here ]------------
marras 09 20:08:28 tehobari kernel: WARNING: CPU: 3 PID: 10699 at 
/home/kernel/COD/linux/drivers/gpu/drm/drm_modeset_lock.c:343 
drm_modeset_lock+0xd1/0xe0 [dr
m]

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1597267

Title:
  ThinkPad X260 connecting external DisplayPort hangs system

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1597267/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to