* [PATCH] drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector
@ 2026-04-09 2:48 Marek Vasut
2026-04-13 8:30 ` Raphael Gallais-Pou
2026-04-13 11:48 ` Raphael Gallais-Pou
0 siblings, 2 replies; 3+ messages in thread
From: Marek Vasut @ 2026-04-09 2:48 UTC (permalink / raw)
To: dri-devel
Cc: Marek Vasut, Alexandre Torgue, David Airlie, Maarten Lankhorst,
Maxime Coquelin, Maxime Ripard, Philippe Cornu,
Raphael Gallais-Pou, Simona Vetter, Thomas Zimmermann,
Yannick Fertre, linux-arm-kernel, linux-kernel, linux-stm32
If the connector is disabled, the new connector state has .crtc field
set to NULL and there is nothing more to validate after that point.
The .crtc field being NULL is not an error. Test for .crtc being NULL,
and if it is NULL, exit early with return 0.
This fixes a failure in suspend/resume path, where the connector is
already disabled, but .atomic_check is called, fails, returns -EINVAL
and blocks the suspend entry.
Fixes: aca1cbc1c986 ("drm/stm: lvds: add new STM32 LVDS Display Interface Transmitter driver")
Signed-off-by: Marek Vasut <marex@nabladev.com>
---
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: David Airlie <airlied@gmail.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Philippe Cornu <philippe.cornu@foss.st.com>
Cc: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Cc: Simona Vetter <simona@ffwll.ch>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Yannick Fertre <yannick.fertre@foss.st.com>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-stm32@st-md-mailman.stormreply.com
---
drivers/gpu/drm/stm/lvds.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/stm/lvds.c b/drivers/gpu/drm/stm/lvds.c
index fe38c0984b2b5..25e2ba98f36ae 100644
--- a/drivers/gpu/drm/stm/lvds.c
+++ b/drivers/gpu/drm/stm/lvds.c
@@ -897,14 +897,14 @@ static int lvds_connector_atomic_check(struct drm_connector *connector,
if (!conn_state)
return -EINVAL;
+ if (!conn_state->crtc)
+ return 0;
+
if (list_empty(&connector->modes)) {
drm_dbg(connector->dev, "connector: empty modes list\n");
return -EINVAL;
}
- if (!conn_state->crtc)
- return -EINVAL;
-
panel_mode = list_first_entry(&connector->modes,
struct drm_display_mode, head);
--
2.53.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector
2026-04-09 2:48 [PATCH] drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector Marek Vasut
@ 2026-04-13 8:30 ` Raphael Gallais-Pou
2026-04-13 11:48 ` Raphael Gallais-Pou
1 sibling, 0 replies; 3+ messages in thread
From: Raphael Gallais-Pou @ 2026-04-13 8:30 UTC (permalink / raw)
To: Marek Vasut, dri-devel
Cc: Alexandre Torgue, David Airlie, Maarten Lankhorst,
Maxime Coquelin, Maxime Ripard, Philippe Cornu, Simona Vetter,
Thomas Zimmermann, Yannick Fertre, linux-arm-kernel, linux-kernel,
linux-stm32
On 4/9/26 04:48, Marek Vasut wrote:
> If the connector is disabled, the new connector state has .crtc field
> set to NULL and there is nothing more to validate after that point.
> The .crtc field being NULL is not an error. Test for .crtc being NULL,
> and if it is NULL, exit early with return 0.
>
> This fixes a failure in suspend/resume path, where the connector is
> already disabled, but .atomic_check is called, fails, returns -EINVAL
> and blocks the suspend entry.
>
> Fixes: aca1cbc1c986 ("drm/stm: lvds: add new STM32 LVDS Display Interface Transmitter driver")
> Signed-off-by: Marek Vasut <marex@nabladev.com>
> ---
Hi Marek,
Acked-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com>
Thanks,
Best regards,
Raphaël
> Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
> Cc: David Airlie <airlied@gmail.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
> Cc: Maxime Ripard <mripard@kernel.org>
> Cc: Philippe Cornu <philippe.cornu@foss.st.com>
> Cc: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
> Cc: Simona Vetter <simona@ffwll.ch>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: Yannick Fertre <yannick.fertre@foss.st.com>
> Cc: dri-devel@lists.freedesktop.org
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-kernel@vger.kernel.org
> Cc: linux-stm32@st-md-mailman.stormreply.com
> ---
> drivers/gpu/drm/stm/lvds.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/stm/lvds.c b/drivers/gpu/drm/stm/lvds.c
> index fe38c0984b2b5..25e2ba98f36ae 100644
> --- a/drivers/gpu/drm/stm/lvds.c
> +++ b/drivers/gpu/drm/stm/lvds.c
> @@ -897,14 +897,14 @@ static int lvds_connector_atomic_check(struct drm_connector *connector,
> if (!conn_state)
> return -EINVAL;
>
> + if (!conn_state->crtc)
> + return 0;
> +
> if (list_empty(&connector->modes)) {
> drm_dbg(connector->dev, "connector: empty modes list\n");
> return -EINVAL;
> }
>
> - if (!conn_state->crtc)
> - return -EINVAL;
> -
> panel_mode = list_first_entry(&connector->modes,
> struct drm_display_mode, head);
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector
2026-04-09 2:48 [PATCH] drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector Marek Vasut
2026-04-13 8:30 ` Raphael Gallais-Pou
@ 2026-04-13 11:48 ` Raphael Gallais-Pou
1 sibling, 0 replies; 3+ messages in thread
From: Raphael Gallais-Pou @ 2026-04-13 11:48 UTC (permalink / raw)
To: dri-devel, Marek Vasut
Cc: Alexandre Torgue, David Airlie, Maarten Lankhorst,
Maxime Coquelin, Maxime Ripard, Philippe Cornu, Simona Vetter,
Thomas Zimmermann, Yannick Fertre, linux-arm-kernel, linux-kernel,
linux-stm32
On Thu, 09 Apr 2026 04:48:41 +0200, Marek Vasut wrote:
> If the connector is disabled, the new connector state has .crtc field
> set to NULL and there is nothing more to validate after that point.
> The .crtc field being NULL is not an error. Test for .crtc being NULL,
> and if it is NULL, exit early with return 0.
>
> This fixes a failure in suspend/resume path, where the connector is
> already disabled, but .atomic_check is called, fails, returns -EINVAL
> and blocks the suspend entry.
>
> [...]
Applied, thanks!
[1/1] drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector
commit: eecdd4bd6e47bf0c8ff1e049771fa5bab7074c7c
Best regards,
--
Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-04-13 11:49 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-09 2:48 [PATCH] drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector Marek Vasut
2026-04-13 8:30 ` Raphael Gallais-Pou
2026-04-13 11:48 ` Raphael Gallais-Pou
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox