[media] s5p-fimc: fix MSCTRL.FIFO_CTRL for performance enhancement
authorHyunwoong Kim <khw0178.kim@samsung.com>
Wed, 29 Dec 2010 10:08:32 +0000 (07:08 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 21 Mar 2011 23:31:40 +0000 (20:31 -0300)
This patch fixes the value of FIFO_CTRL in MSCTRL.
Main-scaler has the value to specify a basis FIFO control of input DMA.

The description of FIFO_CTRL has been changed as below.
0 = FIFO Empty (Next burst transaction is possible when FIFO is empty)
1 = FIFO Full (Next burst transaction is possible except Full FIFO)

Value '1' is recommended to enhance the FIMC operation performance.

Reviewed-by: Jonghun Han <jonghun.han@samsung.com>
Signed-off-by: Hyunwoong Kim <khw0178.kim@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@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 8e5a0bb..10684ae 100644 (file)
@@ -437,7 +437,9 @@ 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_IN_BURST_COUNT(4) | S5P_MSCTRL_INPUT_MEMORY;
+       cfg |= (S5P_MSCTRL_IN_BURST_COUNT(4)
+               | S5P_MSCTRL_INPUT_MEMORY
+               | S5P_MSCTRL_FIFO_CTRL_FULL);
 
        switch (frame->fmt->color) {
        case S5P_FIMC_RGB565...S5P_FIMC_RGB888:
index 04669a5..0fea3e6 100644 (file)
 #define S5P_MSCTRL_FLIP_X_MIRROR       (1 << 13)
 #define S5P_MSCTRL_FLIP_Y_MIRROR       (2 << 13)
 #define S5P_MSCTRL_FLIP_180            (3 << 13)
+#define S5P_MSCTRL_FIFO_CTRL_FULL      (1 << 12)
 #define S5P_MSCTRL_ORDER422_SHIFT      4
 #define S5P_MSCTRL_ORDER422_YCBYCR     (0 << 4)
 #define S5P_MSCTRL_ORDER422_CBYCRY     (1 << 4)