]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/media/video/tvp5150.c
Merge branch 'master' into tk71
[mv-sheeva.git] / drivers / media / video / tvp5150.c
index 1654f65cca7c0dfe7c487b12fe32c37711a0b6e3..58927664d3ea17250027e354fb5e5fa8aaa1d775 100644 (file)
@@ -11,7 +11,6 @@
 #include <linux/delay.h>
 #include <media/v4l2-device.h>
 #include <media/tvp5150.h>
-#include <media/v4l2-i2c-drv.h>
 #include <media/v4l2-chip-ident.h>
 
 #include "tvp5150_reg.h"
@@ -277,7 +276,7 @@ static int tvp5150_log_status(struct v4l2_subdev *sd)
 
 static inline void tvp5150_selmux(struct v4l2_subdev *sd)
 {
-       int opmode=0;
+       int opmode = 0;
        struct tvp5150 *decoder = to_tvp5150(sd);
        int input = 0;
        unsigned char val;
@@ -290,12 +289,10 @@ static inline void tvp5150_selmux(struct v4l2_subdev *sd)
                input |= 2;
                /* fall through */
        case TVP5150_COMPOSITE0:
-               opmode=0x30;            /* TV Mode */
                break;
        case TVP5150_SVIDEO:
        default:
                input |= 1;
-               opmode=0;               /* Auto Mode */
                break;
        }
 
@@ -1111,9 +1108,25 @@ static const struct i2c_device_id tvp5150_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, tvp5150_id);
 
-static struct v4l2_i2c_driver_data v4l2_i2c_data = {
-       .name = "tvp5150",
-       .probe = tvp5150_probe,
-       .remove = tvp5150_remove,
-       .id_table = tvp5150_id,
+static struct i2c_driver tvp5150_driver = {
+       .driver = {
+               .owner  = THIS_MODULE,
+               .name   = "tvp5150",
+       },
+       .probe          = tvp5150_probe,
+       .remove         = tvp5150_remove,
+       .id_table       = tvp5150_id,
 };
+
+static __init int init_tvp5150(void)
+{
+       return i2c_add_driver(&tvp5150_driver);
+}
+
+static __exit void exit_tvp5150(void)
+{
+       i2c_del_driver(&tvp5150_driver);
+}
+
+module_init(init_tvp5150);
+module_exit(exit_tvp5150);