Bug 110193 - Kernel commit 7769db5883841b03de544a35a71ff528d4131c17 causes a Dell precision 5530 to no longer display a TTY
Summary: Kernel commit 7769db5883841b03de544a35a71ff528d4131c17 causes a Dell precisio...
Status: RESOLVED DUPLICATE of bug 109959
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: Other All
: high normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard: Triaged, ReadyForDev
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-19 10:58 UTC by Dan Čermák
Modified: 2019-04-15 21:25 UTC (History)
6 users (show)

See Also:
i915 platform: CFL
i915 features: display/eDP


Attachments
dmesg log with drm debugging turned on (2.45 MB, text/plain)
2019-03-20 13:33 UTC, Dan Čermák
no flags Details
/sys/kernel/debug/dri/0/i915_vbt generated with Kernel 4.20 (6.00 KB, text/plain)
2019-03-21 21:29 UTC, Dan Čermák
no flags Details

Description Dan Čermák 2019-03-19 10:58:21 UTC
Yesterday I updated to kernel 5.0.1 (and 5.0.2 and 5.1 rc1, the former two from openSUSE Tumbleweed and the later from git) and my Dell Precision 5530's internal display stopped working with these kernels.

The machine boots fine, but at some point during the boot process, the laptop display turns off and starts flickering (the backlight turns very briefly on and off again). The system gets up and running, so I can ssh into it, I just don't see anything on the Laptop display. Please note, I don't boot into X, just into a tty, so I cannot attach an X.org log.

I have tried the following:

- Attaching an external monitor via HDMI works, i.e. the external monitor turns on and displays my tty. I can even startx there, but the X server is completely unresponsive and does not start any applications. The logs are unfortunately completely normal.

- Booting a 5.0.x kernel with nomodoset works and I get to see the tty on the laptop display (unsurprisingly X does not start here).

- The system logs show absolutely nothing beside the following lines:
Mar 19 10:28:42 Boreas kernel: iTCO_wdt: Intel TCO WatchDog Timer Driver v1.11
Mar 19 10:28:42 Boreas kernel: iTCO_wdt iTCO_wdt: can't request region for resource [mem 0x00c5fffc-0x00c5ffff]
Mar 19 10:28:42 Boreas kernel: iTCO_wdt: probe of iTCO_wdt failed with error -16


This led me to git bisect the kernel between the tags 4.20 and 5.0. I have used the SUSE .config file and if changes were necessary, I have used the default values. The result of the bisect is commit 7769db5883841b03de544a35a71ff528d4131c17

Unfortunately, that is part of a big patch chain of the i915 subsystem, so I cannot easily revert it on top of v5.0.

For reference, I have originally reported this on the opensuse-factory mailinglist: https://lists.opensuse.org/opensuse-factory/2019-03/msg00222.html


Cheers,

Dan
Comment 1 Lakshmi 2019-03-20 08:42:08 UTC
Dan, can you please attach dmesg from kernel 5.1 RC1 from boot with kernel parameters drm.debug=0x1e log_buf_len=4M?
Comment 2 Dan Čermák 2019-03-20 13:33:05 UTC
Created attachment 143740 [details]
dmesg log with drm debugging turned on

Hi Lakshmi,

I have attached the requested log.

Thanks in advance for any help!


Dan
Comment 3 Lakshmi 2019-03-20 14:50:53 UTC
@Manasi can you help here?

[drm:edp_panel_vdd_on [i915]] PP_STATUS: 0x80000008 PP_CONTROL: 0x0000006b
[    4.359796] [drm:intel_dp_start_link_train [i915]] Using LINK_RATE_SET value 05
[    4.360291] [drm:intel_dp_set_signal_levels [i915]] Using signal levels 00000000
[    4.360313] [drm:intel_dp_set_signal_levels [i915]] Using vswing level 0
[    4.360335] [drm:intel_dp_set_signal_levels [i915]] Using pre-emphasis level 0
[    4.360356] [drm:intel_dp_program_link_training_pattern [i915]] Using DP training pattern TPS1
[    4.360983] [drm:intel_dp_set_signal_levels [i915]] Using signal levels 00000000
[    4.361004] [drm:intel_dp_set_signal_levels [i915]] Using vswing level 0
[    4.361024] [drm:intel_dp_set_signal_levels [i915]] Using pre-emphasis level 0
[    4.361641] [drm:intel_dp_set_signal_levels [i915]] Using signal levels 04000000
[    4.361662] [drm:intel_dp_set_signal_levels [i915]] Using vswing level 1
[    4.361683] [drm:intel_dp_set_signal_levels [i915]] Using pre-emphasis level 0
[    4.362299] [drm:intel_dp_set_signal_levels [i915]] Using signal levels 07000000
[    4.362319] [drm:intel_dp_set_signal_levels [i915]] Using vswing level 2
[    4.362339] [drm:intel_dp_set_signal_levels [i915]] Using pre-emphasis level 0
[    4.362959] [drm:intel_dp_set_signal_levels [i915]] Using signal levels 09000000
[    4.362979] [drm:intel_dp_set_signal_levels [i915]] Using vswing level 3
[    4.362999] [drm:intel_dp_set_signal_levels [i915]] Using pre-emphasis level 0
[    4.363616] [drm:intel_dp_start_link_train [i915]] Max Voltage Swing reached
[    4.363637] [drm:intel_dp_start_link_train [i915]] [CONNECTOR:85:eDP-1] Link Training failed at link rate = 432000, lane count = 1
[    4.363661] [drm:intel_dp_modeset_retry_work_fn [i915]] [CONNECTOR:85:eDP-1]
[    4.364035] [drm:intel_enable_pipe [i915]] enabling pipe A
[    4.364063] [drm:intel_edp_backlight_on [i915]] 
[    4.364086] [drm:intel_panel_enable_backlight [i915]] pipe A
[    4.364134] [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 120000
[    4.364255] [drm:intel_psr_enable_locked [i915]] Enabling PSR1
[    4.364586] [drm:intel_enable_ddi [i915]] Panel doesn't support DRRS
[    4.365463] [drm:intel_fbc_enable [i915]] reserved 16588800 bytes of contiguous stolen space for FBC, threshold: 1
[    4.365487] [drm:intel_fbc_enable [i915]] Enabling FBC on pipe A
[    4.380828] [drm:verify_connector_state.isra.113 [i915]] [CONNECTOR:85:eDP-1]
[    4.380858] [drm:intel_atomic_commit_tail [i915]] [CRTC:47:pipe A]
[    4.380891] [drm:verify_single_dpll_state.isra.146 [i915]] DPLL 0
[    4.380916] [drm:intel_enable_sagv [i915]] Enabling SAGV
[    4.380936] Console: switching to colour frame buffer device 240x67
[    4.380955] [drm:drm_atomic_state_init [drm]] Allocated atomic state 00000000ae0f8d0f
[    4.380964] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:30:plane 1A] 0000000028897fb8 state to 00000000ae0f8d0f
[    4.380973] [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:47:pipe A] 000000001de39b56 state to 00000000ae0f8d0f
[    4.380981] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:37:plane 2A] 0000000057c75e4e state to 00000000ae0f8d0f
[    4.380988] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:37:plane 2A] state 0000000057c75e4e
[    4.380996] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:44:cursor A] 000000000eb53e82 state to 00000000ae0f8d0f
[    4.381025] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:44:cursor A] state 000000000eb53e82
[    4.381059] [drm:drm_atomic_state_default_clear [drm]] Clearing atomic state 00000000557ef946
[    4.381070] [drm:__drm_atomic_state_free [drm]] Freeing atomic state 00000000557ef946
[    4.381079] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:48:plane 1B] 00000000f063b462 state to 00000000ae0f8d0f
[    4.381086] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:55:plane 2B] 00000000833163ae state to 00000000ae0f8d0f
[    4.381092] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:55:plane 2B] state 00000000833163ae
[    4.381100] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:62:cursor B] 000000008803fe15 state to 00000000ae0f8d0f
[    4.381106] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:62:cursor B] state 000000008803fe15
[    4.381113] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:66:plane 1C] 00000000a81da555 state to 00000000ae0f8d0f
[    4.381121] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:73:plane 2C] 000000009a91f6d0 state to 00000000ae0f8d0f
[    4.381127] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:73:plane 2C] state 000000009a91f6d0
[    4.381134] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:80:cursor C] 000000001120099d state to 00000000ae0f8d0f
[    4.381140] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:80:cursor C] state 000000001120099d
[    4.381146] [drm:drm_atomic_set_fb_for_plane [drm]] Set [FB:113] for [PLANE:30:plane 1A] state 0000000028897fb8
[    4.381154] [drm:drm_atomic_add_affected_connectors [drm]] Adding all current connectors for [CRTC:47:pipe A] to 00000000ae0f8d0f
[    4.381162] [drm:drm_atomic_get_connector_state [drm]] Added [CONNECTOR:85:eDP-1] 00000000c1f7e681 state to 00000000ae0f8d0f
[    4.381168] [drm:drm_atomic_set_crtc_for_connector [drm]] Link [CONNECTOR:85:eDP-1] state 00000000c1f7e681 to [NOCRTC]
[    4.381174] [drm:drm_atomic_set_crtc_for_connector [drm]] Link [CONNECTOR:85:eDP-1] state 00000000c1f7e681 to [CRTC:47:pipe A]
[    4.381182] [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:65:pipe B] 00000000557ef946 state to 00000000ae0f8d0f
[    4.381188] [drm:drm_atomic_set_mode_for_crtc [drm]] Set [NOMODE] for [CRTC:65:pipe B] state 00000000557ef946
[    4.381193] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:48:plane 1B] state 00000000f063b462
[    4.381201] [drm:drm_atomic_add_affected_connectors [drm]] Adding all current connectors for [CRTC:65:pipe B] to 00000000ae0f8d0f
[    4.381209] [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:83:pipe C] 00000000d98f8725 state to 00000000ae0f8d0f
[    4.381214] [drm:drm_atomic_set_mode_for_crtc [drm]] Set [NOMODE] for [CRTC:83:pipe C] state 00000000d98f8725
[    4.381220] [drm:drm_atomic_set_fb_for_plane [drm]] Set [NOFB] for [PLANE:66:plane 1C] state 00000000a81da555
[    4.381227] [drm:drm_atomic_add_affected_connectors [drm]] Adding all current connectors for [CRTC:83:pipe C] to 00000000ae0f8d0f
[    4.381236] [drm:drm_atomic_check_only [drm]] checking 00000000ae0f8d0f
[    4.381243] [drm:drm_atomic_helper_check_modeset [drm_kms_helper]] Updating routing for [CONNECTOR:85:eDP-1]
[    4.381247] [drm:drm_atomic_helper_check_modeset [drm_kms_helper]] [CONNECTOR:85:eDP-1] keeps [ENCODER:84:DDI A], now on [CRTC:47:pipe A]
[    4.381251] [drm:drm_atomic_helper_check_modeset [drm_kms_helper]] [CRTC:47:pipe A] needs all connectors, enable: y, active: y
[    4.381259] [drm:drm_atomic_add_affected_connectors [drm]] Adding all current connectors for [CRTC:47:pipe A] to 00000000ae0f8d0f
[    4.381267] [drm:drm_atomic_add_affected_planes [drm]] Adding all current planes for [CRTC:47:pipe A] to 00000000ae0f8d0f
[    4.381297] [drm:intel_atomic_check [i915]] [CONNECTOR:85:eDP-1] Limiting display bpp to 24 instead of EDID bpp 24, requested bpp 36, max platform bpp 36
[    4.381325] [drm:intel_dp_compute_config [i915]] DP link computation with max lane count 1 max rate 324000 max bpp 24 pixel clock 142520KHz
[    4.381350] [drm:intel_dp_compute_config [i915]] Force DSC en = 0
[    4.381373] [drm:intel_dp_compute_config [i915]] DP lane count 1 clock 324000 bpp 18
[    4.381682] [drm:intel_dp_compute_config [i915]] DP link rate required 320670 available 324000
[    4.381721] [drm:intel_atomic_check [i915]] hw max bpp: 24, pipe bpp: 18, dithering: 1
[    4.381746] [drm:pipe_config_err [i915]] mismatch in dp_m_n (expected tu 64 gmch 4151195/4194304 link 172966/524288, or tu 0 gmch 0/0 link 0/0, found tu 64, gmch 4151195/4194304 link 230621/524288)
[    4.381770] [drm:pipe_config_err [i915]] mismatch in pipe_bpp (expected 24, found 18)
[    4.381792] [drm:pipe_config_err [i915]] mismatch in port_clock (expected 432000, found 324000)
[    4.381814] [drm:intel_dump_pipe_config [i915]] [CRTC:47:pipe A][modeset]
[    4.381836] [drm:intel_dump_pipe_config [i915]] output_types: EDP (0x100)
[    4.381856] [drm:intel_dump_pipe_config [i915]] output format: RGB
[    4.381877] [drm:intel_dump_pipe_config [i915]] cpu_transcoder: EDP, pipe bpp: 18, dithering: 1
[    4.381898] [drm:intel_dump_pipe_config [i915]] dp m_n: lanes: 1; gmch_m: 4151195, gmch_n: 4194304, link_m: 230621, link_n: 524288, tu: 64
[    4.381918] [drm:intel_dump_pipe_config [i915]] audio: 0, infoframes: 0
[    4.381938] [drm:intel_dump_pipe_config [i915]] requested mode:
[    4.381946] [drm:drm_mode_debug_printmodeline [drm]] Modeline "1920x1080": 60 142520 1920 1968 2000 2080 1080 1083 1088 1142 0x48 0xa
Comment 4 Jani Nikula 2019-03-21 16:05:32 UTC
(In reply to Dan Čermák from comment #0)
> The result of the bisect is commit
> 7769db5883841b03de544a35a71ff528d4131c17

commit 7769db5883841b03de544a35a71ff528d4131c17
Author: Jani Nikula <jani.nikula@intel.com>
Date:   Wed Sep 5 12:53:21 2018 +0300

    drm/i915/dp: optimize eDP 1.4+ link config fast and narrow
Comment 5 Jani Nikula 2019-03-21 16:08:20 UTC
Please attach /sys/kernel/debug/dri/0/i915_vbt
Comment 6 Dan Čermák 2019-03-21 21:29:19 UTC
Created attachment 143753 [details]
/sys/kernel/debug/dri/0/i915_vbt generated with Kernel 4.20

I have uploaded the requested file as generated under kernel 4.20 with no special cmdline. Or do you require it with kernel 5.1 rc1 with the debug parameters set?
Comment 7 Jani Nikula 2019-03-22 06:51:40 UTC
(In reply to Dan Čermák from comment #6)
> I have uploaded the requested file as generated under kernel 4.20 with no
> special cmdline. Or do you require it with kernel 5.1 rc1 with the debug
> parameters set?

Just a quick note: the vbt is independent of the kernel version or options.
Comment 8 Jason Antman 2019-03-26 01:59:29 UTC
Given the hardware model and identical symptoms, I'm pretty sure this is a duplicate of https://bugs.freedesktop.org/show_bug.cgi?id=109959

There's a kernel patch attached to that bug which fixes it for everyone who's verified so far.
Comment 9 Dan Čermák 2019-04-01 12:22:37 UTC
(In reply to Jason Antman from comment #8)
> Given the hardware model and identical symptoms, I'm pretty sure this is a
> duplicate of https://bugs.freedesktop.org/show_bug.cgi?id=109959
> 
> There's a kernel patch attached to that bug which fixes it for everyone
> who's verified so far.

The latest patch posted there indeed solves the problems for me.

Should this bug then be closed?
Comment 10 Dan Čermák 2019-04-15 21:25:33 UTC
I'm going to close this bug as https://bugs.freedesktop.org/show_bug.cgi?id=109959 fixes the problem for me and has made its way into upstream.

*** This bug has been marked as a duplicate of bug 109959 ***


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.