Hi Javier, Thank you for the patch. On Thursday 03 September 2015 18:00:36 Javier Martinez Canillas wrote: > The smiapp driver creates the pads links before the media entity is > registered with the media device. This doesn't work now that object > IDs are used to create links so the media_device has to be set. > > Move entity registration logic before pads links creation. > > Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx> Acked-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > > drivers/media/i2c/smiapp/smiapp-core.c | 20 ++++++++++---------- > 1 file changed, 10 insertions(+), 10 deletions(-) > > diff --git a/drivers/media/i2c/smiapp/smiapp-core.c > b/drivers/media/i2c/smiapp/smiapp-core.c index 5aa49eb393a9..938201789ebc > 100644 > --- a/drivers/media/i2c/smiapp/smiapp-core.c > +++ b/drivers/media/i2c/smiapp/smiapp-core.c > @@ -2495,23 +2495,23 @@ static int smiapp_register_subdevs(struct > smiapp_sensor *sensor) return rval; > } > > - rval = media_create_pad_link(&this->sd.entity, > - this->source_pad, > - &last->sd.entity, > - last->sink_pad, > - MEDIA_LNK_FL_ENABLED | > - MEDIA_LNK_FL_IMMUTABLE); > + rval = v4l2_device_register_subdev(sensor->src->sd.v4l2_dev, > + &this->sd); > if (rval) { > dev_err(&client->dev, > - "media_create_pad_link failed\n"); > + "v4l2_device_register_subdev failed\n"); > return rval; > } > > - rval = v4l2_device_register_subdev(sensor->src->sd.v4l2_dev, > - &this->sd); > + rval = media_create_pad_link(&this->sd.entity, > + this->source_pad, > + &last->sd.entity, > + last->sink_pad, > + MEDIA_LNK_FL_ENABLED | > + MEDIA_LNK_FL_IMMUTABLE); > if (rval) { > dev_err(&client->dev, > - "v4l2_device_register_subdev failed\n"); > + "media_create_pad_link failed\n"); > return rval; > } > } -- Regards, Laurent Pinchart -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html