V4L/DVB (7753): saa7134: fix tuner setup
authorMauro Carvalho Chehab <mchehab@infradead.org>
Sat, 26 Apr 2008 17:05:58 +0000 (14:05 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Tue, 29 Apr 2008 21:41:33 +0000 (18:41 -0300)
commitc117d05cd4c09342f97ba1c6ef63f0bae3239a39
treead7a4eaad8672cc2015285b819b93d829b41aacc
parent397be5c4d66e6583ce3d38b0f99a56eb9818492b
V4L/DVB (7753): saa7134: fix tuner setup

Tuner setup were happening during i2c attach callback. This means that it would
happen on two conditions:

        1) if tuner module weren't load, it will happen at request_module("tuner");

        2) if tuner is not compiled as a module, or it is already loaded
           (for example, on setups with more than one tuner), it will happen
           when saa7134 registers I2C bus.

Due to that, if tuner were loaded, tuner setup will happen _before_ reading
the proper values at tuner eeprom. Since set_addr refuses to change for a tuner
that were previously defined (except if the tuner_addr is set), this were
making eeprom tuner detection useless.

This patch removes tuner type setup from saa7134-i2c, moving it to the proper
place, after taking eeprom into account.

Reviewed-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/saa7134/saa7134-cards.c
drivers/media/video/saa7134/saa7134-i2c.c