diff options
author | Stephen Williams <stephen.gw@gmail.com> | 2006-01-09 12:25:21 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@brturbo.com.br> | 2006-01-09 12:25:21 -0500 |
commit | 2c3f11b20fc6c41b4d3f64f301f525e35f18b6bc (patch) | |
tree | 5058d609de34137935e7481bf04b80b08d11e5ce /drivers/media/dvb/cinergyT2 | |
parent | d21838dd7d098e102ced2fafed62dcb133c4d71c (diff) |
V4L/DVB (3129): correct FE_READ_UNCORRECTED_BLOCKS
- Make FE_READ_UNCORRECTED_BLOCKS reset the count after each call,
thus returning a momentary value like all other demods do,
instead of an absolute, ever increasing count.
Signed-off-by: Stephen Williams <stephen.williams@gmail.com>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Diffstat (limited to 'drivers/media/dvb/cinergyT2')
-rw-r--r-- | drivers/media/dvb/cinergyT2/cinergyT2.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/media/dvb/cinergyT2/cinergyT2.c b/drivers/media/dvb/cinergyT2/cinergyT2.c index 1d69bf031fb9..e2598bbc2bb5 100644 --- a/drivers/media/dvb/cinergyT2/cinergyT2.c +++ b/drivers/media/dvb/cinergyT2/cinergyT2.c | |||
@@ -564,10 +564,15 @@ static int cinergyt2_ioctl (struct inode *inode, struct file *file, | |||
564 | (__u16 __user *) arg); | 564 | (__u16 __user *) arg); |
565 | 565 | ||
566 | case FE_READ_UNCORRECTED_BLOCKS: | 566 | case FE_READ_UNCORRECTED_BLOCKS: |
567 | /* UNC are already converted to host byte order... */ | 567 | { |
568 | return put_user(stat->uncorrected_block_count, | 568 | uint32_t unc_count; |
569 | (__u32 __user *) arg); | ||
570 | 569 | ||
570 | unc_count = stat->uncorrected_block_count; | ||
571 | stat->uncorrected_block_count = 0; | ||
572 | |||
573 | /* UNC are already converted to host byte order... */ | ||
574 | return put_user(unc_count,(__u32 __user *) arg); | ||
575 | } | ||
571 | case FE_SET_FRONTEND: | 576 | case FE_SET_FRONTEND: |
572 | { | 577 | { |
573 | struct dvbt_set_parameters_msg *param = &cinergyt2->param; | 578 | struct dvbt_set_parameters_msg *param = &cinergyt2->param; |