The FIMC FIFO output is not supported in the driver due to
some hardware issues thus we can remove some code as out_path
is always FIMC_IO_DMA.

Signed-off-by: Sylwester Nawrocki <s.nawro...@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.p...@samsung.com>
---
 drivers/media/platform/s5p-fimc/fimc-reg.c |   38 ++++++++++++----------------
 drivers/media/platform/s5p-fimc/fimc-reg.h |    4 +--
 2 files changed, 18 insertions(+), 24 deletions(-)

diff --git a/drivers/media/platform/s5p-fimc/fimc-reg.c 
b/drivers/media/platform/s5p-fimc/fimc-reg.c
index 9c3c461..f0c34ca 100644
--- a/drivers/media/platform/s5p-fimc/fimc-reg.c
+++ b/drivers/media/platform/s5p-fimc/fimc-reg.c
@@ -344,30 +344,31 @@ void fimc_hw_set_mainscaler(struct fimc_ctx *ctx)
        }
 }
 
-void fimc_hw_en_capture(struct fimc_ctx *ctx)
+void fimc_hw_enable_capture(struct fimc_ctx *ctx)
 {
        struct fimc_dev *dev = ctx->fimc_dev;
+       u32 cfg;
 
-       u32 cfg = readl(dev->regs + FIMC_REG_CIIMGCPT);
-
-       if (ctx->out_path == FIMC_IO_DMA) {
-               /* one shot mode */
-               cfg |= FIMC_REG_CIIMGCPT_CPT_FREN_ENABLE |
-                       FIMC_REG_CIIMGCPT_IMGCPTEN;
-       } else {
-               /* Continuous frame capture mode (freerun). */
-               cfg &= ~(FIMC_REG_CIIMGCPT_CPT_FREN_ENABLE |
-                        FIMC_REG_CIIMGCPT_CPT_FRMOD_CNT);
-               cfg |= FIMC_REG_CIIMGCPT_IMGCPTEN;
-       }
+       cfg = readl(dev->regs + FIMC_REG_CIIMGCPT);
+       cfg |= FIMC_REG_CIIMGCPT_CPT_FREN_ENABLE;
 
        if (ctx->scaler.enabled)
                cfg |= FIMC_REG_CIIMGCPT_IMGCPTEN_SC;
+       else
+               cfg &= FIMC_REG_CIIMGCPT_IMGCPTEN_SC;
 
        cfg |= FIMC_REG_CIIMGCPT_IMGCPTEN;
        writel(cfg, dev->regs + FIMC_REG_CIIMGCPT);
 }
 
+void fimc_hw_disable_capture(struct fimc_dev *dev)
+{
+       u32 cfg = readl(dev->regs + FIMC_REG_CIIMGCPT);
+       cfg &= ~(FIMC_REG_CIIMGCPT_IMGCPTEN |
+                FIMC_REG_CIIMGCPT_IMGCPTEN_SC);
+       writel(cfg, dev->regs + FIMC_REG_CIIMGCPT);
+}
+
 void fimc_hw_set_effect(struct fimc_ctx *ctx)
 {
        struct fimc_dev *dev = ctx->fimc_dev;
@@ -737,13 +738,6 @@ void fimc_hw_activate_input_dma(struct fimc_dev *dev, bool 
on)
        writel(cfg, dev->regs + FIMC_REG_MSCTRL);
 }
 
-void fimc_hw_dis_capture(struct fimc_dev *dev)
-{
-       u32 cfg = readl(dev->regs + FIMC_REG_CIIMGCPT);
-       cfg &= ~(FIMC_REG_CIIMGCPT_IMGCPTEN | FIMC_REG_CIIMGCPT_IMGCPTEN_SC);
-       writel(cfg, dev->regs + FIMC_REG_CIIMGCPT);
-}
-
 /* Return an index to the buffer actually being written. */
 s32 fimc_hw_get_frame_index(struct fimc_dev *dev)
 {
@@ -776,13 +770,13 @@ s32 fimc_hw_get_prev_frame_index(struct fimc_dev *dev)
 void fimc_activate_capture(struct fimc_ctx *ctx)
 {
        fimc_hw_enable_scaler(ctx->fimc_dev, ctx->scaler.enabled);
-       fimc_hw_en_capture(ctx);
+       fimc_hw_enable_capture(ctx);
 }
 
 void fimc_deactivate_capture(struct fimc_dev *fimc)
 {
        fimc_hw_en_lastirq(fimc, true);
-       fimc_hw_dis_capture(fimc);
+       fimc_hw_disable_capture(fimc);
        fimc_hw_enable_scaler(fimc, false);
        fimc_hw_en_lastirq(fimc, false);
 }
diff --git a/drivers/media/platform/s5p-fimc/fimc-reg.h 
b/drivers/media/platform/s5p-fimc/fimc-reg.h
index b6abfc7..f3e0b78 100644
--- a/drivers/media/platform/s5p-fimc/fimc-reg.h
+++ b/drivers/media/platform/s5p-fimc/fimc-reg.h
@@ -287,7 +287,7 @@ void fimc_hw_en_lastirq(struct fimc_dev *fimc, int enable);
 void fimc_hw_en_irq(struct fimc_dev *fimc, int enable);
 void fimc_hw_set_prescaler(struct fimc_ctx *ctx);
 void fimc_hw_set_mainscaler(struct fimc_ctx *ctx);
-void fimc_hw_en_capture(struct fimc_ctx *ctx);
+void fimc_hw_enable_capture(struct fimc_ctx *ctx);
 void fimc_hw_set_effect(struct fimc_ctx *ctx);
 void fimc_hw_set_rgb_alpha(struct fimc_ctx *ctx);
 void fimc_hw_set_in_dma(struct fimc_ctx *ctx);
@@ -306,7 +306,7 @@ int fimc_hw_set_camera_type(struct fimc_dev *fimc,
 void fimc_hw_clear_irq(struct fimc_dev *dev);
 void fimc_hw_enable_scaler(struct fimc_dev *dev, bool on);
 void fimc_hw_activate_input_dma(struct fimc_dev *dev, bool on);
-void fimc_hw_dis_capture(struct fimc_dev *dev);
+void fimc_hw_disable_capture(struct fimc_dev *dev);
 s32 fimc_hw_get_frame_index(struct fimc_dev *dev);
 s32 fimc_hw_get_prev_frame_index(struct fimc_dev *dev);
 void fimc_activate_capture(struct fimc_ctx *ctx);
-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to