From 1be9e9b31e3d8e17e7f127742bed3b1904cc9d1b Mon Sep 17 00:00:00 2001 From: Chris Pascoe Date: Mon, 19 Nov 2007 19:33:16 +1000 Subject: xc2028: correctly select 8MHz firmware From: Chris Pascoe 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 Signed-off-by: Mauro Carvalho Chehab --- linux/drivers/media/video/tuner-xc2028.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'linux/drivers/media/video/tuner-xc2028.c') diff --git a/linux/drivers/media/video/tuner-xc2028.c b/linux/drivers/media/video/tuner-xc2028.c index 1a397dc1d..2a17d750a 100644 --- a/linux/drivers/media/video/tuner-xc2028.c +++ b/linux/drivers/media/video/tuner-xc2028.c @@ -623,7 +623,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? */ @@ -831,7 +832,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, -- cgit v1.2.3