Date: | 2010-04-20 08:51:29 (13 years 5 months ago) |
---|---|
Author: | Stefan Herbrechtsmeier |
Commit: | a47f6be45670465d45a3d27f7ff71986bd35d6c4 |
Message: | V4L/DVB: pxa_camera: move fifo reset direct before dma start Move the fifo reset from pxa_camera_start_capture to pxa_camera_irq direct before the dma start after an end of frame interrupt to prevent images from shifting because of old data at the begin of the frame. Signed-off-by: Stefan Herbrechtsmeier <hbmeier@hni.uni-paderborn.de> Acked-by: Robert Jarzmik <robert.jarzmik@free.fr> Tested-by: Antonio Ospite <ospite@studenti.unina.it> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> |
Files: |
drivers/media/video/pxa_camera.c (3 diffs) |
Change Details
drivers/media/video/pxa_camera.c | ||
---|---|---|
609 | 609 | */ |
610 | 610 | static void pxa_camera_start_capture(struct pxa_camera_dev *pcdev) |
611 | 611 | { |
612 | unsigned long cicr0, cifr; | |
612 | unsigned long cicr0; | |
613 | 613 | |
614 | 614 | dev_dbg(pcdev->soc_host.v4l2_dev.dev, "%s\n", __func__); |
615 | /* Reset the FIFOs */ | |
616 | cifr = __raw_readl(pcdev->base + CIFR) | CIFR_RESET_F; | |
617 | __raw_writel(cifr, pcdev->base + CIFR); | |
618 | 615 | /* Enable End-Of-Frame Interrupt */ |
619 | 616 | cicr0 = __raw_readl(pcdev->base + CICR0) | CICR0_ENB; |
620 | 617 | cicr0 &= ~CICR0_EOFM; |
... | ... | |
935 | 932 | static irqreturn_t pxa_camera_irq(int irq, void *data) |
936 | 933 | { |
937 | 934 | struct pxa_camera_dev *pcdev = data; |
938 | unsigned long status, cicr0; | |
935 | unsigned long status, cifr, cicr0; | |
939 | 936 | struct pxa_buffer *buf; |
940 | 937 | struct videobuf_buffer *vb; |
941 | 938 | |
... | ... | |
949 | 946 | __raw_writel(status, pcdev->base + CISR); |
950 | 947 | |
951 | 948 | if (status & CISR_EOF) { |
949 | /* Reset the FIFOs */ | |
950 | cifr = __raw_readl(pcdev->base + CIFR) | CIFR_RESET_F; | |
951 | __raw_writel(cifr, pcdev->base + CIFR); | |
952 | ||
952 | 953 | pcdev->active = list_first_entry(&pcdev->capture, |
953 | 954 | struct pxa_buffer, vb.queue); |
954 | 955 | vb = &pcdev->active->vb; |
Branches:
ben-wpan
ben-wpan-stefan
5396a9238205f20f811ea57898980d3ca82df0b6
jz-2.6.34
jz-2.6.34-rc5
jz-2.6.34-rc6
jz-2.6.34-rc7
jz-2.6.35
jz-2.6.36
jz-2.6.37
jz-2.6.38
jz-2.6.39
jz-3.0
jz-3.1
jz-3.11
jz-3.12
jz-3.13
jz-3.15
jz-3.16
jz-3.18-dt
jz-3.2
jz-3.3
jz-3.4
jz-3.5
jz-3.6
jz-3.6-rc2-pwm
jz-3.9
jz-3.9-clk
jz-3.9-rc8
jz47xx
jz47xx-2.6.38
master
Tags:
od-2011-09-04
od-2011-09-18
v2.6.34-rc5
v2.6.34-rc6
v2.6.34-rc7
v3.9