[PATCH] v4l: 848: fixed tda8290 autodetection
authorHartmut Hackmann <hartmut.hackmann@t.online.de>
Wed, 9 Nov 2005 05:38:09 +0000 (21:38 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 9 Nov 2005 15:56:24 +0000 (07:56 -0800)
- Fixed tda8290 autodetection

Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t.online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/media/video/tuner-core.c

index 6fd59be191823ae3c1a50950a1580b1897b9b707..77d25cc9cdbe882c426e5f82ad821a4a399d163e 100644 (file)
@@ -362,16 +362,6 @@ static int tuner_attach(struct i2c_adapter *adap, int addr, int kind)
        /* TEA5767 autodetection code - only for addr = 0xc0 */
        if (!no_autodetect) {
                switch (addr) {
-               case 0x60:
-                       if (tea5767_autodetection(&t->i2c) != EINVAL) {
-                               t->type = TUNER_TEA5767;
-                               t->mode_mask = T_RADIO;
-                               t->mode = T_STANDBY;
-                               t->freq = 87.5 * 16; /* Sets freq to FM range */
-                               default_mode_mask &= ~T_RADIO;
-
-                               goto register_client;
-                       }
                case 0x42:
                case 0x43:
                case 0x4a:
@@ -379,12 +369,23 @@ static int tuner_attach(struct i2c_adapter *adap, int addr, int kind)
                        /* If chip is not tda8290, don't register.
                           since it can be tda9887*/
                        if (tda8290_probe(&t->i2c) != 0) {
+                               tuner_dbg("chip at addr %x is not a tda8290\n", addr);
                                kfree(t);
                                return 0;
                        }
+                       break;
+               case 0x60:
+                       if (tea5767_autodetection(&t->i2c) != EINVAL) {
+                               t->type = TUNER_TEA5767;
+                               t->mode_mask = T_RADIO;
+                               t->mode = T_STANDBY;
+                               t->freq = 87.5 * 16; /* Sets freq to FM range */
+                               default_mode_mask &= ~T_RADIO;
 
+                               goto register_client;
+                       }
+                       break;
                }
-
        }
 
        /* Initializes only the first adapter found */