[RFC PATCH v3 1/9] staging: imx-drm-core: don't request probe deferral in imx_drm_encoder_parse_of

Philipp Zabel p.zabel at pengutronix.de
Mon Feb 24 11:56:38 EST 2014

Am Montag, den 24.02.2014, 15:49 +0000 schrieb Russell King - ARM Linux:
> On Tue, Feb 18, 2014 at 12:36:02PM +0100, Philipp Zabel wrote:
> > From: Lucas Stach <l.stach at pengutronix.de>
> > 
> > Since imx_drm_encoder_parse_of is called from the encoder bind callbacks,
> > it is too late to request probe deferral. Rather the core should make sure
> > that the crtcs are bound before the encoders, after all needed components
> > are probed.
> Why is it too late?  -EPROBE_DEFER from this point will cause the driver
> initialisation to correctly unwind and return -EPROBE_DEFER to the
> last-to-be-added component.

Hmm, you are right. I have conflated two separate issues here. I'll back
that out.

> > This fixes probe failure when using the LDB on i.MX6.
> More details please.

One issue was that the DT parsing code would try to add the imx-ldb
component right after the first crtc, and then its bind would fail
in imx_drm_encoder_parse_of because the three remaining crtcs were
not yet registered. This is already fixed by adding the crtc
components first.
The other issue is that once we add bridges that also have output
ports, imx_drm_encoder_parse_of needs to skip those.


More information about the linux-arm-kernel mailing list