diff options
author | Chris Pascoe <c.pascoe@itee.uq.edu.au> | 2007-11-19 23:18:36 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-01-25 19:02:32 -0200 |
commit | 11a9eff9b66b1cf860faa84084328d798d18834c (patch) | |
tree | 785846860616e77692e1bed3da6f71a06dc4bbcb | |
parent | 47bd5bc6486a5288aa3002533c24c8e9e564f9ac (diff) | |
download | blackbird-op-linux-11a9eff9b66b1cf860faa84084328d798d18834c.tar.gz blackbird-op-linux-11a9eff9b66b1cf860faa84084328d798d18834c.zip |
V4L/DVB (6651): xc2028: mask off type correctly when searching for standard-specific types
When searching for standard-specific analog firmware, only certain
type bits are valid, much like for DTV. Mask them off when finding
the firmware to load.
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-types.h | 2 | ||||
-rw-r--r-- | drivers/media/video/tuner-xc2028.c | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/drivers/media/video/tuner-xc2028-types.h b/drivers/media/video/tuner-xc2028-types.h index 6cee48193c47..c0dc6ec19f09 100644 --- a/drivers/media/video/tuner-xc2028-types.h +++ b/drivers/media/video/tuner-xc2028-types.h @@ -43,6 +43,8 @@ /* There's a FM | BASE firmware + FM specific firmware (std=0) */ #define FM (1<<10) +#define STD_SPECIFIC_TYPES (MTS|FM|LCD|NOGD) + /* Applies only for FM firmware Makes it use RF input 1 (pin #2) instead of input 2 (pin #4) */ diff --git a/drivers/media/video/tuner-xc2028.c b/drivers/media/video/tuner-xc2028.c index 115738d75f3e..5b646fed340f 100644 --- a/drivers/media/video/tuner-xc2028.c +++ b/drivers/media/video/tuner-xc2028.c @@ -403,7 +403,9 @@ static int seek_firmware(struct dvb_frontend *fe, unsigned int type, else if (type & SCODE) type &= SCODE_TYPES; else if (type & DTV_TYPES) - type = type & DTV_TYPES; + type &= DTV_TYPES; + else if (type & STD_SPECIFIC_TYPES) + type &= STD_SPECIFIC_TYPES; /* Seek for exact match */ for (i = 0; i < priv->firm_size; i++) { |