Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] use a function for DVB media controller register

This is really a simple function, but using it avoids to have
if's inside the drivers.

Also, the kABI becomes a little more clearer.

This shouldn't generate any overhead, and the type check
will happen when compiling with MC DVB enabled.

So, let's do it.

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>

+11 -8
+1 -3
drivers/media/common/siano/smsdvb-main.c
··· 1104 1104 pr_err("dvb_register_adapter() failed %d\n", rc); 1105 1105 goto adapter_error; 1106 1106 } 1107 - #ifdef CONFIG_MEDIA_CONTROLLER_DVB 1108 - client->adapter.mdev = coredev->media_dev; 1109 - #endif 1107 + dvb_register_media_controller(&client->adapter, coredev->media_dev); 1110 1108 1111 1109 /* init dvb demux */ 1112 1110 client->demux.dmx.capabilities = DMX_TS_FILTERING;
+7
drivers/media/dvb-core/dvbdev.h
··· 125 125 126 126 #ifdef CONFIG_MEDIA_CONTROLLER_DVB 127 127 void dvb_create_media_graph(struct dvb_adapter *adap); 128 + static inline void dvb_register_media_controller(struct dvb_adapter *adap, 129 + struct media_device *mdev) 130 + { 131 + adap->mdev = mdev; 132 + } 133 + 128 134 #else 129 135 static inline void dvb_create_media_graph(struct dvb_adapter *adap) {} 136 + #define dvb_register_media_controller(a, b) {} 130 137 #endif 131 138 132 139 extern int dvb_generic_open (struct inode *inode, struct file *file);
+1 -3
drivers/media/usb/cx231xx/cx231xx-dvb.c
··· 465 465 dev->name, result); 466 466 goto fail_adapter; 467 467 } 468 - #ifdef CONFIG_MEDIA_CONTROLLER_DVB 469 - dvb->adapter.mdev = dev->media_dev; 470 - #endif 468 + dvb_register_media_controller(&dvb->adapter, dev->media_dev); 471 469 472 470 /* Ensure all frontends negotiate bus access */ 473 471 dvb->frontend->ops.ts_bus_ctrl = cx231xx_dvb_bus_ctrl;
+1 -1
drivers/media/usb/dvb-usb-v2/dvb_usb_core.c
··· 429 429 return; 430 430 } 431 431 432 - adap->dvb_adap.mdev = mdev; 432 + dvb_register_media_controller(&adap->dvb_adap, mdev); 433 433 434 434 dev_info(&d->udev->dev, "media controller created\n"); 435 435
+1 -1
drivers/media/usb/dvb-usb/dvb-usb-dvb.c
··· 122 122 kfree(mdev); 123 123 return; 124 124 } 125 - adap->dvb_adap.mdev = mdev; 125 + dvb_register_media_controller(&adap->dvb_adap, mdev); 126 126 127 127 dev_info(&d->udev->dev, "media controller created\n"); 128 128 #endif