From: Michael <michael@fossekall.de>
To: Maxime Ripard <mripard@kernel.org>
Cc: Chen-Yu Tsai <wens@csie.org>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
Samuel Holland <samuel@sholland.org>,
dri-devel@lists.freedesktop.org,
linux-arm-kernel@lists.infradead.org,
linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org,
regressions@lists.linux.dev
Subject: Re: [REGRESSION] [BISECTED] drm/sun4i: hdmi: No HDMI output with BananaPI M1 on 6.9
Date: Mon, 26 May 2025 23:13:01 +0200 [thread overview]
Message-ID: <aDTZXagQ28OdNtLh@a98shuttle.de> (raw)
In-Reply-To: <20250526-refined-dog-of-blizzard-b48f11@houat>
Hi,
On Mon, May 26, 2025 at 07:30:35PM +0200, Maxime Ripard wrote:
>On Mon, May 12, 2025 at 10:27:06PM +0200, Michael wrote:
>> with v6.9 and later there is no output on the BananaPI HDMI connector.
>>
>> I have bisected the issue to the following commit:
>>
>> 358e76fd613a ("drm/sun4i: hdmi: Consolidate atomic_check and mode_valid")
>>
>> With this patch, sun4i_hdmi_connector_clock_valid() is occasionally called
>> with clock=0, causing the function to return MODE_NOCLOCK.
>> In the old sun4i_hdmi_mode_valid() before the patch, mode->clock is
>> always!=0, maybe that gives someone a hint.
>
>This doesn't make sense to me, if only because the two callers of
>tmds_char_rate_valid (hdmi_compute_clock and
>drm_hdmi_connector_mode_valid) have, right before calling it, checks to
>make sure the clock rate isn't 0, and would return MODE_ERROR or EINVAL
>in such a case.
>
>https://elixir.bootlin.com/linux/v6.15/source/drivers/gpu/drm/display/drm_hdmi_state_helper.c#L234
>https://elixir.bootlin.com/linux/v6.15/source/drivers/gpu/drm/display/drm_hdmi_state_helper.c#L553
Before 6.14, sun4i_hdmi_connector_clock_valid() was also called from
sun4i_hdmi_connector_atomic_check()...
>Do you have some logs (with dri.devel=0xff)? Does it happen with 6.15 as
>well?
It does not happen with 6.15, as it was fixed in 6.14 with 84e541b1e58e
("drm/sun4i: use drm_atomic_helper_connector_hdmi_check()").
For completeness:
358e76fd613a:
[ 1.091807] sun4i-drm display-engine: [drm:drm_atomic_check_only] checking (ptrval)
[ 1.091850] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] [CRTC:47:crtc-0] mode changed
[ 1.091876] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] [CRTC:47:crtc-0] enable changed
[ 1.091898] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] [CRTC:47:crtc-0] active changed
[ 1.091927] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] Updating routing for [CONNECTOR:66:HDMI-A-1]
[ 1.091953] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] [CONNECTOR:66:HDMI-A-1] using [ENCODER:65:TMDS-65] on [CRTC:47:crtc-0]
[ 1.092019] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] [CONNECTOR:66:HDMI-A-1] driver check failed
[ 1.092042] sun4i-drm display-engine: [drm:drm_atomic_check_only] atomic driver check for (ptrval) failed: -22
[ 1.092070] sun4i-drm display-engine: [drm:drm_atomic_state_default_clear] Clearing atomic state (ptrval)
358e76fd613a^ :
[ 14.402623] sun4i-drm display-engine: [drm] crtc=crtc-0
[ 14.402630] sun4i-drm display-engine: [drm] self_refresh_aware=0
[ 14.402638] sun4i-drm display-engine: [drm] max_requested_bpc=0
[ 14.402647] sun4i-drm display-engine: [drm] colorspace=Default
[ 14.402657] sun4i-drm display-engine: [drm:drm_atomic_check_only] checking 31bd6e91
[ 14.402714] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] Updating routing for [CONNECTOR:66:HDMI-A-1]
[ 14.402741] sun4i-drm display-engine: [drm:drm_atomic_helper_check_modeset] [CONNECTOR:66:HDMI-A-1] keeps [ENCODER:65:TMDS-65], now on [CRTC:47:crtc-0]
[ 14.402767] sun4i-drm display-engine: [drm:drm_atomic_add_encoder_bridges] Adding all bridges for [encoder:65:TMDS-65] to 31bd6e91
[ 14.402792] sun4i-drm display-engine: [drm:drm_atomic_add_encoder_bridges] Adding all bridges for [encoder:65:TMDS-65] to 31bd6e91
[ 14.402826] [drm:sun4i_backend_atomic_check] Starting checking our planes
[ 14.402846] [drm:sun4i_backend_atomic_check] Input size 1024x600, output size 1024x600
[ 14.402862] [drm:sun4i_backend_atomic_check] Input size 1024x600, output size 1024x600
[ 14.402877] [drm:sun4i_backend_atomic_check] Plane FB format is XR24 little-endian (0x34325258)
[ 14.402894] [drm:sun4i_backend_atomic_check] Plane zpos is 0
[ 14.402906] [drm:sun4i_backend_atomic_check] State valid with 1 planes, 0 alpha, 0 video, 0 YUV
[ 14.402922] [drm:sun4i_backend_atomic_check] Starting checking our planes
Sorry for the noise :)
>
>Maxime
Michael
#regzbot fix: 84e541b1e58e
next prev parent reply other threads:[~2025-05-26 21:15 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-12 20:27 [REGRESSION] [BISECTED] drm/sun4i: hdmi: No HDMI output with BananaPI M1 on 6.9 Michael
2025-05-26 16:56 ` Michael Klein
2025-05-26 17:30 ` Maxime Ripard
2025-05-26 21:13 ` Michael [this message]
2025-06-02 9:55 ` Maxime Ripard
2025-06-02 18:40 ` Michael Klein
2025-06-02 20:22 ` Michael Klein
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aDTZXagQ28OdNtLh@a98shuttle.de \
--to=michael@fossekall.de \
--cc=airlied@gmail.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=jernej.skrabec@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sunxi@lists.linux.dev \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=regressions@lists.linux.dev \
--cc=samuel@sholland.org \
--cc=tzimmermann@suse.de \
--cc=wens@csie.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).