diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-29 20:08:22 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-29 20:08:22 -0400 |
commit | 36f571e9ed0419e73d127e18aa8992ced867268c (patch) | |
tree | 94fc210322484b5fa082f28dd2bad702c1685ba9 /drivers/firewire/core-cdev.c | |
parent | 8027678202d0e51ac2aa08111ec86b5a77777431 (diff) | |
parent | 0699a73af3811b66b1ab5650575acee5eea841ab (diff) |
Merge tag 'firewire-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394
Pull firewire regression fix from Stefan Richter:
"This fixes corrupted video capture, seen with IIDC/DCAM video and
certain buffer settings. (Regression since v3.4 inclusive.)"
* tag 'firewire-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
firewire: fix libdc1394/FlyCap2 iso event regression
Diffstat (limited to 'drivers/firewire/core-cdev.c')
-rw-r--r-- | drivers/firewire/core-cdev.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/firewire/core-cdev.c b/drivers/firewire/core-cdev.c index 7ef316fdc4d9..ac1b43a04285 100644 --- a/drivers/firewire/core-cdev.c +++ b/drivers/firewire/core-cdev.c | |||
@@ -54,6 +54,7 @@ | |||
54 | #define FW_CDEV_KERNEL_VERSION 5 | 54 | #define FW_CDEV_KERNEL_VERSION 5 |
55 | #define FW_CDEV_VERSION_EVENT_REQUEST2 4 | 55 | #define FW_CDEV_VERSION_EVENT_REQUEST2 4 |
56 | #define FW_CDEV_VERSION_ALLOCATE_REGION_END 4 | 56 | #define FW_CDEV_VERSION_ALLOCATE_REGION_END 4 |
57 | #define FW_CDEV_VERSION_AUTO_FLUSH_ISO_OVERFLOW 5 | ||
57 | 58 | ||
58 | struct client { | 59 | struct client { |
59 | u32 version; | 60 | u32 version; |
@@ -1005,6 +1006,8 @@ static int ioctl_create_iso_context(struct client *client, union ioctl_arg *arg) | |||
1005 | a->channel, a->speed, a->header_size, cb, client); | 1006 | a->channel, a->speed, a->header_size, cb, client); |
1006 | if (IS_ERR(context)) | 1007 | if (IS_ERR(context)) |
1007 | return PTR_ERR(context); | 1008 | return PTR_ERR(context); |
1009 | if (client->version < FW_CDEV_VERSION_AUTO_FLUSH_ISO_OVERFLOW) | ||
1010 | context->drop_overflow_headers = true; | ||
1008 | 1011 | ||
1009 | /* We only support one context at this time. */ | 1012 | /* We only support one context at this time. */ |
1010 | spin_lock_irq(&client->lock); | 1013 | spin_lock_irq(&client->lock); |