[PATCH] drm/bridge: Ignore -EPROBE_DEFER when bridge attach fails
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Oct 12 20:17:07 UTC 2021
Hi Guido,
Thank you for the patch.
On Tue, Oct 12, 2021 at 09:58:58PM +0200, Guido Günther wrote:
> Otherwise logs are filled with
>
> [drm:drm_bridge_attach] *ERROR* failed to attach bridge /soc at 0/bus at 30800000/mipi-dsi at 30a0 0000 to encoder None-34: -517
>
> when the bridge isn't ready yet.
>
> Fixes: fb8d617f8fd6 ("drm/bridge: Centralize error message when bridge attach fails")
> Signed-off-by: Guido Günther <agx at sigxcpu.org>
> ---
> drivers/gpu/drm/drm_bridge.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_bridge.c b/drivers/gpu/drm/drm_bridge.c
> index a8ed66751c2d..f0508e85ae98 100644
> --- a/drivers/gpu/drm/drm_bridge.c
> +++ b/drivers/gpu/drm/drm_bridge.c
> @@ -227,14 +227,15 @@ int drm_bridge_attach(struct drm_encoder *encoder, struct drm_bridge *bridge,
> bridge->encoder = NULL;
> list_del(&bridge->chain_node);
>
> + if (ret != -EPROBE_DEFER) {
> #ifdef CONFIG_OF
> - DRM_ERROR("failed to attach bridge %pOF to encoder %s: %d\n",
> - bridge->of_node, encoder->name, ret);
> + DRM_ERROR("failed to attach bridge %pOF to encoder %s: %d\n",
> + bridge->of_node, encoder->name, ret);
> #else
> - DRM_ERROR("failed to attach bridge to encoder %s: %d\n",
> - encoder->name, ret);
> + DRM_ERROR("failed to attach bridge to encoder %s: %d\n",
> + encoder->name, ret);
> #endif
> -
> + }
This looks fine as such, but I'm concerned about the direction it's
taking. Ideally, probe deferral should happen at probe time, way before
the bridge is attached. Doing otherwise is a step in the wrong direction
in my opinion, and something we'll end up regretting when we'll feel the
pain it inflicts.
> return ret;
> }
> EXPORT_SYMBOL(drm_bridge_attach);
--
Regards,
Laurent Pinchart
More information about the dri-devel
mailing list