]> git.karo-electronics.de Git - linux-beck.git/commitdiff
[media] dvbdev: use adapter arg for dvb_create_media_graph()
authorMauro Carvalho Chehab <mchehab@osg.samsung.com>
Mon, 2 Mar 2015 13:49:04 +0000 (10:49 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Mon, 2 Mar 2015 14:25:38 +0000 (11:25 -0300)
Instead of using media_dev argument for dvb_create_media_graph(),
use the adapter.

That allows to create a stub for this function, if compiled
without DVB support, avoiding to add extra if's at the drivers.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/common/siano/smsdvb-main.c
drivers/media/dvb-core/dvbdev.c
drivers/media/dvb-core/dvbdev.h
drivers/media/usb/cx231xx/cx231xx-dvb.c
drivers/media/usb/dvb-usb-v2/dvb_usb_core.c
drivers/media/usb/dvb-usb/dvb-usb-dvb.c

index dd3c1516013f337cf52a1e30b3b7314fe97a21f8..387db145d37e683992f6d2e0a7b6bd7c44efed17 100644 (file)
@@ -1185,7 +1185,7 @@ static int smsdvb_hotplug(struct smscore_device_t *coredev,
        if (smsdvb_debugfs_create(client) < 0)
                pr_info("failed to create debugfs node\n");
 
-       dvb_create_media_graph(coredev->media_dev);
+       dvb_create_media_graph(&client->adapter);
 
        pr_info("DVB interface registered.\n");
        return 0;
index 0af9d0c5f889b334600895cda266ba3e43b0dac2..13bb57f0457f7f9514628c177ae00784bc4e4461 100644 (file)
@@ -381,9 +381,10 @@ void dvb_unregister_device(struct dvb_device *dvbdev)
 EXPORT_SYMBOL(dvb_unregister_device);
 
 
-void dvb_create_media_graph(struct media_device *mdev)
-{
 #ifdef CONFIG_MEDIA_CONTROLLER_DVB
+void dvb_create_media_graph(struct dvb_adapter *adap)
+{
+       struct media_device *mdev = adap->mdev;
        struct media_entity *entity, *tuner = NULL, *fe = NULL;
        struct media_entity *demux = NULL, *dvr = NULL, *ca = NULL;
 
@@ -421,9 +422,9 @@ void dvb_create_media_graph(struct media_device *mdev)
 
        if (demux && ca)
                media_entity_create_link(demux, 1, ca, 0, MEDIA_LNK_FL_ENABLED);
-#endif
 }
 EXPORT_SYMBOL_GPL(dvb_create_media_graph);
+#endif
 
 static int dvbdev_check_free_adapter_num(int num)
 {
index 467c1311bd4ce4cad528407d68dfd035a7f1a821..556c9e9d1d4e738c3771499bb28aa2ec367b0189 100644 (file)
@@ -122,7 +122,12 @@ extern int dvb_register_device (struct dvb_adapter *adap,
                                int type);
 
 extern void dvb_unregister_device (struct dvb_device *dvbdev);
-void dvb_create_media_graph(struct media_device *mdev);
+
+#ifdef CONFIG_MEDIA_CONTROLLER_DVB
+void dvb_create_media_graph(struct dvb_adapter *adap);
+#else
+static inline void dvb_create_media_graph(struct dvb_adapter *adap) {}
+#endif
 
 extern int dvb_generic_open (struct inode *inode, struct file *file);
 extern int dvb_generic_release (struct inode *inode, struct file *file);
index 44229a2c2d3204f56c29300d5d59632d23b62cb1..8bf2baae387f29f5d426b761d8e193566c61aedc 100644 (file)
@@ -540,9 +540,8 @@ static int register_dvb(struct cx231xx_dvb *dvb,
 
        /* register network adapter */
        dvb_net_init(&dvb->adapter, &dvb->net, &dvb->demux.dmx);
-#ifdef CONFIG_MEDIA_CONTROLLER_DVB
-       dvb_create_media_graph(dev->media_dev);
-#endif
+       dvb_create_media_graph(&dvb->adapter);
+
        return 0;
 
 fail_fe_conn:
index 0666c8f33ac725771acbb864b1a364a77af0ac5e..08a3cd1c8b44fd326dce67029d8ee18e7348d5cb 100644 (file)
@@ -702,7 +702,7 @@ static int dvb_usbv2_adapter_frontend_init(struct dvb_usb_adapter *adap)
                }
        }
 
-       dvb_create_media_graph(adap->dvb_adap.mdev);
+       dvb_create_media_graph(&adap->dvb_adap);
 
        return 0;
 
index a7bc4535c58ff01ef52a621c41ae44dec45e4ebd..6c9f5ecf949cf2ee057674b0abc3d877267ac638 100644 (file)
@@ -320,7 +320,7 @@ int dvb_usb_adapter_frontend_init(struct dvb_usb_adapter *adap)
                adap->num_frontends_initialized++;
        }
 
-       dvb_create_media_graph(adap->dvb_adap.mdev);
+       dvb_create_media_graph(&adap->dvb_adap);
 
        return 0;
 }