The build order in Makefile hasn't been change so the bug doesn't occur... In addition of taking care of not changing build order in Makefile, I would like to understand what is the expected behavior of component framework when master call component_bind_all() before any component_add() calls. Should component bind function be called in component_add() ? Is up to component to detect that master is already bounded ? Russell can you tell us what to do in this case ? Regards, Benjamin 2015-07-14 11:28 GMT+02:00 Xinwei Kong <kong.kongxinwei@xxxxxxxxxxxxx>: > From: Xinwei Kong <kong.kongxinwei@xxxxxxxxxxxxx> > > This patch fix one bug which it can't call .bind function in > sti_hdmi.c and sti_hda.c file when changing the building sequence > (sti_hdmi.o,sti_hda.o) in Makefile file. This patch can prepare > it. > > Signed-off-by: Xinwei Kong <kong.kongxinwei@xxxxxxxxxxxxx> > --- > drivers/gpu/drm/sti/sti_tvout.c | 17 ++++++++++++++++- > 1 file changed, 16 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/sti/sti_tvout.c b/drivers/gpu/drm/sti/sti_tvout.c > index 5cc5311..293dfae 100644 > --- a/drivers/gpu/drm/sti/sti_tvout.c > +++ b/drivers/gpu/drm/sti/sti_tvout.c > @@ -683,7 +683,22 @@ static int compare_of(struct device *dev, void *data) > > static int sti_tvout_master_bind(struct device *dev) > { > - return 0; > + struct sti_tvout *tvout = dev_get_drvdata(dev); > + struct drm_device *drm_dev; > + int ret; > + > + if (!tvout->drm_dev) { > + DRM_ERROR("master bind is fail\n"); > + return 0; > + } > + > + drm_dev = tvout->drm_dev; > + > + ret = component_bind_all(dev, drm_dev); > + if (ret) > + sti_tvout_destroy_encoders(tvout); > + > + return ret; > } > > static void sti_tvout_master_unbind(struct device *dev) > -- > 1.9.1 > -- Benjamin Gaignard Graphic Working Group Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel