Bug 93980

Summary: blank screen at 4k@60Hz DP 1.2
Product: DRI Reporter: Alin M Elena <alinm.elena>
Component: DRM/IntelAssignee: Intel GFX Bugs mailing list <intel-gfx-bugs>
Status: CLOSED DUPLICATE QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: normal    
Priority: medium CC: davidesousa, intel-gfx-bugs, q3aiml, timur.alperovich
Version: XOrg git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: SKL i915 features: display/DP
Attachments:
Description Flags
log when live changing from dp1.1 to 1.2 and from 30Hz to60Hz
none
attachment-9130-0.html
none
signature.asc none

Description Alin M Elena 2016-02-03 10:00:00 UTC
So I try to connect my external display to my dell xps 9350 skylake

works fine with DP1.1 3840x2160@30.00
However if I move to DPI1.2 while xrandr reports the 60Hz as available and prefered, trying to select it results in a blank screen and this error in log
[14888.696042] [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun

this is with 4.5.0-rc1-2.gc7bac4c
there is a kernel trace in logs but i think is unrelated to the aformentioned error.

[ 2441.732603] [drm:intel_dp_start_link_train [i915]] *ERROR* 5.4 Gbps link rate without HBR2/TPS3 support
[ 2441.736534] [drm] Reducing the compressed framebuffer size. This may lead to less power savings than a non-reduced-size. Try to increase stolen memory size if available in BIOS.
[ 2441.999859] ------------[ cut here ]------------
[ 2441.999896] WARNING: CPU: 2 PID: 2188 at ../drivers/gpu/drm/i915/intel_pm.c:3544 skl_update_other_pipe_wm+0x14d/0x150 [i915]()
[ 2441.999897] WARN_ON(!wm_changed)
[ 2441.999898] Modules linked in:
[ 2441.999900]  fuse hidp cmac ecb rfcomm af_packet bnep hid_generic btusb btrtl uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core usbhid videodev hid_multitouch snd_hda_codec_hdmi dell_led snd_hda_codec_realtek snd_hda_codec_generic nls_iso8859_1 snd_hda_intel nls_cp437 x86_pkg_temp_thermal intel_powerclamp coretemp vfat snd_hda_codec fat snd_hda_core snd_hwdep kvm_intel snd_pcm kvm irqbypass crct10dif_pclmul crc32_pclmul brcmfmac dell_laptop rtsx_pci_ms brcmutil snd_timer dcdbas i2c_designware_platform ghash_clmulni_intel i2c_designware_core aesni_intel dell_wmi cfg80211 memstick aes_x86_64 snd lrw gf128mul glue_helper ablk_helper cryptd idma64 pcspkr joydev mei_me hci_uart soundcore i2c_i801 virt_dma btbcm shpchp mei btqca btintel intel_lpss_pci processor_thermal_device intel_soc_dts_iosf
[ 2441.999941]  thermal fan bluetooth rfkill pinctrl_sunrisepoint pinctrl_intel intel_lpss_acpi intel_lpss int3400_thermal int3403_thermal acpi_thermal_rel int340x_thermal_zone battery wmi intel_hid acpi_pad ac acpi_als tpm_tis sparse_keymap kfifo_buf tpm industrialio i915 rtsx_pci_sdmmc mmc_core crc32c_intel i2c_algo_bit xhci_pci drm_kms_helper syscopyarea sysfillrect sysimgblt xhci_hcd fb_sys_fops serio_raw drm rtsx_pci nvme mfd_core usbcore usb_common video i2c_hid button fjes sg efivarfs
[ 2441.999969] CPU: 2 PID: 2188 Comm: X Tainted: G     U  W       4.5.0-rc1-2.gc7bac4c-default #1
[ 2441.999971] Hardware name: Dell Inc. XPS 13 9350/0VM5NC, BIOS 1.2.3 01/08/2016
[ 2441.999972]  ffffffffa03b5700 ffff88046e2ff988 ffffffff81390cb9 ffff88046e2ff9d0
[ 2441.999975]  ffff88046e2ff9c0 ffffffff8107c712 ffff88046e2ffa44 ffff88046a379bd4
[ 2441.999977]  ffff88046aa9e000 ffff88005ebf1b78 ffff88046b5ad000 ffff88046e2ffa20
[ 2441.999980] Call Trace:
[ 2441.999988]  [<ffffffff8101a115>] try_stack_unwind+0x175/0x190
[ 2441.999995]  [<ffffffff81019069>] dump_trace+0x69/0x3a0
[ 2441.999999]  [<ffffffff8101a17b>] show_trace_log_lvl+0x4b/0x60
[ 2442.000002]  [<ffffffff810194ac>] show_stack_log_lvl+0x10c/0x180
[ 2442.000005]  [<ffffffff8101a215>] show_stack+0x25/0x50
[ 2442.000010]  [<ffffffff81390cb9>] dump_stack+0x4b/0x72
[ 2442.000015]  [<ffffffff8107c712>] warn_slowpath_common+0x82/0xc0
[ 2442.000020]  [<ffffffff8107c79c>] warn_slowpath_fmt+0x4c/0x50
[ 2442.000032]  [<ffffffffa02f047d>] skl_update_other_pipe_wm+0x14d/0x150 [i915]
[ 2442.000047]  [<ffffffffa02f05e3>] skl_update_wm+0x163/0x630 [i915]
[ 2442.000060]  [<ffffffffa02f3e2e>] intel_update_watermarks+0x1e/0x30 [i915]
[ 2442.000081]  [<ffffffffa035cf11>] haswell_crtc_enable+0x321/0x8c0 [i915]
[ 2442.000102]  [<ffffffffa0359bf4>] intel_atomic_commit+0x694/0xac0 [i915]
[ 2442.000120]  [<ffffffffa0189067>] drm_atomic_commit+0x37/0x60 [drm]
[ 2442.000129]  [<ffffffffa026e586>] drm_atomic_helper_set_config+0x76/0xb0 [drm_kms_helper]
[ 2442.000141]  [<ffffffffa0178682>] drm_mode_set_config_internal+0x62/0x100 [drm]
[ 2442.000154]  [<ffffffffa017ce5d>] drm_mode_setcrtc+0x3cd/0x4e0 [drm]
[ 2442.000163]  [<ffffffffa016e712>] drm_ioctl+0x152/0x540 [drm]
[ 2442.000167]  [<ffffffff8121a912>] do_vfs_ioctl+0x92/0x580
[ 2442.000171]  [<ffffffff8121ae79>] SyS_ioctl+0x79/0x90
[ 2442.000175]  [<ffffffff816c50f6>] entry_SYSCALL_64_fastpath+0x16/0x75
[ 2442.001869] DWARF2 unwinder stuck at entry_SYSCALL_64_fastpath+0x16/0x75

[ 2442.001872] Leftover inexact backtrace:

[ 2442.001875] ---[ end trace a05b3ea76533043e ]---
Comment 1 Alin M Elena 2016-02-03 10:25:40 UTC
there is no content in the error file when happens.
Also the screen claims no video input.

Alin
Comment 2 Jani Nikula 2016-02-03 12:02:04 UTC
Please add drm.debug=14 module parameter, and attach dmesg from boot to the problem.

I presume DP MST.
Comment 3 Alin M Elena 2016-02-03 12:20:06 UTC
Created attachment 121489 [details]
log when live changing from dp1.1 to 1.2 and from 30Hz to60Hz
Comment 4 Ville Syrjala 2016-02-03 21:22:58 UTC
(In reply to Alin M Elena from comment #3)
> Created attachment 121489 [details]
> log when live changing from dp1.1 to 1.2 and from 30Hz to60Hz

Your log starts 60 seconds after boot which means it lacks all the interesting bits from when the driver was loaded. You may need to increase the kernel log_buf_len= knob to catch it all.

Anyways, there's an underrun after the modeset, and the clock is rather high, so I suspect this is due to cdclk being set too low. This can also be confirmed by: cat /sys/kernel/debug/dri/0/i915_frequency_info
Comment 5 Alin M Elena 2016-02-03 22:26:26 UTC
Created attachment 121504 [details]
attachment-9130-0.html

Sorry for that I will try to find the log in journalctl if not try again
tomorrow.


the cat output is here.

PM IER=0x00000070 IMR=0xffffff8f ISR=0x00000000 IIR=0x00000000,
MASK=0x00003fde
GT_PERF_STATUS: 0x00000000
Render p-state ratio: 0
Render p-state VID: 0
Render p-state limit: 255
RPSTAT1: 0x09008006
RPMODECTL: 0x00000d92
RPINCLIMIT: 0x00002c88
RPDECLIMIT: 0x00004fb0
RPNSWREQ: 300MHz
CAGF: 300MHz
RP CUR UP EI: 215us
RP CUR UP: 73us
RP PREV UP: 0us
Up threshold: 95%
RP CUR DOWN EI: 12613us
RP CUR DOWN: 74us
RP PREV DOWN: 0us
Down threshold: 85%
Lowest (RPN) frequency: 300MHz
Nominal (RP1) frequency: 300MHz
Max non-overclocked (RP0) frequency: 1050MHz
Max overclocked frequency: 1050MHz
Current freq: 300 MHz
Actual freq: 300 MHz
Idle freq: 300 MHz
Min freq: 300 MHz
Max freq: 1050 MHz
efficient (RPe) frequency: 300 MHz
Current CD clock frequency: 450000 kHz
Max CD clock frequency: 675000 kHz
Max pixel clock frequency: 675000 kHz
Comment 6 Ville Syrjala 2016-02-04 17:13:53 UTC
(In reply to Alin M Elena from comment #5)
> Current CD clock frequency: 450000 kHz

Yep, that's too low for you 4k@60 mode. We'd need to bump to 540 MHz at least. Unfortunately we don't support dynamic cdclk change on SKL yet. There are some patches in flight somewhere to get it done, but last time I looked it still needed more work. In the meantime we should really change things to report the current cdclk as the max cdclk when we don't actually support changing the cdclk, and we need to merge these [1] patches to filter out modes we can't drive.

[1] http://patchwork.freedesktop.org/series/3009/
Comment 7 Alin M Elena 2016-02-04 17:40:10 UTC
Created attachment 121527 [details]
signature.asc

Thanks for the update! So for the moment I shall keep and eye open. 

Alin

On Thursday, 4 February 2016 17:13:53 GMT you wrote:
> https://bugs.freedesktop.org/show_bug.cgi?id=93980
> 
> --- Comment #6 from Ville Syrjala <ville.syrjala@linux.intel.com> ---
> (In reply to Alin M Elena from comment #5)
> 
> > Current CD clock frequency: 450000 kHz
> 
> Yep, that's too low for you 4k@60 mode. We'd need to bump to 540 MHz at
> least. Unfortunately we don't support dynamic cdclk change on SKL yet.
> There are some patches in flight somewhere to get it done, but last time I
> looked it still needed more work. In the meantime we should really change
> things to report the current cdclk as the max cdclk when we don't actually
> support changing the cdclk, and we need to merge these [1] patches to
> filter out modes we can't drive.
> 
> [1] http://patchwork.freedesktop.org/series/3009/
Comment 8 David De Sousa 2016-03-29 11:24:40 UTC
Hello, I'm having the same issues also with a Dell 9350, so let me know if I can be of some help
Comment 9 Jani Nikula 2016-06-16 07:36:50 UTC
Please reopen if the problem persists with current drm-intel-nightly.

*** This bug has been marked as a duplicate of bug 89055 ***
Comment 10 David De Sousa 2016-06-20 09:50:40 UTC
I can confirm it's working at least in my hardware (Dell XPS 9350)
Comment 11 Jani Nikula 2016-06-20 11:47:12 UTC
Thanks for the follow-up.
Comment 12 Alin M Elena 2016-06-21 09:58:08 UTC
tested on two screens works with nightly from last night.

Alin

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.