diff options
author | Nicolas Pitre <nicolas.pitre@linaro.org> | 2011-08-17 22:47:15 -0400 |
---|---|---|
committer | Nicolas Pitre <nicolas.pitre@linaro.org> | 2011-08-17 22:47:15 -0400 |
commit | dbf7603a92cd895b8c1017734bc30fd9a32fd933 (patch) | |
tree | 7e0e8c35d5db964ee43494a721dee3c486e4e458 /sound/usb/caiaq/audio.c | |
parent | 044c31fdf80ed9d8e6bfb33913d085c3efc6febe (diff) | |
parent | d31bf2883542cd3414674238f94123bd1d9c0b9f (diff) |
Merge commit 'v3.0.3' into linaro-3.0linux-linaro-3.0-2011.08-0
Diffstat (limited to 'sound/usb/caiaq/audio.c')
-rw-r--r-- | sound/usb/caiaq/audio.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/usb/caiaq/audio.c b/sound/usb/caiaq/audio.c index d0d493ca28a..aa52b3e13bb 100644 --- a/sound/usb/caiaq/audio.c +++ b/sound/usb/caiaq/audio.c @@ -614,6 +614,7 @@ static void read_completed(struct urb *urb) struct snd_usb_caiaqdev *dev; struct urb *out; int frame, len, send_it = 0, outframe = 0; + size_t offset = 0; if (urb->status || !info) return; @@ -634,7 +635,8 @@ static void read_completed(struct urb *urb) len = urb->iso_frame_desc[outframe].actual_length; out->iso_frame_desc[outframe].length = len; out->iso_frame_desc[outframe].actual_length = 0; - out->iso_frame_desc[outframe].offset = BYTES_PER_FRAME * frame; + out->iso_frame_desc[outframe].offset = offset; + offset += len; if (len > 0) { spin_lock(&dev->spinlock); @@ -650,7 +652,7 @@ static void read_completed(struct urb *urb) } if (send_it) { - out->number_of_packets = FRAMES_PER_URB; + out->number_of_packets = outframe; out->transfer_flags = URB_ISO_ASAP; usb_submit_urb(out, GFP_ATOMIC); } |