summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--linux/drivers/media/dvb/ttpci/av7110.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/linux/drivers/media/dvb/ttpci/av7110.c b/linux/drivers/media/dvb/ttpci/av7110.c
index b2a1e449b..af1336d28 100644
--- a/linux/drivers/media/dvb/ttpci/av7110.c
+++ b/linux/drivers/media/dvb/ttpci/av7110.c
@@ -825,9 +825,13 @@ static int StartHWFilter(struct dvb_demux_filter *dvbdmxfilter)
buf[3] = mode;
ret = av7110_fw_request(av7110, buf, 20, &handle, 1);
- if (ret < 0) {
- dprintk(1, "StartHWFilter error\n");
- return ret;
+ if (ret != 0 || handle >= 32) {
+ printk("dvb-ttpci: %s error buf %04x %04x %04x %04x "
+ "ret %x handle %04x\n",
+ __FUNCTION__, buf[0], buf[1], buf[2], buf[3],
+ ret, handle);
+ dvbdmxfilter->hw_handle = 0xffff;
+ return -1;
}
av7110->handle2filter[handle] = dvbdmxfilter;
@@ -847,8 +851,9 @@ static int StopHWFilter(struct dvb_demux_filter *dvbdmxfilter)
dprintk(4, "%p\n", av7110);
handle = dvbdmxfilter->hw_handle;
- if (handle > 32) {
- dprintk(1, "StopHWFilter tried to stop invalid filter %d, filter type = %d\n", handle, dvbdmxfilter->type);
+ if (handle >= 32) {
+ printk("%s tried to stop invalid filter %04x, filter type = %x\n",
+ __FUNCTION__, handle, dvbdmxfilter->type);
return 0;
}
@@ -858,11 +863,11 @@ static int StopHWFilter(struct dvb_demux_filter *dvbdmxfilter)
buf[1] = 1;
buf[2] = handle;
ret = av7110_fw_request(av7110, buf, 3, answ, 2);
- if (ret)
- dprintk(1, "StopHWFilter error\n");
-
- if (answ[1] != handle) {
- dprintk(2, "filter %d shutdown error :%d\n", handle, answ[1]);
+ if (ret != 0 || answ[1] != handle) {
+ printk("dvb-ttpci: %s error cmd %04x %04x %04x ret %x "
+ "resp %04x %04x pid %d\n",
+ __FUNCTION__, buf[0], buf[1], buf[2], ret,
+ answ[0], answ[1], dvbdmxfilter->feed->pid);
ret = -1;
}
return ret;