diff options
author | Chris Pascoe <c.pascoe@itee.uq.edu.au> | 2007-12-02 19:54:17 +1000 |
---|---|---|
committer | Chris Pascoe <c.pascoe@itee.uq.edu.au> | 2007-12-02 19:54:17 +1000 |
commit | ae76e3fe59fcc553239b3a9a8f0514014b9b44ee (patch) | |
tree | 1d4fcf376b613d37389e13663d60d473924b9bc3 /linux/drivers/media/video/tuner-xc2028.c | |
parent | eaa733af398f50375e2de38be27d489a16fd1739 (diff) | |
download | mediapointer-dvb-s2-ae76e3fe59fcc553239b3a9a8f0514014b9b44ee.tar.gz mediapointer-dvb-s2-ae76e3fe59fcc553239b3a9a8f0514014b9b44ee.tar.bz2 |
xc2028: check HAS_IF flag against table
From: Chris Pascoe <c.pascoe@itee.uq.edu.au>
When searching for the right S-Code table to load, check the HAS_IF flag
against the firmware we are checking instead of against the the "type"
requested. We already ignore the scode type requested if the caller passed
an int_freq; this makes the search by frequency consistent with that behaviour.
Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au>
Diffstat (limited to 'linux/drivers/media/video/tuner-xc2028.c')
-rw-r--r-- | linux/drivers/media/video/tuner-xc2028.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/linux/drivers/media/video/tuner-xc2028.c b/linux/drivers/media/video/tuner-xc2028.c index cf5d1f7e6..819cf2e5d 100644 --- a/linux/drivers/media/video/tuner-xc2028.c +++ b/linux/drivers/media/video/tuner-xc2028.c @@ -607,7 +607,7 @@ static int load_scode(struct dvb_frontend *fe, unsigned int type, } else { for (pos = 0; pos < priv->firm_size; pos++) { if ((priv->firm[pos].int_freq == int_freq) && - (type & HAS_IF)) + (priv->firm[pos].type & HAS_IF)) break; } if (pos == priv->firm_size) @@ -616,7 +616,7 @@ static int load_scode(struct dvb_frontend *fe, unsigned int type, p = priv->firm[pos].ptr; - if (type & HAS_IF) { + if (priv->firm[pos].type & HAS_IF) { if (priv->firm[pos].size != 12 * 16 || scode >= 16) return -EINVAL; p += 12 * scode; |