aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@gmail.com>2012-02-12 04:56:32 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-03-08 06:48:01 -0500
commitc6e8d86fffd8edf1bfccbd441b1812ee919fe3d5 (patch)
tree3b4a8b33ebf13cfc33513ef8b7c9f2e8ba50f2d9
parenta2d2b25ce623757a87b35ef336d2d2c3b0a6fa13 (diff)
[media] convert drivers/media/* to use module_i2c_driver()
This patch converts the drivers in drivers/media/* to use the module_i2_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Heungjun Kim <riverful.kim@samsung.com> Cc: Joonyoung Shim <jy0922.shim@samsung.com> Cc: Andrew Chew <achew@nvidia.com> Cc: Paul Mundt <lethal@linux-sh.org> Cc: Michael Grzeschik <m.grzeschik@pengutronix.de> Cc: Johannes Obermaier <johannes.obermaier@gmail.com> Cc: Steven Toth <stoth@kernellabs.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Acked-by: Tomasz Stanislawski <t.stanislaws@samsung.com> Acked-by: Hans Verkuil <hans.verkuil@cisco.com> Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com> Acked-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/frontends/au8522_decoder.c13
-rw-r--r--drivers/media/radio/radio-tea5764.c19
-rw-r--r--drivers/media/radio/saa7706h.c13
-rw-r--r--drivers/media/radio/si470x/radio-si470x-i2c.c28
-rw-r--r--drivers/media/radio/si4713-i2c.c15
-rw-r--r--drivers/media/radio/tef6862.c14
-rw-r--r--drivers/media/video/adp1653.c19
-rw-r--r--drivers/media/video/adv7170.c13
-rw-r--r--drivers/media/video/adv7175.c13
-rw-r--r--drivers/media/video/adv7180.c14
-rw-r--r--drivers/media/video/adv7343.c13
-rw-r--r--drivers/media/video/ak881x.c13
-rw-r--r--drivers/media/video/as3645a.c19
-rw-r--r--drivers/media/video/bt819.c13
-rw-r--r--drivers/media/video/bt856.c13
-rw-r--r--drivers/media/video/bt866.c13
-rw-r--r--drivers/media/video/cs5345.c13
-rw-r--r--drivers/media/video/cs53l32a.c13
-rw-r--r--drivers/media/video/cx25840/cx25840-core.c13
-rw-r--r--drivers/media/video/imx074.c13
-rw-r--r--drivers/media/video/indycam.c13
-rw-r--r--drivers/media/video/ir-kbd-i2c.c17
-rw-r--r--drivers/media/video/ks0127.c13
-rw-r--r--drivers/media/video/m52790.c13
-rw-r--r--drivers/media/video/m5mols/m5mols_core.c13
-rw-r--r--drivers/media/video/msp3400-driver.c13
-rw-r--r--drivers/media/video/mt9m001.c13
-rw-r--r--drivers/media/video/mt9m111.c13
-rw-r--r--drivers/media/video/mt9p031.c13
-rw-r--r--drivers/media/video/mt9t001.c13
-rw-r--r--drivers/media/video/mt9t031.c13
-rw-r--r--drivers/media/video/mt9t112.c16
-rw-r--r--drivers/media/video/mt9v011.c13
-rw-r--r--drivers/media/video/mt9v022.c13
-rw-r--r--drivers/media/video/mt9v032.c13
-rw-r--r--drivers/media/video/noon010pc30.c13
-rw-r--r--drivers/media/video/ov2640.c16
-rw-r--r--drivers/media/video/ov5642.c13
-rw-r--r--drivers/media/video/ov6650.c13
-rw-r--r--drivers/media/video/ov7670.c13
-rw-r--r--drivers/media/video/ov772x.c17
-rw-r--r--drivers/media/video/ov9640.c13
-rw-r--r--drivers/media/video/ov9740.c13
-rw-r--r--drivers/media/video/rj54n1cb0c.c13
-rw-r--r--drivers/media/video/s5k6aa.c13
-rw-r--r--drivers/media/video/s5p-tv/hdmiphy_drv.c12
-rw-r--r--drivers/media/video/saa6588.c13
-rw-r--r--drivers/media/video/saa7110.c13
-rw-r--r--drivers/media/video/saa7115.c13
-rw-r--r--drivers/media/video/saa7127.c13
-rw-r--r--drivers/media/video/saa7134/saa6752hs.c13
-rw-r--r--drivers/media/video/saa717x.c13
-rw-r--r--drivers/media/video/saa7185.c13
-rw-r--r--drivers/media/video/saa7191.c13
-rw-r--r--drivers/media/video/sr030pc30.c13
-rw-r--r--drivers/media/video/tda7432.c13
-rw-r--r--drivers/media/video/tda9840.c13
-rw-r--r--drivers/media/video/tea6415c.c13
-rw-r--r--drivers/media/video/tea6420.c13
-rw-r--r--drivers/media/video/ths7303.c14
-rw-r--r--drivers/media/video/tlv320aic23b.c13
-rw-r--r--drivers/media/video/tuner-core.c13
-rw-r--r--drivers/media/video/tvaudio.c13
-rw-r--r--drivers/media/video/tvp514x.c13
-rw-r--r--drivers/media/video/tvp5150.c13
-rw-r--r--drivers/media/video/tvp7002.c25
-rw-r--r--drivers/media/video/tw9910.c16
-rw-r--r--drivers/media/video/upd64031a.c13
-rw-r--r--drivers/media/video/upd64083.c13
-rw-r--r--drivers/media/video/vp27smpx.c13
-rw-r--r--drivers/media/video/vpx3220.c13
-rw-r--r--drivers/media/video/wm8739.c13
-rw-r--r--drivers/media/video/wm8775.c13
73 files changed, 75 insertions, 940 deletions
diff --git a/drivers/media/dvb/frontends/au8522_decoder.c b/drivers/media/dvb/frontends/au8522_decoder.c
index 2b248c12f404..55b6390198e3 100644
--- a/drivers/media/dvb/frontends/au8522_decoder.c
+++ b/drivers/media/dvb/frontends/au8522_decoder.c
@@ -839,15 +839,4 @@ static struct i2c_driver au8522_driver = {
839 .id_table = au8522_id, 839 .id_table = au8522_id,
840}; 840};
841 841
842static __init int init_au8522(void) 842module_i2c_driver(au8522_driver);
843{
844 return i2c_add_driver(&au8522_driver);
845}
846
847static __exit void exit_au8522(void)
848{
849 i2c_del_driver(&au8522_driver);
850}
851
852module_init(init_au8522);
853module_exit(exit_au8522);
diff --git a/drivers/media/radio/radio-tea5764.c b/drivers/media/radio/radio-tea5764.c
index db20904d01f0..6b1fae32b483 100644
--- a/drivers/media/radio/radio-tea5764.c
+++ b/drivers/media/radio/radio-tea5764.c
@@ -575,21 +575,7 @@ static struct i2c_driver tea5764_i2c_driver = {
575 .id_table = tea5764_id, 575 .id_table = tea5764_id,
576}; 576};
577 577
578/* init the driver */ 578module_i2c_driver(tea5764_i2c_driver);
579static int __init tea5764_init(void)
580{
581 int ret = i2c_add_driver(&tea5764_i2c_driver);
582
583 printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ": "
584 DRIVER_DESC "\n");
585 return ret;
586}
587
588/* cleanup the driver */
589static void __exit tea5764_exit(void)
590{
591 i2c_del_driver(&tea5764_i2c_driver);
592}
593 579
594MODULE_AUTHOR(DRIVER_AUTHOR); 580MODULE_AUTHOR(DRIVER_AUTHOR);
595MODULE_DESCRIPTION(DRIVER_DESC); 581MODULE_DESCRIPTION(DRIVER_DESC);
@@ -600,6 +586,3 @@ module_param(use_xtal, int, 0);
600MODULE_PARM_DESC(use_xtal, "Chip have a xtal connected in board"); 586MODULE_PARM_DESC(use_xtal, "Chip have a xtal connected in board");
601module_param(radio_nr, int, 0); 587module_param(radio_nr, int, 0);
602MODULE_PARM_DESC(radio_nr, "video4linux device number to use"); 588MODULE_PARM_DESC(radio_nr, "video4linux device number to use");
603
604module_init(tea5764_init);
605module_exit(tea5764_exit);
diff --git a/drivers/media/radio/saa7706h.c b/drivers/media/radio/saa7706h.c
index b1193dfc5087..9474706350f8 100644
--- a/drivers/media/radio/saa7706h.c
+++ b/drivers/media/radio/saa7706h.c
@@ -434,18 +434,7 @@ static struct i2c_driver saa7706h_driver = {
434 .id_table = saa7706h_id, 434 .id_table = saa7706h_id,
435}; 435};
436 436
437static __init int saa7706h_init(void) 437module_i2c_driver(saa7706h_driver);
438{
439 return i2c_add_driver(&saa7706h_driver);
440}
441
442static __exit void saa7706h_exit(void)
443{
444 i2c_del_driver(&saa7706h_driver);
445}
446
447module_init(saa7706h_init);
448module_exit(saa7706h_exit);
449 438
450MODULE_DESCRIPTION("SAA7706H Car Radio DSP driver"); 439MODULE_DESCRIPTION("SAA7706H Car Radio DSP driver");
451MODULE_AUTHOR("Mocean Laboratories"); 440MODULE_AUTHOR("Mocean Laboratories");
diff --git a/drivers/media/radio/si470x/radio-si470x-i2c.c b/drivers/media/radio/si470x/radio-si470x-i2c.c
index fd3541b0e91c..9b546a5523f3 100644
--- a/drivers/media/radio/si470x/radio-si470x-i2c.c
+++ b/drivers/media/radio/si470x/radio-si470x-i2c.c
@@ -539,33 +539,7 @@ static struct i2c_driver si470x_i2c_driver = {
539 .id_table = si470x_i2c_id, 539 .id_table = si470x_i2c_id,
540}; 540};
541 541
542 542module_i2c_driver(si470x_i2c_driver);
543
544/**************************************************************************
545 * Module Interface
546 **************************************************************************/
547
548/*
549 * si470x_i2c_init - module init
550 */
551static int __init si470x_i2c_init(void)
552{
553 printk(KERN_INFO DRIVER_DESC ", Version " DRIVER_VERSION "\n");
554 return i2c_add_driver(&si470x_i2c_driver);
555}
556
557
558/*
559 * si470x_i2c_exit - module exit
560 */
561static void __exit si470x_i2c_exit(void)
562{
563 i2c_del_driver(&si470x_i2c_driver);
564}
565
566
567module_init(si470x_i2c_init);
568module_exit(si470x_i2c_exit);
569 543
570MODULE_LICENSE("GPL"); 544MODULE_LICENSE("GPL");
571MODULE_AUTHOR(DRIVER_AUTHOR); 545MODULE_AUTHOR(DRIVER_AUTHOR);
diff --git a/drivers/media/radio/si4713-i2c.c b/drivers/media/radio/si4713-i2c.c
index 27aba936fb2b..b898c8925ab7 100644
--- a/drivers/media/radio/si4713-i2c.c
+++ b/drivers/media/radio/si4713-i2c.c
@@ -2106,17 +2106,4 @@ static struct i2c_driver si4713_i2c_driver = {
2106 .id_table = si4713_id, 2106 .id_table = si4713_id,
2107}; 2107};
2108 2108
2109/* Module Interface */ 2109module_i2c_driver(si4713_i2c_driver);
2110static int __init si4713_module_init(void)
2111{
2112 return i2c_add_driver(&si4713_i2c_driver);
2113}
2114
2115static void __exit si4713_module_exit(void)
2116{
2117 i2c_del_driver(&si4713_i2c_driver);
2118}
2119
2120module_init(si4713_module_init);
2121module_exit(si4713_module_exit);
2122
diff --git a/drivers/media/radio/tef6862.c b/drivers/media/radio/tef6862.c
index 3408685b690c..6418c4c9faf1 100644
--- a/drivers/media/radio/tef6862.c
+++ b/drivers/media/radio/tef6862.c
@@ -215,20 +215,8 @@ static struct i2c_driver tef6862_driver = {
215 .id_table = tef6862_id, 215 .id_table = tef6862_id,
216}; 216};
217 217
218static __init int tef6862_init(void) 218module_i2c_driver(tef6862_driver);
219{
220 return i2c_add_driver(&tef6862_driver);
221}
222
223static __exit void tef6862_exit(void)
224{
225 i2c_del_driver(&tef6862_driver);
226}
227
228module_init(tef6862_init);
229module_exit(tef6862_exit);
230 219
231MODULE_DESCRIPTION("TEF6862 Car Radio Enhanced Selectivity Tuner"); 220MODULE_DESCRIPTION("TEF6862 Car Radio Enhanced Selectivity Tuner");
232MODULE_AUTHOR("Mocean Laboratories"); 221MODULE_AUTHOR("Mocean Laboratories");
233MODULE_LICENSE("GPL v2"); 222MODULE_LICENSE("GPL v2");
234
diff --git a/drivers/media/video/adp1653.c b/drivers/media/video/adp1653.c
index 12eedf4d515a..0d13f052997e 100644
--- a/drivers/media/video/adp1653.c
+++ b/drivers/media/video/adp1653.c
@@ -482,24 +482,7 @@ static struct i2c_driver adp1653_i2c_driver = {
482 .id_table = adp1653_id_table, 482 .id_table = adp1653_id_table,
483}; 483};
484 484
485static int __init adp1653_init(void) 485module_i2c_driver(adp1653_i2c_driver);
486{
487 int rval;
488
489 rval = i2c_add_driver(&adp1653_i2c_driver);
490 if (rval)
491 printk(KERN_ALERT "%s: failed at i2c_add_driver\n", __func__);
492
493 return rval;
494}
495
496static void __exit adp1653_exit(void)
497{
498 i2c_del_driver(&adp1653_i2c_driver);
499}
500
501module_init(adp1653_init);
502module_exit(adp1653_exit);
503 486
504MODULE_AUTHOR("Sakari Ailus <sakari.ailus@nokia.com>"); 487MODULE_AUTHOR("Sakari Ailus <sakari.ailus@nokia.com>");
505MODULE_DESCRIPTION("Analog Devices ADP1653 LED flash driver"); 488MODULE_DESCRIPTION("Analog Devices ADP1653 LED flash driver");
diff --git a/drivers/media/video/adv7170.c b/drivers/media/video/adv7170.c
index 879f1d839760..6bc01fb98ff8 100644
--- a/drivers/media/video/adv7170.c
+++ b/drivers/media/video/adv7170.c
@@ -407,15 +407,4 @@ static struct i2c_driver adv7170_driver = {
407 .id_table = adv7170_id, 407 .id_table = adv7170_id,
408}; 408};
409 409
410static __init int init_adv7170(void) 410module_i2c_driver(adv7170_driver);
411{
412 return i2c_add_driver(&adv7170_driver);
413}
414
415static __exit void exit_adv7170(void)
416{
417 i2c_del_driver(&adv7170_driver);
418}
419
420module_init(init_adv7170);
421module_exit(exit_adv7170);
diff --git a/drivers/media/video/adv7175.c b/drivers/media/video/adv7175.c
index 206078eca853..c7640fab5730 100644
--- a/drivers/media/video/adv7175.c
+++ b/drivers/media/video/adv7175.c
@@ -457,15 +457,4 @@ static struct i2c_driver adv7175_driver = {
457 .id_table = adv7175_id, 457 .id_table = adv7175_id,
458}; 458};
459 459
460static __init int init_adv7175(void) 460module_i2c_driver(adv7175_driver);
461{
462 return i2c_add_driver(&adv7175_driver);
463}
464
465static __exit void exit_adv7175(void)
466{
467 i2c_del_driver(&adv7175_driver);
468}
469
470module_init(init_adv7175);
471module_exit(exit_adv7175);
diff --git a/drivers/media/video/adv7180.c b/drivers/media/video/adv7180.c
index d2138d06bcad..b8b6c4b0cad4 100644
--- a/drivers/media/video/adv7180.c
+++ b/drivers/media/video/adv7180.c
@@ -444,20 +444,8 @@ static struct i2c_driver adv7180_driver = {
444 .id_table = adv7180_id, 444 .id_table = adv7180_id,
445}; 445};
446 446
447static __init int adv7180_init(void) 447module_i2c_driver(adv7180_driver);
448{
449 return i2c_add_driver(&adv7180_driver);
450}
451
452static __exit void adv7180_exit(void)
453{
454 i2c_del_driver(&adv7180_driver);
455}
456
457module_init(adv7180_init);
458module_exit(adv7180_exit);
459 448
460MODULE_DESCRIPTION("Analog Devices ADV7180 video decoder driver"); 449MODULE_DESCRIPTION("Analog Devices ADV7180 video decoder driver");
461MODULE_AUTHOR("Mocean Laboratories"); 450MODULE_AUTHOR("Mocean Laboratories");
462MODULE_LICENSE("GPL v2"); 451MODULE_LICENSE("GPL v2");
463
diff --git a/drivers/media/video/adv7343.c b/drivers/media/video/adv7343.c
index 021fab23070d..119b60401bf3 100644
--- a/drivers/media/video/adv7343.c
+++ b/drivers/media/video/adv7343.c
@@ -475,15 +475,4 @@ static struct i2c_driver adv7343_driver = {
475 .id_table = adv7343_id, 475 .id_table = adv7343_id,
476}; 476};
477 477
478static __init int init_adv7343(void) 478module_i2c_driver(adv7343_driver);
479{
480 return i2c_add_driver(&adv7343_driver);
481}
482
483static __exit void exit_adv7343(void)
484{
485 i2c_del_driver(&adv7343_driver);
486}
487
488module_init(init_adv7343);
489module_exit(exit_adv7343);
diff --git a/drivers/media/video/ak881x.c b/drivers/media/video/ak881x.c
index 53c496c00fb6..ba674656b10d 100644
--- a/drivers/media/video/ak881x.c
+++ b/drivers/media/video/ak881x.c
@@ -352,18 +352,7 @@ static struct i2c_driver ak881x_i2c_driver = {
352 .id_table = ak881x_id, 352 .id_table = ak881x_id,
353}; 353};
354 354
355static int __init ak881x_module_init(void) 355module_i2c_driver(ak881x_i2c_driver);
356{
357 return i2c_add_driver(&ak881x_i2c_driver);
358}
359
360static void __exit ak881x_module_exit(void)
361{
362 i2c_del_driver(&ak881x_i2c_driver);
363}
364
365module_init(ak881x_module_init);
366module_exit(ak881x_module_exit);
367 356
368MODULE_DESCRIPTION("TV-output driver for ak8813/ak8814"); 357MODULE_DESCRIPTION("TV-output driver for ak8813/ak8814");
369MODULE_AUTHOR("Guennadi Liakhovetski <g.liakhovetski@gmx.de>"); 358MODULE_AUTHOR("Guennadi Liakhovetski <g.liakhovetski@gmx.de>");
diff --git a/drivers/media/video/as3645a.c b/drivers/media/video/as3645a.c
index f241702a0f36..7a3371f044fc 100644
--- a/drivers/media/video/as3645a.c
+++ b/drivers/media/video/as3645a.c
@@ -881,24 +881,7 @@ static struct i2c_driver as3645a_i2c_driver = {
881 .id_table = as3645a_id_table, 881 .id_table = as3645a_id_table,
882}; 882};
883 883
884static int __init as3645a_init(void) 884module_i2c_driver(as3645a_i2c_driver);
885{
886 int rval;
887
888 rval = i2c_add_driver(&as3645a_i2c_driver);
889 if (rval)
890 pr_err("%s: Failed to register the driver\n", AS3645A_NAME);
891
892 return rval;
893}
894
895static void __exit as3645a_exit(void)
896{
897 i2c_del_driver(&as3645a_i2c_driver);
898}
899
900module_init(as3645a_init);
901module_exit(as3645a_exit);
902 885
903MODULE_AUTHOR("Laurent Pinchart <laurent.pinchart@ideasonboard.com>"); 886MODULE_AUTHOR("Laurent Pinchart <laurent.pinchart@ideasonboard.com>");
904MODULE_DESCRIPTION("LED flash driver for AS3645A, LM3555 and their clones"); 887MODULE_DESCRIPTION("LED flash driver for AS3645A, LM3555 and their clones");
diff --git a/drivers/media/video/bt819.c b/drivers/media/video/bt819.c
index 859eabf57978..377bf05b1efd 100644
--- a/drivers/media/video/bt819.c
+++ b/drivers/media/video/bt819.c
@@ -514,15 +514,4 @@ static struct i2c_driver bt819_driver = {
514 .id_table = bt819_id, 514 .id_table = bt819_id,
515}; 515};
516 516
517static __init int init_bt819(void) 517module_i2c_driver(bt819_driver);
518{
519 return i2c_add_driver(&bt819_driver);
520}
521
522static __exit void exit_bt819(void)
523{
524 i2c_del_driver(&bt819_driver);
525}
526
527module_init(init_bt819);
528module_exit(exit_bt819);
diff --git a/drivers/media/video/bt856.c b/drivers/media/video/bt856.c
index a43059d4c799..7e5bd365c239 100644
--- a/drivers/media/video/bt856.c
+++ b/drivers/media/video/bt856.c
@@ -270,15 +270,4 @@ static struct i2c_driver bt856_driver = {
270 .id_table = bt856_id, 270 .id_table = bt856_id,
271}; 271};
272 272
273static __init int init_bt856(void) 273module_i2c_driver(bt856_driver);
274{
275 return i2c_add_driver(&bt856_driver);
276}
277
278static __exit void exit_bt856(void)
279{
280 i2c_del_driver(&bt856_driver);
281}
282
283module_init(init_bt856);
284module_exit(exit_bt856);
diff --git a/drivers/media/video/bt866.c b/drivers/media/video/bt866.c
index 4e5dcea0501d..905320b67a1c 100644
--- a/drivers/media/video/bt866.c
+++ b/drivers/media/video/bt866.c
@@ -240,15 +240,4 @@ static struct i2c_driver bt866_driver = {
240 .id_table = bt866_id, 240 .id_table = bt866_id,
241}; 241};
242 242
243static __init int init_bt866(void) 243module_i2c_driver(bt866_driver);
244{
245 return i2c_add_driver(&bt866_driver);
246}
247
248static __exit void exit_bt866(void)
249{
250 i2c_del_driver(&bt866_driver);
251}
252
253module_init(init_bt866);
254module_exit(exit_bt866);
diff --git a/drivers/media/video/cs5345.c b/drivers/media/video/cs5345.c
index 1d64af9adf71..c8581e26fa9c 100644
--- a/drivers/media/video/cs5345.c
+++ b/drivers/media/video/cs5345.c
@@ -249,15 +249,4 @@ static struct i2c_driver cs5345_driver = {
249 .id_table = cs5345_id, 249 .id_table = cs5345_id,
250}; 250};
251 251
252static __init int init_cs5345(void) 252module_i2c_driver(cs5345_driver);
253{
254 return i2c_add_driver(&cs5345_driver);
255}
256
257static __exit void exit_cs5345(void)
258{
259 i2c_del_driver(&cs5345_driver);
260}
261
262module_init(init_cs5345);
263module_exit(exit_cs5345);
diff --git a/drivers/media/video/cs53l32a.c b/drivers/media/video/cs53l32a.c
index 51c5b9ad67d8..b293912206eb 100644
--- a/drivers/media/video/cs53l32a.c
+++ b/drivers/media/video/cs53l32a.c
@@ -248,15 +248,4 @@ static struct i2c_driver cs53l32a_driver = {
248 .id_table = cs53l32a_id, 248 .id_table = cs53l32a_id,
249}; 249};
250 250
251static __init int init_cs53l32a(void) 251module_i2c_driver(cs53l32a_driver);
252{
253 return i2c_add_driver(&cs53l32a_driver);
254}
255
256static __exit void exit_cs53l32a(void)
257{
258 i2c_del_driver(&cs53l32a_driver);
259}
260
261module_init(init_cs53l32a);
262module_exit(exit_cs53l32a);
diff --git a/drivers/media/video/cx25840/cx25840-core.c b/drivers/media/video/cx25840/cx25840-core.c
index 05247d4c340a..fc1ff69cffd0 100644
--- a/drivers/media/video/cx25840/cx25840-core.c
+++ b/drivers/media/video/cx25840/cx25840-core.c
@@ -5301,15 +5301,4 @@ static struct i2c_driver cx25840_driver = {
5301 .id_table = cx25840_id, 5301 .id_table = cx25840_id,
5302}; 5302};
5303 5303
5304static __init int init_cx25840(void) 5304module_i2c_driver(cx25840_driver);
5305{
5306 return i2c_add_driver(&cx25840_driver);
5307}
5308
5309static __exit void exit_cx25840(void)
5310{
5311 i2c_del_driver(&cx25840_driver);
5312}
5313
5314module_init(init_cx25840);
5315module_exit(exit_cx25840);
diff --git a/drivers/media/video/imx074.c b/drivers/media/video/imx074.c
index eec75bb57203..351e9bafe8fe 100644
--- a/drivers/media/video/imx074.c
+++ b/drivers/media/video/imx074.c
@@ -468,18 +468,7 @@ static struct i2c_driver imx074_i2c_driver = {
468 .id_table = imx074_id, 468 .id_table = imx074_id,
469}; 469};
470 470
471static int __init imx074_mod_init(void) 471module_i2c_driver(imx074_i2c_driver);
472{
473 return i2c_add_driver(&imx074_i2c_driver);
474}
475
476static void __exit imx074_mod_exit(void)
477{
478 i2c_del_driver(&imx074_i2c_driver);
479}
480
481module_init(imx074_mod_init);
482module_exit(imx074_mod_exit);
483 472
484MODULE_DESCRIPTION("Sony IMX074 Camera driver"); 473MODULE_DESCRIPTION("Sony IMX074 Camera driver");
485MODULE_AUTHOR("Guennadi Liakhovetski <g.liakhovetski@gmx.de>"); 474MODULE_AUTHOR("Guennadi Liakhovetski <g.liakhovetski@gmx.de>");
diff --git a/drivers/media/video/indycam.c b/drivers/media/video/indycam.c
index e5ed4db32e7b..548236333cce 100644
--- a/drivers/media/video/indycam.c
+++ b/drivers/media/video/indycam.c
@@ -387,15 +387,4 @@ static struct i2c_driver indycam_driver = {
387 .id_table = indycam_id, 387 .id_table = indycam_id,
388}; 388};
389 389
390static __init int init_indycam(void) 390module_i2c_driver(indycam_driver);
391{
392 return i2c_add_driver(&indycam_driver);
393}
394
395static __exit void exit_indycam(void)
396{
397 i2c_del_driver(&indycam_driver);
398}
399
400module_init(init_indycam);
401module_exit(exit_indycam);
diff --git a/drivers/media/video/ir-kbd-i2c.c b/drivers/media/video/ir-kbd-i2c.c
index a7c41d32f414..04f192a0398a 100644
--- a/drivers/media/video/ir-kbd-i2c.c
+++ b/drivers/media/video/ir-kbd-i2c.c
@@ -471,7 +471,7 @@ static const struct i2c_device_id ir_kbd_id[] = {
471 { } 471 { }
472}; 472};
473 473
474static struct i2c_driver driver = { 474static struct i2c_driver ir_kbd_driver = {
475 .driver = { 475 .driver = {
476 .name = "ir-kbd-i2c", 476 .name = "ir-kbd-i2c",
477 }, 477 },
@@ -480,21 +480,10 @@ static struct i2c_driver driver = {
480 .id_table = ir_kbd_id, 480 .id_table = ir_kbd_id,
481}; 481};
482 482
483module_i2c_driver(ir_kbd_driver);
484
483/* ----------------------------------------------------------------------- */ 485/* ----------------------------------------------------------------------- */
484 486
485MODULE_AUTHOR("Gerd Knorr, Michal Kochanowicz, Christoph Bartelmus, Ulrich Mueller"); 487MODULE_AUTHOR("Gerd Knorr, Michal Kochanowicz, Christoph Bartelmus, Ulrich Mueller");
486MODULE_DESCRIPTION("input driver for i2c IR remote controls"); 488MODULE_DESCRIPTION("input driver for i2c IR remote controls");
487MODULE_LICENSE("GPL"); 489MODULE_LICENSE("GPL");
488
489static int __init ir_init(void)
490{
491 return i2c_add_driver(&driver);
492}
493
494static void __exit ir_fini(void)
495{
496 i2c_del_driver(&driver);
497}
498
499module_init(ir_init);
500module_exit(ir_fini);
diff --git a/drivers/media/video/ks0127.c b/drivers/media/video/ks0127.c
index afa91182b448..ee7ca2dcca2f 100644
--- a/drivers/media/video/ks0127.c
+++ b/drivers/media/video/ks0127.c
@@ -721,15 +721,4 @@ static struct i2c_driver ks0127_driver = {
721 .id_table = ks0127_id, 721 .id_table = ks0127_id,
722}; 722};
723 723
724static __init int init_ks0127(void) 724module_i2c_driver(ks0127_driver);
725{
726 return i2c_add_driver(&ks0127_driver);
727}
728
729static __exit void exit_ks0127(void)
730{
731 i2c_del_driver(&ks0127_driver);
732}
733
734module_init(init_ks0127);
735module_exit(exit_ks0127);
diff --git a/drivers/media/video/m52790.c b/drivers/media/video/m52790.c
index 303ffa7df4ac..0991576f4c82 100644
--- a/drivers/media/video/m52790.c
+++ b/drivers/media/video/m52790.c
@@ -213,15 +213,4 @@ static struct i2c_driver m52790_driver = {
213 .id_table = m52790_id, 213 .id_table = m52790_id,
214}; 214};
215 215
216static __init int init_m52790(void) 216module_i2c_driver(m52790_driver);
217{
218 return i2c_add_driver(&m52790_driver);
219}
220
221static __exit void exit_m52790(void)
222{
223 i2c_del_driver(&m52790_driver);
224}
225
226module_init(init_m52790);
227module_exit(exit_m52790);
diff --git a/drivers/media/video/m5mols/m5mols_core.c b/drivers/media/video/m5mols/m5mols_core.c
index e631d0d77ce1..d718aee01c77 100644
--- a/drivers/media/video/m5mols/m5mols_core.c
+++ b/drivers/media/video/m5mols/m5mols_core.c
@@ -1057,18 +1057,7 @@ static struct i2c_driver m5mols_i2c_driver = {
1057 .id_table = m5mols_id, 1057 .id_table = m5mols_id,
1058}; 1058};
1059 1059
1060static int __init m5mols_mod_init(void) 1060module_i2c_driver(m5mols_i2c_driver);
1061{
1062 return i2c_add_driver(&m5mols_i2c_driver);
1063}
1064
1065static void __exit m5mols_mod_exit(void)
1066{
1067 i2c_del_driver(&m5mols_i2c_driver);
1068}
1069
1070module_init(m5mols_mod_init);
1071module_exit(m5mols_mod_exit);
1072 1061
1073MODULE_AUTHOR("HeungJun Kim <riverful.kim@samsung.com>"); 1062MODULE_AUTHOR("HeungJun Kim <riverful.kim@samsung.com>");
1074MODULE_AUTHOR("Dongsoo Kim <dongsoo45.kim@samsung.com>"); 1063MODULE_AUTHOR("Dongsoo Kim <dongsoo45.kim@samsung.com>");
diff --git a/drivers/media/video/msp3400-driver.c b/drivers/media/video/msp3400-driver.c
index d7cd0f633f63..82ce50721de3 100644
--- a/drivers/media/video/msp3400-driver.c
+++ b/drivers/media/video/msp3400-driver.c
@@ -881,18 +881,7 @@ static struct i2c_driver msp_driver = {
881 .id_table = msp_id, 881 .id_table = msp_id,
882}; 882};
883 883
884static __init int init_msp(void) 884module_i2c_driver(msp_driver);
885{
886 return i2c_add_driver(&msp_driver);
887}
888
889static __exit void exit_msp(void)
890{
891 i2c_del_driver(&msp_driver);
892}
893
894module_init(init_msp);
895module_exit(exit_msp);
896 885
897/* 886/*
898 * Overrides for Emacs so that we follow Linus's tabbing style. 887 * Overrides for Emacs so that we follow Linus's tabbing style.
diff --git a/drivers/media/video/mt9m001.c b/drivers/media/video/mt9m001.c
index 097c9d3d04a8..7e648183f157 100644
--- a/drivers/media/video/mt9m001.c
+++ b/drivers/media/video/mt9m001.c
@@ -730,18 +730,7 @@ static struct i2c_driver mt9m001_i2c_driver = {
730 .id_table = mt9m001_id, 730 .id_table = mt9m001_id,
731}; 731};
732 732
733static int __init mt9m001_mod_init(void) 733module_i2c_driver(mt9m001_i2c_driver);
734{
735 return i2c_add_driver(&mt9m001_i2c_driver);
736}
737
738static void __exit mt9m001_mod_exit(void)
739{
740 i2c_del_driver(&mt9m001_i2c_driver);
741}
742
743module_init(mt9m001_mod_init);
744module_exit(mt9m001_mod_exit);
745 734
746MODULE_DESCRIPTION("Micron MT9M001 Camera driver"); 735MODULE_DESCRIPTION("Micron MT9M001 Camera driver");
747MODULE_AUTHOR("Guennadi Liakhovetski <kernel@pengutronix.de>"); 736MODULE_AUTHOR("Guennadi Liakhovetski <kernel@pengutronix.de>");
diff --git a/drivers/media/video/mt9m111.c b/drivers/media/video/mt9m111.c
index bee65bff46e8..b0c529964329 100644
--- a/drivers/media/video/mt9m111.c
+++ b/drivers/media/video/mt9m111.c
@@ -1008,18 +1008,7 @@ static struct i2c_driver mt9m111_i2c_driver = {
1008 .id_table = mt9m111_id, 1008 .id_table = mt9m111_id,
1009}; 1009};
1010 1010
1011static int __init mt9m111_mod_init(void) 1011module_i2c_driver(mt9m111_i2c_driver);
1012{
1013 return i2c_add_driver(&mt9m111_i2c_driver);
1014}
1015
1016static void __exit mt9m111_mod_exit(void)
1017{
1018 i2c_del_driver(&mt9m111_i2c_driver);
1019}
1020
1021module_init(mt9m111_mod_init);
1022module_exit(mt9m111_mod_exit);
1023 1012
1024MODULE_DESCRIPTION("Micron/Aptina MT9M111/MT9M112/MT9M131 Camera driver"); 1013MODULE_DESCRIPTION("Micron/Aptina MT9M111/MT9M112/MT9M131 Camera driver");
1025MODULE_AUTHOR("Robert Jarzmik"); 1014MODULE_AUTHOR("Robert Jarzmik");
diff --git a/drivers/media/video/mt9p031.c b/drivers/media/video/mt9p031.c
index 93c3ec7426e8..dde26105aac7 100644
--- a/drivers/media/video/mt9p031.c
+++ b/drivers/media/video/mt9p031.c
@@ -945,18 +945,7 @@ static struct i2c_driver mt9p031_i2c_driver = {
945 .id_table = mt9p031_id, 945 .id_table = mt9p031_id,
946}; 946};
947 947
948static int __init mt9p031_mod_init(void) 948module_i2c_driver(mt9p031_i2c_driver);
949{
950 return i2c_add_driver(&mt9p031_i2c_driver);
951}
952
953static void __exit mt9p031_mod_exit(void)
954{
955 i2c_del_driver(&mt9p031_i2c_driver);
956}
957
958module_init(mt9p031_mod_init);
959module_exit(mt9p031_mod_exit);
960 949
961MODULE_DESCRIPTION("Aptina MT9P031 Camera driver"); 950MODULE_DESCRIPTION("Aptina MT9P031 Camera driver");
962MODULE_AUTHOR("Bastian Hecht <hechtb@gmail.com>"); 951MODULE_AUTHOR("Bastian Hecht <hechtb@gmail.com>");
diff --git a/drivers/media/video/mt9t001.c b/drivers/media/video/mt9t001.c
index cd81d04a529e..49ca3cbfc6f1 100644
--- a/drivers/media/video/mt9t001.c
+++ b/drivers/media/video/mt9t001.c
@@ -817,18 +817,7 @@ static struct i2c_driver mt9t001_driver = {
817 .id_table = mt9t001_id, 817 .id_table = mt9t001_id,
818}; 818};
819 819
820static int __init mt9t001_init(void) 820module_i2c_driver(mt9t001_driver);
821{
822 return i2c_add_driver(&mt9t001_driver);
823}
824
825static void __exit mt9t001_exit(void)
826{
827 i2c_del_driver(&mt9t001_driver);
828}
829
830module_init(mt9t001_init);
831module_exit(mt9t001_exit);
832 821
833MODULE_DESCRIPTION("Aptina (Micron) MT9T001 Camera driver"); 822MODULE_DESCRIPTION("Aptina (Micron) MT9T001 Camera driver");
834MODULE_AUTHOR("Laurent Pinchart <laurent.pinchart@ideasonboard.com>"); 823MODULE_AUTHOR("Laurent Pinchart <laurent.pinchart@ideasonboard.com>");
diff --git a/drivers/media/video/mt9t031.c b/drivers/media/video/mt9t031.c
index 84add1aef139..1415074138a5 100644
--- a/drivers/media/video/mt9t031.c
+++ b/drivers/media/video/mt9t031.c
@@ -850,18 +850,7 @@ static struct i2c_driver mt9t031_i2c_driver = {
850 .id_table = mt9t031_id, 850 .id_table = mt9t031_id,
851}; 851};
852 852
853static int __init mt9t031_mod_init(void) 853module_i2c_driver(mt9t031_i2c_driver);
854{
855 return i2c_add_driver(&mt9t031_i2c_driver);
856}
857
858static void __exit mt9t031_mod_exit(void)
859{
860 i2c_del_driver(&mt9t031_i2c_driver);
861}
862
863module_init(mt9t031_mod_init);
864module_exit(mt9t031_mod_exit);
865 854
866MODULE_DESCRIPTION("Micron MT9T031 Camera driver"); 855MODULE_DESCRIPTION("Micron MT9T031 Camera driver");
867MODULE_AUTHOR("Guennadi Liakhovetski <lg@denx.de>"); 856MODULE_AUTHOR("Guennadi Liakhovetski <lg@denx.de>");
diff --git a/drivers/media/video/mt9t112.c b/drivers/media/video/mt9t112.c
index 7b34b11daf24..8d1445f12708 100644
--- a/drivers/media/video/mt9t112.c
+++ b/drivers/media/video/mt9t112.c
@@ -1117,21 +1117,7 @@ static struct i2c_driver mt9t112_i2c_driver = {
1117 .id_table = mt9t112_id, 1117 .id_table = mt9t112_id,
1118}; 1118};
1119 1119
1120/************************************************************************ 1120module_i2c_driver(mt9t112_i2c_driver);
1121 module function
1122************************************************************************/
1123static int __init mt9t112_module_init(void)
1124{
1125 return i2c_add_driver(&mt9t112_i2c_driver);
1126}
1127
1128static void __exit mt9t112_module_exit(void)
1129{
1130 i2c_del_driver(&mt9t112_i2c_driver);
1131}
1132
1133module_init(mt9t112_module_init);
1134module_exit(mt9t112_module_exit);
1135 1121
1136MODULE_DESCRIPTION("SoC Camera driver for mt9t112"); 1122MODULE_DESCRIPTION("SoC Camera driver for mt9t112");
1137MODULE_AUTHOR("Kuninori Morimoto"); 1123MODULE_AUTHOR("Kuninori Morimoto");
diff --git a/drivers/media/video/mt9v011.c b/drivers/media/video/mt9v011.c
index db74dd27c722..6bf01ad62765 100644
--- a/drivers/media/video/mt9v011.c
+++ b/drivers/media/video/mt9v011.c
@@ -709,15 +709,4 @@ static struct i2c_driver mt9v011_driver = {
709 .id_table = mt9v011_id, 709 .id_table = mt9v011_id,
710}; 710};
711 711
712static __init int init_mt9v011(void) 712module_i2c_driver(mt9v011_driver);
713{
714 return i2c_add_driver(&mt9v011_driver);
715}
716
717static __exit void exit_mt9v011(void)
718{
719 i2c_del_driver(&mt9v011_driver);
720}
721
722module_init(init_mt9v011);
723module_exit(exit_mt9v011);
diff --git a/drivers/media/video/mt9v022.c b/drivers/media/video/mt9v022.c
index 944940758fa3..bf63417adb8f 100644
--- a/drivers/media/video/mt9v022.c
+++ b/drivers/media/video/mt9v022.c
@@ -872,18 +872,7 @@ static struct i2c_driver mt9v022_i2c_driver = {
872 .id_table = mt9v022_id, 872 .id_table = mt9v022_id,
873}; 873};
874 874
875static int __init mt9v022_mod_init(void) 875module_i2c_driver(mt9v022_i2c_driver);
876{
877 return i2c_add_driver(&mt9v022_i2c_driver);
878}
879
880static void __exit mt9v022_mod_exit(void)
881{
882 i2c_del_driver(&mt9v022_i2c_driver);
883}
884
885module_init(mt9v022_mod_init);
886module_exit(mt9v022_mod_exit);
887 876
888MODULE_DESCRIPTION("Micron MT9V022 Camera driver"); 877MODULE_DESCRIPTION("Micron MT9V022 Camera driver");
889MODULE_AUTHOR("Guennadi Liakhovetski <kernel@pengutronix.de>"); 878MODULE_AUTHOR("Guennadi Liakhovetski <kernel@pengutronix.de>");
diff --git a/drivers/media/video/mt9v032.c b/drivers/media/video/mt9v032.c
index d90b982cc218..75e253a343c5 100644
--- a/drivers/media/video/mt9v032.c
+++ b/drivers/media/video/mt9v032.c
@@ -756,18 +756,7 @@ static struct i2c_driver mt9v032_driver = {
756 .id_table = mt9v032_id, 756 .id_table = mt9v032_id,
757}; 757};
758 758
759static int __init mt9v032_init(void) 759module_i2c_driver(mt9v032_driver);
760{
761 return i2c_add_driver(&mt9v032_driver);
762}
763
764static void __exit mt9v032_exit(void)
765{
766 i2c_del_driver(&mt9v032_driver);
767}
768
769module_init(mt9v032_init);
770module_exit(mt9v032_exit);
771 760
772MODULE_DESCRIPTION("Aptina MT9V032 Camera driver"); 761MODULE_DESCRIPTION("Aptina MT9V032 Camera driver");
773MODULE_AUTHOR("Laurent Pinchart <laurent.pinchart@ideasonboard.com>"); 762MODULE_AUTHOR("Laurent Pinchart <laurent.pinchart@ideasonboard.com>");
diff --git a/drivers/media/video/noon010pc30.c b/drivers/media/video/noon010pc30.c
index d0904c53b972..440c12962bae 100644
--- a/drivers/media/video/noon010pc30.c
+++ b/drivers/media/video/noon010pc30.c
@@ -844,18 +844,7 @@ static struct i2c_driver noon010_i2c_driver = {
844 .id_table = noon010_id, 844 .id_table = noon010_id,
845}; 845};
846 846
847static int __init noon010_init(void) 847module_i2c_driver(noon010_i2c_driver);
848{
849 return i2c_add_driver(&noon010_i2c_driver);
850}
851
852static void __exit noon010_exit(void)
853{
854 i2c_del_driver(&noon010_i2c_driver);
855}
856
857module_init(noon010_init);
858module_exit(noon010_exit);
859 848
860MODULE_DESCRIPTION("Siliconfile NOON010PC30 camera driver"); 849MODULE_DESCRIPTION("Siliconfile NOON010PC30 camera driver");
861MODULE_AUTHOR("Sylwester Nawrocki <s.nawrocki@samsung.com>"); 850MODULE_AUTHOR("Sylwester Nawrocki <s.nawrocki@samsung.com>");
diff --git a/drivers/media/video/ov2640.c b/drivers/media/video/ov2640.c
index b5247cb64fde..3c2c5d3bcc6b 100644
--- a/drivers/media/video/ov2640.c
+++ b/drivers/media/video/ov2640.c
@@ -1103,21 +1103,7 @@ static struct i2c_driver ov2640_i2c_driver = {
1103 .id_table = ov2640_id, 1103 .id_table = ov2640_id,
1104}; 1104};
1105 1105
1106/* 1106module_i2c_driver(ov2640_i2c_driver);
1107 * Module functions
1108 */
1109static int __init ov2640_module_init(void)
1110{
1111 return i2c_add_driver(&ov2640_i2c_driver);
1112}
1113
1114static void __exit ov2640_module_exit(void)
1115{
1116 i2c_del_driver(&ov2640_i2c_driver);
1117}
1118
1119module_init(ov2640_module_init);
1120module_exit(ov2640_module_exit);
1121 1107
1122MODULE_DESCRIPTION("SoC Camera driver for Omni Vision 2640 sensor"); 1108MODULE_DESCRIPTION("SoC Camera driver for Omni Vision 2640 sensor");
1123MODULE_AUTHOR("Alberto Panizzo"); 1109MODULE_AUTHOR("Alberto Panizzo");
diff --git a/drivers/media/video/ov5642.c b/drivers/media/video/ov5642.c
index bb37ec80f274..80e07794ac8e 100644
--- a/drivers/media/video/ov5642.c
+++ b/drivers/media/video/ov5642.c
@@ -1068,18 +1068,7 @@ static struct i2c_driver ov5642_i2c_driver = {
1068 .id_table = ov5642_id, 1068 .id_table = ov5642_id,
1069}; 1069};
1070 1070
1071static int __init ov5642_mod_init(void) 1071module_i2c_driver(ov5642_i2c_driver);
1072{
1073 return i2c_add_driver(&ov5642_i2c_driver);
1074}
1075
1076static void __exit ov5642_mod_exit(void)
1077{
1078 i2c_del_driver(&ov5642_i2c_driver);
1079}
1080
1081module_init(ov5642_mod_init);
1082module_exit(ov5642_mod_exit);
1083 1072
1084MODULE_DESCRIPTION("Omnivision OV5642 Camera driver"); 1073MODULE_DESCRIPTION("Omnivision OV5642 Camera driver");
1085MODULE_AUTHOR("Bastian Hecht <hechtb@gmail.com>"); 1074MODULE_AUTHOR("Bastian Hecht <hechtb@gmail.com>");
diff --git a/drivers/media/video/ov6650.c b/drivers/media/video/ov6650.c
index 3627f3225bbb..3e028b1970dd 100644
--- a/drivers/media/video/ov6650.c
+++ b/drivers/media/video/ov6650.c
@@ -1046,18 +1046,7 @@ static struct i2c_driver ov6650_i2c_driver = {
1046 .id_table = ov6650_id, 1046 .id_table = ov6650_id,
1047}; 1047};
1048 1048
1049static int __init ov6650_module_init(void) 1049module_i2c_driver(ov6650_i2c_driver);
1050{
1051 return i2c_add_driver(&ov6650_i2c_driver);
1052}
1053
1054static void __exit ov6650_module_exit(void)
1055{
1056 i2c_del_driver(&ov6650_i2c_driver);
1057}
1058
1059module_init(ov6650_module_init);
1060module_exit(ov6650_module_exit);
1061 1050
1062MODULE_DESCRIPTION("SoC Camera driver for OmniVision OV6650"); 1051MODULE_DESCRIPTION("SoC Camera driver for OmniVision OV6650");
1063MODULE_AUTHOR("Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>"); 1052MODULE_AUTHOR("Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>");
diff --git a/drivers/media/video/ov7670.c b/drivers/media/video/ov7670.c
index 6a564964853a..e7c82b297514 100644
--- a/drivers/media/video/ov7670.c
+++ b/drivers/media/video/ov7670.c
@@ -1583,15 +1583,4 @@ static struct i2c_driver ov7670_driver = {
1583 .id_table = ov7670_id, 1583 .id_table = ov7670_id,
1584}; 1584};
1585 1585
1586static __init int init_ov7670(void) 1586module_i2c_driver(ov7670_driver);
1587{
1588 return i2c_add_driver(&ov7670_driver);
1589}
1590
1591static __exit void exit_ov7670(void)
1592{
1593 i2c_del_driver(&ov7670_driver);
1594}
1595
1596module_init(init_ov7670);
1597module_exit(exit_ov7670);
diff --git a/drivers/media/video/ov772x.c b/drivers/media/video/ov772x.c
index 9f6ce3d8a29e..74e77d327ed8 100644
--- a/drivers/media/video/ov772x.c
+++ b/drivers/media/video/ov772x.c
@@ -1123,22 +1123,7 @@ static struct i2c_driver ov772x_i2c_driver = {
1123 .id_table = ov772x_id, 1123 .id_table = ov772x_id,
1124}; 1124};
1125 1125
1126/* 1126module_i2c_driver(ov772x_i2c_driver);
1127 * module function
1128 */
1129
1130static int __init ov772x_module_init(void)
1131{
1132 return i2c_add_driver(&ov772x_i2c_driver);
1133}
1134
1135static void __exit ov772x_module_exit(void)
1136{
1137 i2c_del_driver(&ov772x_i2c_driver);
1138}
1139
1140module_init(ov772x_module_init);
1141module_exit(ov772x_module_exit);
1142 1127
1143MODULE_DESCRIPTION("SoC Camera driver for ov772x"); 1128MODULE_DESCRIPTION("SoC Camera driver for ov772x");
1144MODULE_AUTHOR("Kuninori Morimoto"); 1129MODULE_AUTHOR("Kuninori Morimoto");
diff --git a/drivers/media/video/ov9640.c b/drivers/media/video/ov9640.c
index a4f99797eb56..23412debb36b 100644
--- a/drivers/media/video/ov9640.c
+++ b/drivers/media/video/ov9640.c
@@ -738,18 +738,7 @@ static struct i2c_driver ov9640_i2c_driver = {
738 .id_table = ov9640_id, 738 .id_table = ov9640_id,
739}; 739};
740 740
741static int __init ov9640_module_init(void) 741module_i2c_driver(ov9640_i2c_driver);
742{
743 return i2c_add_driver(&ov9640_i2c_driver);
744}
745
746static void __exit ov9640_module_exit(void)
747{
748 i2c_del_driver(&ov9640_i2c_driver);
749}
750
751module_init(ov9640_module_init);
752module_exit(ov9640_module_exit);
753 742
754MODULE_DESCRIPTION("SoC Camera driver for OmniVision OV96xx"); 743MODULE_DESCRIPTION("SoC Camera driver for OmniVision OV96xx");
755MODULE_AUTHOR("Marek Vasut <marek.vasut@gmail.com>"); 744MODULE_AUTHOR("Marek Vasut <marek.vasut@gmail.com>");
diff --git a/drivers/media/video/ov9740.c b/drivers/media/video/ov9740.c
index d9a9f7174f7a..3eb07c22516e 100644
--- a/drivers/media/video/ov9740.c
+++ b/drivers/media/video/ov9740.c
@@ -998,18 +998,7 @@ static struct i2c_driver ov9740_i2c_driver = {
998 .id_table = ov9740_id, 998 .id_table = ov9740_id,
999}; 999};
1000 1000
1001static int __init ov9740_module_init(void) 1001module_i2c_driver(ov9740_i2c_driver);
1002{
1003 return i2c_add_driver(&ov9740_i2c_driver);
1004}
1005
1006static void __exit ov9740_module_exit(void)
1007{
1008 i2c_del_driver(&ov9740_i2c_driver);
1009}
1010
1011module_init(ov9740_module_init);
1012module_exit(ov9740_module_exit);
1013 1002
1014MODULE_DESCRIPTION("SoC Camera driver for OmniVision OV9740"); 1003MODULE_DESCRIPTION("SoC Camera driver for OmniVision OV9740");
1015MODULE_AUTHOR("Andrew Chew <achew@nvidia.com>"); 1004MODULE_AUTHOR("Andrew Chew <achew@nvidia.com>");
diff --git a/drivers/media/video/rj54n1cb0c.c b/drivers/media/video/rj54n1cb0c.c
index 9937386a3bae..f6419b22c258 100644
--- a/drivers/media/video/rj54n1cb0c.c
+++ b/drivers/media/video/rj54n1cb0c.c
@@ -1407,18 +1407,7 @@ static struct i2c_driver rj54n1_i2c_driver = {
1407 .id_table = rj54n1_id, 1407 .id_table = rj54n1_id,
1408}; 1408};
1409 1409
1410static int __init rj54n1_mod_init(void) 1410module_i2c_driver(rj54n1_i2c_driver);
1411{
1412 return i2c_add_driver(&rj54n1_i2c_driver);
1413}
1414
1415static void __exit rj54n1_mod_exit(void)
1416{
1417 i2c_del_driver(&rj54n1_i2c_driver);
1418}
1419
1420module_init(rj54n1_mod_init);
1421module_exit(rj54n1_mod_exit);
1422 1411
1423MODULE_DESCRIPTION("Sharp RJ54N1CB0C Camera driver"); 1412MODULE_DESCRIPTION("Sharp RJ54N1CB0C Camera driver");
1424MODULE_AUTHOR("Guennadi Liakhovetski <g.liakhovetski@gmx.de>"); 1413MODULE_AUTHOR("Guennadi Liakhovetski <g.liakhovetski@gmx.de>");
diff --git a/drivers/media/video/s5k6aa.c b/drivers/media/video/s5k6aa.c
index 68df8d5befe2..6625e46a4638 100644
--- a/drivers/media/video/s5k6aa.c
+++ b/drivers/media/video/s5k6aa.c
@@ -1663,18 +1663,7 @@ static struct i2c_driver s5k6aa_i2c_driver = {
1663 .id_table = s5k6aa_id, 1663 .id_table = s5k6aa_id,
1664}; 1664};
1665 1665
1666static int __init s5k6aa_init(void) 1666module_i2c_driver(s5k6aa_i2c_driver);
1667{
1668 return i2c_add_driver(&s5k6aa_i2c_driver);
1669}
1670
1671static void __exit s5k6aa_exit(void)
1672{
1673 i2c_del_driver(&s5k6aa_i2c_driver);
1674}
1675
1676module_init(s5k6aa_init);
1677module_exit(s5k6aa_exit);
1678 1667
1679MODULE_DESCRIPTION("Samsung S5K6AA(FX) SXGA camera driver"); 1668MODULE_DESCRIPTION("Samsung S5K6AA(FX) SXGA camera driver");
1680MODULE_AUTHOR("Sylwester Nawrocki <s.nawrocki@samsung.com>"); 1669MODULE_AUTHOR("Sylwester Nawrocki <s.nawrocki@samsung.com>");
diff --git a/drivers/media/video/s5p-tv/hdmiphy_drv.c b/drivers/media/video/s5p-tv/hdmiphy_drv.c
index 6693f4aff108..0afef77747e5 100644
--- a/drivers/media/video/s5p-tv/hdmiphy_drv.c
+++ b/drivers/media/video/s5p-tv/hdmiphy_drv.c
@@ -175,14 +175,4 @@ static struct i2c_driver hdmiphy_driver = {
175 .id_table = hdmiphy_id, 175 .id_table = hdmiphy_id,
176}; 176};
177 177
178static int __init hdmiphy_init(void) 178module_i2c_driver(hdmiphy_driver);
179{
180 return i2c_add_driver(&hdmiphy_driver);
181}
182module_init(hdmiphy_init);
183
184static void __exit hdmiphy_exit(void)
185{
186 i2c_del_driver(&hdmiphy_driver);
187}
188module_exit(hdmiphy_exit);
diff --git a/drivers/media/video/saa6588.c b/drivers/media/video/saa6588.c
index 99a2ac16f9e5..0caac50d7cf4 100644
--- a/drivers/media/video/saa6588.c
+++ b/drivers/media/video/saa6588.c
@@ -539,15 +539,4 @@ static struct i2c_driver saa6588_driver = {
539 .id_table = saa6588_id, 539 .id_table = saa6588_id,
540}; 540};
541 541
542static __init int init_saa6588(void) 542module_i2c_driver(saa6588_driver);
543{
544 return i2c_add_driver(&saa6588_driver);
545}
546
547static __exit void exit_saa6588(void)
548{
549 i2c_del_driver(&saa6588_driver);
550}
551
552module_init(init_saa6588);
553module_exit(exit_saa6588);
diff --git a/drivers/media/video/saa7110.c b/drivers/media/video/saa7110.c
index 99664205ef4e..51cd4c8f0520 100644
--- a/drivers/media/video/saa7110.c
+++ b/drivers/media/video/saa7110.c
@@ -491,15 +491,4 @@ static struct i2c_driver saa7110_driver = {
491 .id_table = saa7110_id, 491 .id_table = saa7110_id,
492}; 492};
493 493
494static __init int init_saa7110(void) 494module_i2c_driver(saa7110_driver);
495{
496 return i2c_add_driver(&saa7110_driver);
497}
498
499static __exit void exit_saa7110(void)
500{
501 i2c_del_driver(&saa7110_driver);
502}
503
504module_init(init_saa7110);
505module_exit(exit_saa7110);
diff --git a/drivers/media/video/saa7115.c b/drivers/media/video/saa7115.c
index 0ef5484696b6..2107336cd836 100644
--- a/drivers/media/video/saa7115.c
+++ b/drivers/media/video/saa7115.c
@@ -1724,15 +1724,4 @@ static struct i2c_driver saa711x_driver = {
1724 .id_table = saa711x_id, 1724 .id_table = saa711x_id,
1725}; 1725};
1726 1726
1727static __init int init_saa711x(void) 1727module_i2c_driver(saa711x_driver);
1728{
1729 return i2c_add_driver(&saa711x_driver);
1730}
1731
1732static __exit void exit_saa711x(void)
1733{
1734 i2c_del_driver(&saa711x_driver);
1735}
1736
1737module_init(init_saa711x);
1738module_exit(exit_saa711x);
diff --git a/drivers/media/video/saa7127.c b/drivers/media/video/saa7127.c
index ad964616c9d2..39c90b08eea8 100644
--- a/drivers/media/video/saa7127.c
+++ b/drivers/media/video/saa7127.c
@@ -852,15 +852,4 @@ static struct i2c_driver saa7127_driver = {
852 .id_table = saa7127_id, 852 .id_table = saa7127_id,
853}; 853};
854 854
855static __init int init_saa7127(void) 855module_i2c_driver(saa7127_driver);
856{
857 return i2c_add_driver(&saa7127_driver);
858}
859
860static __exit void exit_saa7127(void)
861{
862 i2c_del_driver(&saa7127_driver);
863}
864
865module_init(init_saa7127);
866module_exit(exit_saa7127);
diff --git a/drivers/media/video/saa7134/saa6752hs.c b/drivers/media/video/saa7134/saa6752hs.c
index f9f29cc93a8a..f147b05bd860 100644
--- a/drivers/media/video/saa7134/saa6752hs.c
+++ b/drivers/media/video/saa7134/saa6752hs.c
@@ -1001,18 +1001,7 @@ static struct i2c_driver saa6752hs_driver = {
1001 .id_table = saa6752hs_id, 1001 .id_table = saa6752hs_id,
1002}; 1002};
1003 1003
1004static __init int init_saa6752hs(void) 1004module_i2c_driver(saa6752hs_driver);
1005{
1006 return i2c_add_driver(&saa6752hs_driver);
1007}
1008
1009static __exit void exit_saa6752hs(void)
1010{
1011 i2c_del_driver(&saa6752hs_driver);
1012}
1013
1014module_init(init_saa6752hs);
1015module_exit(exit_saa6752hs);
1016 1005
1017/* 1006/*
1018 * Overrides for Emacs so that we follow Linus's tabbing style. 1007 * Overrides for Emacs so that we follow Linus's tabbing style.
diff --git a/drivers/media/video/saa717x.c b/drivers/media/video/saa717x.c
index b6172c2c517e..1e84466515aa 100644
--- a/drivers/media/video/saa717x.c
+++ b/drivers/media/video/saa717x.c
@@ -1375,15 +1375,4 @@ static struct i2c_driver saa717x_driver = {
1375 .id_table = saa717x_id, 1375 .id_table = saa717x_id,
1376}; 1376};
1377 1377
1378static __init int init_saa717x(void) 1378module_i2c_driver(saa717x_driver);
1379{
1380 return i2c_add_driver(&saa717x_driver);
1381}
1382
1383static __exit void exit_saa717x(void)
1384{
1385 i2c_del_driver(&saa717x_driver);
1386}
1387
1388module_init(init_saa717x);
1389module_exit(exit_saa717x);
diff --git a/drivers/media/video/saa7185.c b/drivers/media/video/saa7185.c
index 96f56c2f11f3..2c6b65c76e2b 100644
--- a/drivers/media/video/saa7185.c
+++ b/drivers/media/video/saa7185.c
@@ -374,15 +374,4 @@ static struct i2c_driver saa7185_driver = {
374 .id_table = saa7185_id, 374 .id_table = saa7185_id,
375}; 375};
376 376
377static __init int init_saa7185(void) 377module_i2c_driver(saa7185_driver);
378{
379 return i2c_add_driver(&saa7185_driver);
380}
381
382static __exit void exit_saa7185(void)
383{
384 i2c_del_driver(&saa7185_driver);
385}
386
387module_init(init_saa7185);
388module_exit(exit_saa7185);
diff --git a/drivers/media/video/saa7191.c b/drivers/media/video/saa7191.c
index 211fa25a1239..d7d1670e0ca3 100644
--- a/drivers/media/video/saa7191.c
+++ b/drivers/media/video/saa7191.c
@@ -656,15 +656,4 @@ static struct i2c_driver saa7191_driver = {
656 .id_table = saa7191_id, 656 .id_table = saa7191_id,
657}; 657};
658 658
659static __init int init_saa7191(void) 659module_i2c_driver(saa7191_driver);
660{
661 return i2c_add_driver(&saa7191_driver);
662}
663
664static __exit void exit_saa7191(void)
665{
666 i2c_del_driver(&saa7191_driver);
667}
668
669module_init(init_saa7191);
670module_exit(exit_saa7191);
diff --git a/drivers/media/video/sr030pc30.c b/drivers/media/video/sr030pc30.c
index d1b07aceaf94..e9d95bda2ab1 100644
--- a/drivers/media/video/sr030pc30.c
+++ b/drivers/media/video/sr030pc30.c
@@ -864,18 +864,7 @@ static struct i2c_driver sr030pc30_i2c_driver = {
864 .id_table = sr030pc30_id, 864 .id_table = sr030pc30_id,
865}; 865};
866 866
867static int __init sr030pc30_init(void) 867module_i2c_driver(sr030pc30_i2c_driver);
868{
869 return i2c_add_driver(&sr030pc30_i2c_driver);
870}
871
872static void __exit sr030pc30_exit(void)
873{
874 i2c_del_driver(&sr030pc30_i2c_driver);
875}
876
877module_init(sr030pc30_init);
878module_exit(sr030pc30_exit);
879 868
880MODULE_DESCRIPTION("Siliconfile SR030PC30 camera driver"); 869MODULE_DESCRIPTION("Siliconfile SR030PC30 camera driver");
881MODULE_AUTHOR("Sylwester Nawrocki <s.nawrocki@samsung.com>"); 870MODULE_AUTHOR("Sylwester Nawrocki <s.nawrocki@samsung.com>");
diff --git a/drivers/media/video/tda7432.c b/drivers/media/video/tda7432.c
index bd218545da9c..f7707e65761e 100644
--- a/drivers/media/video/tda7432.c
+++ b/drivers/media/video/tda7432.c
@@ -482,15 +482,4 @@ static struct i2c_driver tda7432_driver = {
482 .id_table = tda7432_id, 482 .id_table = tda7432_id,
483}; 483};
484 484
485static __init int init_tda7432(void) 485module_i2c_driver(tda7432_driver);
486{
487 return i2c_add_driver(&tda7432_driver);
488}
489
490static __exit void exit_tda7432(void)
491{
492 i2c_del_driver(&tda7432_driver);
493}
494
495module_init(init_tda7432);
496module_exit(exit_tda7432);
diff --git a/drivers/media/video/tda9840.c b/drivers/media/video/tda9840.c
index 22fa8202d5ca..465d7086babf 100644
--- a/drivers/media/video/tda9840.c
+++ b/drivers/media/video/tda9840.c
@@ -208,15 +208,4 @@ static struct i2c_driver tda9840_driver = {
208 .id_table = tda9840_id, 208 .id_table = tda9840_id,
209}; 209};
210 210
211static __init int init_tda9840(void) 211module_i2c_driver(tda9840_driver);
212{
213 return i2c_add_driver(&tda9840_driver);
214}
215
216static __exit void exit_tda9840(void)
217{
218 i2c_del_driver(&tda9840_driver);
219}
220
221module_init(init_tda9840);
222module_exit(exit_tda9840);
diff --git a/drivers/media/video/tea6415c.c b/drivers/media/video/tea6415c.c
index 827425c5b866..d1d6ea1dd273 100644
--- a/drivers/media/video/tea6415c.c
+++ b/drivers/media/video/tea6415c.c
@@ -184,15 +184,4 @@ static struct i2c_driver tea6415c_driver = {
184 .id_table = tea6415c_id, 184 .id_table = tea6415c_id,
185}; 185};
186 186
187static __init int init_tea6415c(void) 187module_i2c_driver(tea6415c_driver);
188{
189 return i2c_add_driver(&tea6415c_driver);
190}
191
192static __exit void exit_tea6415c(void)
193{
194 i2c_del_driver(&tea6415c_driver);
195}
196
197module_init(init_tea6415c);
198module_exit(exit_tea6415c);
diff --git a/drivers/media/video/tea6420.c b/drivers/media/video/tea6420.c
index f350b6c24500..38757217a074 100644
--- a/drivers/media/video/tea6420.c
+++ b/drivers/media/video/tea6420.c
@@ -166,15 +166,4 @@ static struct i2c_driver tea6420_driver = {
166 .id_table = tea6420_id, 166 .id_table = tea6420_id,
167}; 167};
168 168
169static __init int init_tea6420(void) 169module_i2c_driver(tea6420_driver);
170{
171 return i2c_add_driver(&tea6420_driver);
172}
173
174static __exit void exit_tea6420(void)
175{
176 i2c_del_driver(&tea6420_driver);
177}
178
179module_init(init_tea6420);
180module_exit(exit_tea6420);
diff --git a/drivers/media/video/ths7303.c b/drivers/media/video/ths7303.c
index 61b1dd118364..e5c0eedebc58 100644
--- a/drivers/media/video/ths7303.c
+++ b/drivers/media/video/ths7303.c
@@ -137,16 +137,4 @@ static struct i2c_driver ths7303_driver = {
137 .id_table = ths7303_id, 137 .id_table = ths7303_id,
138}; 138};
139 139
140static int __init ths7303_init(void) 140module_i2c_driver(ths7303_driver);
141{
142 return i2c_add_driver(&ths7303_driver);
143}
144
145static void __exit ths7303_exit(void)
146{
147 i2c_del_driver(&ths7303_driver);
148}
149
150module_init(ths7303_init);
151module_exit(ths7303_exit);
152
diff --git a/drivers/media/video/tlv320aic23b.c b/drivers/media/video/tlv320aic23b.c
index 286ec7e7062a..809a75a558ee 100644
--- a/drivers/media/video/tlv320aic23b.c
+++ b/drivers/media/video/tlv320aic23b.c
@@ -227,15 +227,4 @@ static struct i2c_driver tlv320aic23b_driver = {
227 .id_table = tlv320aic23b_id, 227 .id_table = tlv320aic23b_id,
228}; 228};
229 229
230static __init int init_tlv320aic23b(void) 230module_i2c_driver(tlv320aic23b_driver);
231{
232 return i2c_add_driver(&tlv320aic23b_driver);
233}
234
235static __exit void exit_tlv320aic23b(void)
236{
237 i2c_del_driver(&tlv320aic23b_driver);
238}
239
240module_init(init_tlv320aic23b);
241module_exit(exit_tlv320aic23b);
diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c
index 89a123dee14d..a5c6397ad591 100644
--- a/drivers/media/video/tuner-core.c
+++ b/drivers/media/video/tuner-core.c
@@ -1329,18 +1329,7 @@ static struct i2c_driver tuner_driver = {
1329 .id_table = tuner_id, 1329 .id_table = tuner_id,
1330}; 1330};
1331 1331
1332static __init int init_tuner(void) 1332module_i2c_driver(tuner_driver);
1333{
1334 return i2c_add_driver(&tuner_driver);
1335}
1336
1337static __exit void exit_tuner(void)
1338{
1339 i2c_del_driver(&tuner_driver);
1340}
1341
1342module_init(init_tuner);
1343module_exit(exit_tuner);
1344 1333
1345MODULE_DESCRIPTION("device driver for various TV and TV+FM radio tuners"); 1334MODULE_DESCRIPTION("device driver for various TV and TV+FM radio tuners");
1346MODULE_AUTHOR("Ralph Metzler, Gerd Knorr, Gunther Mayer"); 1335MODULE_AUTHOR("Ralph Metzler, Gerd Knorr, Gunther Mayer");
diff --git a/drivers/media/video/tvaudio.c b/drivers/media/video/tvaudio.c
index f22dbef9b95b..c5b1a7365e4f 100644
--- a/drivers/media/video/tvaudio.c
+++ b/drivers/media/video/tvaudio.c
@@ -2078,15 +2078,4 @@ static struct i2c_driver tvaudio_driver = {
2078 .id_table = tvaudio_id, 2078 .id_table = tvaudio_id,
2079}; 2079};
2080 2080
2081static __init int init_tvaudio(void) 2081module_i2c_driver(tvaudio_driver);
2082{
2083 return i2c_add_driver(&tvaudio_driver);
2084}
2085
2086static __exit void exit_tvaudio(void)
2087{
2088 i2c_del_driver(&tvaudio_driver);
2089}
2090
2091module_init(init_tvaudio);
2092module_exit(exit_tvaudio);
diff --git a/drivers/media/video/tvp514x.c b/drivers/media/video/tvp514x.c
index dd26cacd0556..cd615c1d6011 100644
--- a/drivers/media/video/tvp514x.c
+++ b/drivers/media/video/tvp514x.c
@@ -1163,15 +1163,4 @@ static struct i2c_driver tvp514x_driver = {
1163 .id_table = tvp514x_id, 1163 .id_table = tvp514x_id,
1164}; 1164};
1165 1165
1166static int __init tvp514x_init(void) 1166module_i2c_driver(tvp514x_driver);
1167{
1168 return i2c_add_driver(&tvp514x_driver);
1169}
1170
1171static void __exit tvp514x_exit(void)
1172{
1173 i2c_del_driver(&tvp514x_driver);
1174}
1175
1176module_init(tvp514x_init);
1177module_exit(tvp514x_exit);
diff --git a/drivers/media/video/tvp5150.c b/drivers/media/video/tvp5150.c
index 6be9910a6e24..f1fcedd29eb4 100644
--- a/drivers/media/video/tvp5150.c
+++ b/drivers/media/video/tvp5150.c
@@ -1121,15 +1121,4 @@ static struct i2c_driver tvp5150_driver = {
1121 .id_table = tvp5150_id, 1121 .id_table = tvp5150_id,
1122}; 1122};
1123 1123
1124static __init int init_tvp5150(void) 1124module_i2c_driver(tvp5150_driver);
1125{
1126 return i2c_add_driver(&tvp5150_driver);
1127}
1128
1129static __exit void exit_tvp5150(void)
1130{
1131 i2c_del_driver(&tvp5150_driver);
1132}
1133
1134module_init(init_tvp5150);
1135module_exit(exit_tvp5150);
diff --git a/drivers/media/video/tvp7002.c b/drivers/media/video/tvp7002.c
index 236c559d5f51..d7676d85c4df 100644
--- a/drivers/media/video/tvp7002.c
+++ b/drivers/media/video/tvp7002.c
@@ -1069,27 +1069,4 @@ static struct i2c_driver tvp7002_driver = {
1069 .id_table = tvp7002_id, 1069 .id_table = tvp7002_id,
1070}; 1070};
1071 1071
1072/* 1072module_i2c_driver(tvp7002_driver);
1073 * tvp7002_init - Initialize driver via I2C interface
1074 *
1075 * Register the TVP7002 driver.
1076 * Return 0 on success or error code on failure.
1077 */
1078static int __init tvp7002_init(void)
1079{
1080 return i2c_add_driver(&tvp7002_driver);
1081}
1082
1083/*
1084 * tvp7002_exit - Remove driver via I2C interface
1085 *
1086 * Unregister the TVP7002 driver.
1087 * Returns nothing.
1088 */
1089static void __exit tvp7002_exit(void)
1090{
1091 i2c_del_driver(&tvp7002_driver);
1092}
1093
1094module_init(tvp7002_init);
1095module_exit(tvp7002_exit);
diff --git a/drivers/media/video/tw9910.c b/drivers/media/video/tw9910.c
index a514fa61116c..8768efb8508a 100644
--- a/drivers/media/video/tw9910.c
+++ b/drivers/media/video/tw9910.c
@@ -951,21 +951,7 @@ static struct i2c_driver tw9910_i2c_driver = {
951 .id_table = tw9910_id, 951 .id_table = tw9910_id,
952}; 952};
953 953
954/* 954module_i2c_driver(tw9910_i2c_driver);
955 * module function
956 */
957static int __init tw9910_module_init(void)
958{
959 return i2c_add_driver(&tw9910_i2c_driver);
960}
961
962static void __exit tw9910_module_exit(void)
963{
964 i2c_del_driver(&tw9910_i2c_driver);
965}
966
967module_init(tw9910_module_init);
968module_exit(tw9910_module_exit);
969 955
970MODULE_DESCRIPTION("SoC Camera driver for tw9910"); 956MODULE_DESCRIPTION("SoC Camera driver for tw9910");
971MODULE_AUTHOR("Kuninori Morimoto"); 957MODULE_AUTHOR("Kuninori Morimoto");
diff --git a/drivers/media/video/upd64031a.c b/drivers/media/video/upd64031a.c
index 1aab96a88203..1e7446542091 100644
--- a/drivers/media/video/upd64031a.c
+++ b/drivers/media/video/upd64031a.c
@@ -271,15 +271,4 @@ static struct i2c_driver upd64031a_driver = {
271 .id_table = upd64031a_id, 271 .id_table = upd64031a_id,
272}; 272};
273 273
274static __init int init_upd64031a(void) 274module_i2c_driver(upd64031a_driver);
275{
276 return i2c_add_driver(&upd64031a_driver);
277}
278
279static __exit void exit_upd64031a(void)
280{
281 i2c_del_driver(&upd64031a_driver);
282}
283
284module_init(init_upd64031a);
285module_exit(exit_upd64031a);
diff --git a/drivers/media/video/upd64083.c b/drivers/media/video/upd64083.c
index 65d065aa6091..75d6acc62018 100644
--- a/drivers/media/video/upd64083.c
+++ b/drivers/media/video/upd64083.c
@@ -243,15 +243,4 @@ static struct i2c_driver upd64083_driver = {
243 .id_table = upd64083_id, 243 .id_table = upd64083_id,
244}; 244};
245 245
246static __init int init_upd64083(void) 246module_i2c_driver(upd64083_driver);
247{
248 return i2c_add_driver(&upd64083_driver);
249}
250
251static __exit void exit_upd64083(void)
252{
253 i2c_del_driver(&upd64083_driver);
254}
255
256module_init(init_upd64083);
257module_exit(exit_upd64083);
diff --git a/drivers/media/video/vp27smpx.c b/drivers/media/video/vp27smpx.c
index c15efb6e7771..7cfbc9d94a48 100644
--- a/drivers/media/video/vp27smpx.c
+++ b/drivers/media/video/vp27smpx.c
@@ -208,15 +208,4 @@ static struct i2c_driver vp27smpx_driver = {
208 .id_table = vp27smpx_id, 208 .id_table = vp27smpx_id,
209}; 209};
210 210
211static __init int init_vp27smpx(void) 211module_i2c_driver(vp27smpx_driver);
212{
213 return i2c_add_driver(&vp27smpx_driver);
214}
215
216static __exit void exit_vp27smpx(void)
217{
218 i2c_del_driver(&vp27smpx_driver);
219}
220
221module_init(init_vp27smpx);
222module_exit(exit_vp27smpx);
diff --git a/drivers/media/video/vpx3220.c b/drivers/media/video/vpx3220.c
index e5cad6ff64a1..2f67b4c5c823 100644
--- a/drivers/media/video/vpx3220.c
+++ b/drivers/media/video/vpx3220.c
@@ -588,15 +588,4 @@ static struct i2c_driver vpx3220_driver = {
588 .id_table = vpx3220_id, 588 .id_table = vpx3220_id,
589}; 589};
590 590
591static __init int init_vpx3220(void) 591module_i2c_driver(vpx3220_driver);
592{
593 return i2c_add_driver(&vpx3220_driver);
594}
595
596static __exit void exit_vpx3220(void)
597{
598 i2c_del_driver(&vpx3220_driver);
599}
600
601module_init(init_vpx3220);
602module_exit(exit_vpx3220);
diff --git a/drivers/media/video/wm8739.c b/drivers/media/video/wm8739.c
index a22f765e968a..3bb99e93febe 100644
--- a/drivers/media/video/wm8739.c
+++ b/drivers/media/video/wm8739.c
@@ -291,15 +291,4 @@ static struct i2c_driver wm8739_driver = {
291 .id_table = wm8739_id, 291 .id_table = wm8739_id,
292}; 292};
293 293
294static __init int init_wm8739(void) 294module_i2c_driver(wm8739_driver);
295{
296 return i2c_add_driver(&wm8739_driver);
297}
298
299static __exit void exit_wm8739(void)
300{
301 i2c_del_driver(&wm8739_driver);
302}
303
304module_init(init_wm8739);
305module_exit(exit_wm8739);
diff --git a/drivers/media/video/wm8775.c b/drivers/media/video/wm8775.c
index 9cedb1e69b58..bee77ea9f49e 100644
--- a/drivers/media/video/wm8775.c
+++ b/drivers/media/video/wm8775.c
@@ -339,15 +339,4 @@ static struct i2c_driver wm8775_driver = {
339 .id_table = wm8775_id, 339 .id_table = wm8775_id,
340}; 340};
341 341
342static __init int init_wm8775(void) 342module_i2c_driver(wm8775_driver);
343{
344 return i2c_add_driver(&wm8775_driver);
345}
346
347static __exit void exit_wm8775(void)
348{
349 i2c_del_driver(&wm8775_driver);
350}
351
352module_init(init_wm8775);
353module_exit(exit_wm8775);