[media] s5p-fimc: Use default input DMA burst count
authorSylwester Nawrocki <s.nawrocki@samsung.com>
Wed, 8 Dec 2010 15:48:23 +0000 (12:48 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 21 Mar 2011 23:31:39 +0000 (20:31 -0300)
Increase the input DMA "successive burst count" to default
value 4 to improve DMA performance. Minor cleanup.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/s5p-fimc/fimc-reg.c
drivers/media/video/s5p-fimc/regs-fimc.h

index 6366011..c4703b5 100644 (file)
@@ -417,12 +417,10 @@ void fimc_hw_set_in_dma(struct fimc_ctx *ctx)
                | S5P_MSCTRL_C_INT_IN_MASK
                | S5P_MSCTRL_2P_IN_ORDER_MASK);
 
-       cfg |= (S5P_MSCTRL_FRAME_COUNT(1) | S5P_MSCTRL_INPUT_MEMORY);
+       cfg |= S5P_MSCTRL_IN_BURST_COUNT(4) | S5P_MSCTRL_INPUT_MEMORY;
 
        switch (frame->fmt->color) {
-       case S5P_FIMC_RGB565:
-       case S5P_FIMC_RGB666:
-       case S5P_FIMC_RGB888:
+       case S5P_FIMC_RGB565...S5P_FIMC_RGB888:
                cfg |= S5P_MSCTRL_INFORMAT_RGB;
                break;
        case S5P_FIMC_YCBCR420:
@@ -434,10 +432,7 @@ void fimc_hw_set_in_dma(struct fimc_ctx *ctx)
                        cfg |= S5P_MSCTRL_C_INT_IN_3PLANE;
 
                break;
-       case S5P_FIMC_YCBYCR422:
-       case S5P_FIMC_YCRYCB422:
-       case S5P_FIMC_CBYCRY422:
-       case S5P_FIMC_CRYCBY422:
+       case S5P_FIMC_YCBYCR422...S5P_FIMC_CRYCBY422:
                if (frame->fmt->colplanes == 1) {
                        cfg |= ctx->in_order_1p
                                | S5P_MSCTRL_INFORMAT_YCBCR422_1P;
index 57e33f8..74ca705 100644 (file)
 
 /* Input DMA control */
 #define S5P_MSCTRL                     0xfc
-#define S5P_MSCTRL_IN_BURST_COUNT_MASK (3 << 24)
+#define S5P_MSCTRL_IN_BURST_COUNT_MASK (0xF << 24)
 #define S5P_MSCTRL_2P_IN_ORDER_MASK    (3 << 16)
 #define S5P_MSCTRL_2P_IN_ORDER_SHIFT   16
 #define S5P_MSCTRL_C_INT_IN_3PLANE     (0 << 15)
 #define S5P_MSCTRL_INFORMAT_RGB                (3 << 1)
 #define S5P_MSCTRL_INFORMAT_MASK       (3 << 1)
 #define S5P_MSCTRL_ENVID               (1 << 0)
-#define S5P_MSCTRL_FRAME_COUNT(x)      ((x) << 24)
+#define S5P_MSCTRL_IN_BURST_COUNT(x)   ((x) << 24)
 
 /* Output DMA Y/Cb/Cr offset */
 #define S5P_CIOYOFF                    0x168