Hi Jani, I've added the complete dmesg logs with drm.debug=0x1ff to GitLab issue #6868. The logs confirm stable operation with the patch applied, showing proper HDMI 2.0 scrambling timing at 4K@60Hz.
Please let me know if you need any additional information. Thanks, Jerome Le mar. 30 déc. 2025 à 18:37, Jérôme Tollet <[email protected]> a écrit : > > Hi Jani, > > Yes, there is an existing GitLab issue: > https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/6868 > > The issue contains: > - Original problem description and hardware details > - dmesg logs showing the SCDC timing issue (16ms between disable/enable) > - Discussion with Ankit Nautiyal who recommended submitting this patch > > I can provide additional logs if needed: > - dmesg with drm.debug enabled (before and after the fix) > - Logs showing the improved timing (112-142ms) with the patch applied > > Please let me know if you need specific debug information. > > Thanks, > Jerome > > > Le mar. 30 déc. 2025 à 15:59, Jani Nikula > <[email protected]> a écrit : > > > > On Tue, 30 Dec 2025, Jerome Tollet <[email protected]> wrote: > > > Some HDMI 2.0 monitors fail to decode the signal at 4K@60Hz (594 MHz) > > > when SCDC scrambling is configured too quickly. The monitor displays > > > "format detection" error and never recovers, despite SCDC I2C > > > transactions succeeding. > > > > > > Root cause: The SCDC disable/enable sequence happens too fast (~16ms), > > > causing the monitor to lose sync during the transition. HDMI 2.0 spec > > > section 10.4.1.7 states that the sink can disable scrambling if it > > > doesn't detect a scrambled clock within 100ms. > > > > > > Solution: Add timing delays to allow the monitor to properly handle > > > the SCDC configuration: > > > - 100ms before SCDC configuration (let monitor stabilize) > > > - 150ms after DDI enable (let monitor lock onto scrambled signal) > > > > > > Testing performed on: > > > - Hardware: Intel Alder Lake-N N100 (Gen12.0, PCI ID 8086:46d1) > > > - Monitor: Cisco Desk Pro (HDMI 2.0 capable) > > > - Resolution: 3840x2160@60Hz via HDMI 2.0 > > > - Kernel: Linux 6.18.1 > > > - Test scenarios: > > > * Multiple reboots (stable across all tests) > > > * DPMS ON/OFF cycles (suspend/resume works correctly) > > > > > > Impact: Adds 250ms delay during boot, only when hdmi_scrambling is > > > active (resolutions > 340 MHz). No impact on lower resolutions or > > > runtime performance. > > > > > > Fixes display initialization on monitors sensitive to SCDC timing. > > > > > > Signed-off-by: Jerome Tollet <[email protected]> > > > > Do you have a gitlab issue open about this? If not, please open one and > > provide your dmesg with debugs enabled as described at [1]. > > > > Thanks, > > Jani. > > > > > > [1] https://drm.pages.freedesktop.org/intel-docs/how-to-file-i915-bugs.html > > > > > > > --- > > > drivers/gpu/drm/i915/display/intel_ddi.c | 8 ++++++++ > > > 1 file changed, 8 insertions(+) > > > > > > diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c > > > b/drivers/gpu/drm/i915/display/intel_ddi.c > > > index abcdef123456..fedcba654321 100644 > > > --- a/drivers/gpu/drm/i915/display/intel_ddi.c > > > +++ b/drivers/gpu/drm/i915/display/intel_ddi.c > > > @@ -3414,6 +3414,10 @@ static void intel_ddi_enable_hdmi(struct > > > intel_atomic_state *state, > > > enum port port = encoder->port; > > > u32 buf_ctl = 0; > > > > > > + /* Give monitor time to be ready before SCDC configuration */ > > > + if (crtc_state->hdmi_scrambling) > > > + msleep(100); > > > + > > > if (!intel_hdmi_handle_sink_scrambling(encoder, connector, > > > > > > crtc_state->hdmi_high_tmds_clock_ratio, > > > crtc_state->hdmi_scrambling)) > > > @@ -3502,6 +3506,10 @@ static void intel_ddi_enable_hdmi(struct > > > intel_atomic_state *state, > > > } > > > > > > intel_ddi_buf_enable(encoder, buf_ctl); > > > + > > > + /* Give monitor time to lock onto scrambled signal after DDI enable > > > */ > > > + if (crtc_state->hdmi_scrambling) > > > + msleep(150); > > > } > > > > > > static void intel_ddi_enable(struct intel_atomic_state *state, > > > -- > > > 2.43.0 > > > > -- > > Jani Nikula, Intel
