Commit 08f49200 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

[media] cx231xx: use v4l2 core function to create the MC graph

Instead of having its own routine, use the one defined at the
core, as it is generic enough to handle the cx231xx usecases.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent e9ef88bd
...@@ -1221,51 +1221,6 @@ static int cx231xx_media_device_init(struct cx231xx *dev, ...@@ -1221,51 +1221,6 @@ static int cx231xx_media_device_init(struct cx231xx *dev,
return 0; return 0;
} }
static int cx231xx_create_media_graph(struct cx231xx *dev)
{
#ifdef CONFIG_MEDIA_CONTROLLER
struct media_device *mdev = dev->media_dev;
struct media_entity *entity;
struct media_entity *tuner = NULL, *decoder = NULL;
int ret;
if (!mdev)
return 0;
media_device_for_each_entity(entity, mdev) {
switch (entity->function) {
case MEDIA_ENT_F_TUNER:
tuner = entity;
break;
case MEDIA_ENT_F_ATV_DECODER:
decoder = entity;
break;
}
}
/* Analog setup, using tuner as a link */
if (!decoder)
return 0;
if (tuner) {
ret = media_create_pad_link(tuner, TUNER_PAD_OUTPUT, decoder, 0,
MEDIA_LNK_FL_ENABLED);
if (ret < 0)
return ret;
}
ret = media_create_pad_link(decoder, 1, &dev->vdev.entity, 0,
MEDIA_LNK_FL_ENABLED);
if (ret < 0)
return ret;
ret = media_create_pad_link(decoder, 2, &dev->vbi_dev.entity, 0,
MEDIA_LNK_FL_ENABLED);
if (ret < 0)
return ret;
#endif
return 0;
}
/* /*
* cx231xx_init_dev() * cx231xx_init_dev()
* allocates and inits the device structs, registers i2c bus and v4l device * allocates and inits the device structs, registers i2c bus and v4l device
...@@ -1729,15 +1684,11 @@ static int cx231xx_usb_probe(struct usb_interface *interface, ...@@ -1729,15 +1684,11 @@ static int cx231xx_usb_probe(struct usb_interface *interface,
/* load other modules required */ /* load other modules required */
request_modules(dev); request_modules(dev);
retval = cx231xx_create_media_graph(dev);
if (retval < 0)
goto done;
#ifdef CONFIG_MEDIA_CONTROLLER #ifdef CONFIG_MEDIA_CONTROLLER
retval = media_device_register(dev->media_dev); retval = v4l2_mc_create_media_graph(dev->media_dev);
if (!retval)
retval = media_device_register(dev->media_dev);
#endif #endif
done:
if (retval < 0) if (retval < 0)
cx231xx_release_resources(dev); cx231xx_release_resources(dev);
return retval; return retval;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment