* [PATCH v1 0/1] drm: mxsfb: Silence -EPROBE_DEFER while waiting for bridge @ 2020-12-15 8:23 Guido Günther 2020-12-15 8:23 ` [PATCH v1 1/1] " Guido Günther 0 siblings, 1 reply; 3+ messages in thread From: Guido Günther @ 2020-12-15 8:23 UTC (permalink / raw) To: Marek Vasut, Stefan Agner, David Airlie, Daniel Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, NXP Linux Team, Emil Velikov, Laurent Pinchart, dri-devel, linux-arm-kernel, linux-kernel It can take multiple iterations until all components for an attached DSI bridge are up leading to several: [ 3.796425] mxsfb 30320000.lcd-controller: Cannot connect bridge: -517 [ 3.816952] mxsfb 30320000.lcd-controller: [drm:mxsfb_probe [mxsfb]] *ERROR* failed to attach bridge: -517 Silence this by checking for -EPROBE_DEFER and using dev_err_probe() so we set a deferred reason in case a dependency fails to probe (which quickly happens on small config/DT changes due to the rather long probe chain which can include bridges, phys, panels, backights, leds, etc.). This also removes the only DRM_DEV_ERROR() usage, the rest of the driver uses dev_err(). Guido Günther (1): drm: mxsfb: Silence -EPROBE_DEFER while waiting for bridge drivers/gpu/drm/mxsfb/mxsfb_drv.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) -- 2.29.2 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH v1 1/1] drm: mxsfb: Silence -EPROBE_DEFER while waiting for bridge 2020-12-15 8:23 [PATCH v1 0/1] drm: mxsfb: Silence -EPROBE_DEFER while waiting for bridge Guido Günther @ 2020-12-15 8:23 ` Guido Günther 2020-12-15 10:01 ` Daniel Vetter 0 siblings, 1 reply; 3+ messages in thread From: Guido Günther @ 2020-12-15 8:23 UTC (permalink / raw) To: Marek Vasut, Stefan Agner, David Airlie, Daniel Vetter, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, NXP Linux Team, Emil Velikov, Laurent Pinchart, dri-devel, linux-arm-kernel, linux-kernel It can take multiple iterations until all components for an attached DSI bridge are up leading to several: [ 3.796425] mxsfb 30320000.lcd-controller: Cannot connect bridge: -517 [ 3.816952] mxsfb 30320000.lcd-controller: [drm:mxsfb_probe [mxsfb]] *ERROR* failed to attach bridge: -517 Silence this by checking for -EPROBE_DEFER and using dev_err_probe() so we set a deferred reason in case a dependency fails to probe (which quickly happens on small config/DT changes due to the rather long probe chain which can include bridges, phys, panels, backights, leds, etc.). This also removes the only DRM_DEV_ERROR() usage, the rest of the driver uses dev_err(). Signed-off-by: Guido Günther <agx@sigxcpu.org> Fixes: c42001e357f7 ("drm: mxsfb: Use drm_panel_bridge") --- drivers/gpu/drm/mxsfb/mxsfb_drv.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c b/drivers/gpu/drm/mxsfb/mxsfb_drv.c index 6faf17b6408d..6da93551e2e5 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c +++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c @@ -134,11 +134,8 @@ static int mxsfb_attach_bridge(struct mxsfb_drm_private *mxsfb) return -ENODEV; ret = drm_bridge_attach(&mxsfb->encoder, bridge, NULL, 0); - if (ret) { - DRM_DEV_ERROR(drm->dev, - "failed to attach bridge: %d\n", ret); - return ret; - } + if (ret) + return dev_err_probe(drm->dev, ret, "Failed to attach bridge\n"); mxsfb->bridge = bridge; @@ -212,7 +209,8 @@ static int mxsfb_load(struct drm_device *drm, ret = mxsfb_attach_bridge(mxsfb); if (ret) { - dev_err(drm->dev, "Cannot connect bridge: %d\n", ret); + if (ret != -EPROBE_DEFER) + dev_err(drm->dev, "Cannot connect bridge: %d\n", ret); goto err_vblank; } -- 2.29.2 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v1 1/1] drm: mxsfb: Silence -EPROBE_DEFER while waiting for bridge 2020-12-15 8:23 ` [PATCH v1 1/1] " Guido Günther @ 2020-12-15 10:01 ` Daniel Vetter 0 siblings, 0 replies; 3+ messages in thread From: Daniel Vetter @ 2020-12-15 10:01 UTC (permalink / raw) To: Guido Günther Cc: Marek Vasut, Pengutronix Kernel Team, dri-devel, David Airlie, Fabio Estevam, Sascha Hauer, Emil Velikov, linux-kernel, Stefan Agner, NXP Linux Team, Daniel Vetter, Shawn Guo, linux-arm-kernel, Laurent Pinchart On Tue, Dec 15, 2020 at 09:23:38AM +0100, Guido Günther wrote: > It can take multiple iterations until all components for an attached DSI > bridge are up leading to several: > > [ 3.796425] mxsfb 30320000.lcd-controller: Cannot connect bridge: -517 > [ 3.816952] mxsfb 30320000.lcd-controller: [drm:mxsfb_probe [mxsfb]] *ERROR* failed to attach bridge: -517 > > Silence this by checking for -EPROBE_DEFER and using dev_err_probe() so > we set a deferred reason in case a dependency fails to probe (which > quickly happens on small config/DT changes due to the rather long probe > chain which can include bridges, phys, panels, backights, leds, etc.). > > This also removes the only DRM_DEV_ERROR() usage, the rest of the driver > uses dev_err(). > > Signed-off-by: Guido Günther <agx@sigxcpu.org> > Fixes: c42001e357f7 ("drm: mxsfb: Use drm_panel_bridge") Queued up for 5.11, thanks for your patch. -Daniel > --- > drivers/gpu/drm/mxsfb/mxsfb_drv.c | 10 ++++------ > 1 file changed, 4 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c b/drivers/gpu/drm/mxsfb/mxsfb_drv.c > index 6faf17b6408d..6da93551e2e5 100644 > --- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c > +++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c > @@ -134,11 +134,8 @@ static int mxsfb_attach_bridge(struct mxsfb_drm_private *mxsfb) > return -ENODEV; > > ret = drm_bridge_attach(&mxsfb->encoder, bridge, NULL, 0); > - if (ret) { > - DRM_DEV_ERROR(drm->dev, > - "failed to attach bridge: %d\n", ret); > - return ret; > - } > + if (ret) > + return dev_err_probe(drm->dev, ret, "Failed to attach bridge\n"); > > mxsfb->bridge = bridge; > > @@ -212,7 +209,8 @@ static int mxsfb_load(struct drm_device *drm, > > ret = mxsfb_attach_bridge(mxsfb); > if (ret) { > - dev_err(drm->dev, "Cannot connect bridge: %d\n", ret); > + if (ret != -EPROBE_DEFER) > + dev_err(drm->dev, "Cannot connect bridge: %d\n", ret); > goto err_vblank; > } > > -- > 2.29.2 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-12-15 10:02 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-12-15 8:23 [PATCH v1 0/1] drm: mxsfb: Silence -EPROBE_DEFER while waiting for bridge Guido Günther 2020-12-15 8:23 ` [PATCH v1 1/1] " Guido Günther 2020-12-15 10:01 ` Daniel Vetter
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).