V4L/DVB (7749): cx88: fix tuner setup
authorMauro Carvalho Chehab <mchehab@infradead.org>
Sat, 26 Apr 2008 14:55:09 +0000 (11:55 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Tue, 29 Apr 2008 21:41:32 +0000 (18:41 -0300)
commit4bf1226a7018bf79d05e0ce59244d702819529d1
treea113ca63819851527db9ae341c6c47b2b64fcad1
parent7663c1e2792a9662b23dec6e19bfcd3d55360b8f
V4L/DVB (7749): cx88: 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 cx88 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 cx88-i2c, moving it to the proper
place, after taking eeprom into account.

Reviewed-by: Gert Vervoort <gert.vervoort@hccnet.nl>
Reviewed-by: Ian Pickworth <ian@pickworth.me.uk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/cx88/cx88-cards.c
drivers/media/video/cx88/cx88-i2c.c