summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorQuinn Jensen <quinn.jensen@freescale.com>2007-10-24 21:26:49 -0600
committerQuinn Jensen <quinn.jensen@freescale.com>2007-10-24 21:26:49 -0600
commitad48d19287b55d81884f33b319707ced4906e9c7 (patch)
treeee4c933405d07124d90f6f9a8ce1a446acf9393f /drivers
parent23c0a9c5dd350701e0ef3f428d37da4130f382ce (diff)
CR ENGR00053136 fix mx27 v4l2 rotation cacheflush
Patch for CR ENGR00053136: Fix mx27 v4l2 rotation cacheflush. This patch fixes cache invalidation by MX27 V4L2 driver when rotation is used. The consistent_sync function was is restricted to kernel direct mapped addresses. Applies to linux 2.6.22 kernel on MX27 platform. http://www.bitshrine.org/gpp/linux-2.6.22-mx-CR-ENGR00053136-fix-mx27-v4l2-rotation-cac.patch
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/video/mxc/capture/mx27_prpsw.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/video/mxc/capture/mx27_prpsw.c b/drivers/media/video/mxc/capture/mx27_prpsw.c
index 4e6c50e73294..b39623f25c1f 100644
--- a/drivers/media/video/mxc/capture/mx27_prpsw.c
+++ b/drivers/media/video/mxc/capture/mx27_prpsw.c
@@ -23,6 +23,7 @@
#include <linux/string.h>
#include <linux/fb.h>
#include <linux/pci.h>
+#include <asm/cacheflush.h>
#include <asm/io.h>
#include <asm/irq.h>
@@ -830,7 +831,7 @@ static void rotation(unsigned long private)
* Similarly we don't flush the data after SW rotation/mirroring.
*/
if (size < 320 * 240 * 2)
- consistent_sync(src, size, DMA_FROM_DEVICE);
+ dmac_inv_range(src, src + size);
switch (cam->rotation) {
case V4L2_MXC_ROTATE_VERT_FLIP:
opl_vmirror_u16(src, s_stride, width, height, dst, d_stride);