diff options
| author | Ingo Molnar <mingo@elte.hu> | 2011-08-04 11:09:27 +0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2011-08-04 11:09:27 +0400 |
| commit | d7619fe39d9769b4d4545cc511c891deea18ae08 (patch) | |
| tree | 0a902533414001075b2245825e145cc2e35ce985 /drivers/media/video/pwc/pwc-uncompress.c | |
| parent | 9ea71503a8ed9184d2d0b8ccc4d269d05f7940ae (diff) | |
| parent | ed8f37370d83e695c0a4fa5d5fc7a83ecb947526 (diff) | |
| download | linux-d7619fe39d9769b4d4545cc511c891deea18ae08.tar.xz | |
Merge branch 'linus' into core/urgent
Diffstat (limited to 'drivers/media/video/pwc/pwc-uncompress.c')
| -rw-r--r-- | drivers/media/video/pwc/pwc-uncompress.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/drivers/media/video/pwc/pwc-uncompress.c b/drivers/media/video/pwc/pwc-uncompress.c index 3b73f295f032..51265092bd31 100644 --- a/drivers/media/video/pwc/pwc-uncompress.c +++ b/drivers/media/video/pwc/pwc-uncompress.c @@ -30,26 +30,17 @@ #include <asm/types.h> #include "pwc.h" -#include "pwc-uncompress.h" #include "pwc-dec1.h" #include "pwc-dec23.h" -int pwc_decompress(struct pwc_device *pdev) +int pwc_decompress(struct pwc_device *pdev, struct pwc_frame_buf *fbuf) { - struct pwc_frame_buf *fbuf; int n, line, col, stride; void *yuv, *image; u16 *src; u16 *dsty, *dstu, *dstv; - if (pdev == NULL) - return -EFAULT; - - fbuf = pdev->read_frame; - if (fbuf == NULL) - return -EFAULT; - image = pdev->image_data; - image += pdev->images[pdev->fill_image].offset; + image = vb2_plane_vaddr(&fbuf->vb, 0); yuv = fbuf->data + pdev->frame_header_size; /* Skip header */ @@ -64,9 +55,13 @@ int pwc_decompress(struct pwc_device *pdev) * determine this using the type of the webcam */ memcpy(raw_frame->cmd, pdev->cmd_buf, 4); memcpy(raw_frame+1, yuv, pdev->frame_size); + vb2_set_plane_payload(&fbuf->vb, 0, + pdev->frame_size + sizeof(struct pwc_raw_frame)); return 0; } + vb2_set_plane_payload(&fbuf->vb, 0, pdev->view.size); + if (pdev->vbandlength == 0) { /* Uncompressed mode. * We copy the data into the output buffer, using the viewport |
