aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Pascoe <c.pascoe@itee.uq.edu.au>2007-11-19 06:33:16 -0300
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-01-25 19:02:26 -0200
commitddf1c5f1d78c1ce30a7e6b2447670fc0e103bb62 (patch)
tree0b7efeb8e14f19082380a86bbf33fe94faa7b985
parent2ce4b3aa7c3c199466ae9f5ed32ea177912c8c3a (diff)
V4L/DVB (6640): xc2028: correctly select 8MHz firmware
We were using priv->bandwidth to select the base firmware to load, not the requested bandwidth value, oops. Also, 7MHz Digital TV needs 8MHz base firmware loaded. Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r--drivers/media/video/tuner-xc2028.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/media/video/tuner-xc2028.c b/drivers/media/video/tuner-xc2028.c
index e85992f970f..adef80e627b 100644
--- a/drivers/media/video/tuner-xc2028.c
+++ b/drivers/media/video/tuner-xc2028.c
@@ -608,7 +608,8 @@ static int check_firmware(struct dvb_frontend *fe, enum tuner_mode new_mode,
if (priv->ctrl.type == XC2028_FIRM_MTS)
type0 |= MTS;
- if (priv->bandwidth == 8)
+ if (bandwidth == BANDWIDTH_7_MHZ ||
+ bandwidth == BANDWIDTH_8_MHZ)
type0 |= F8MHZ;
/* FIXME: How to load FM and FM|INPUT1 firmwares? */
@@ -814,7 +815,8 @@ static int xc2028_set_tv_freq(struct dvb_frontend *fe,
tuner_dbg("%s called\n", __FUNCTION__);
return generic_set_tv_freq(fe, 62500l * p->frequency, T_ANALOG_TV,
- p->std, BANDWIDTH_8_MHZ /* NOT USED */);
+ p->std, BANDWIDTH_8_MHZ);
+ /* XXX Are some analog standards 6MHz? */
}
static int xc2028_set_params(struct dvb_frontend *fe,