]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
[media] s5p-fimc: Clean up capture enable/disable helpers
authorSylwester Nawrocki <s.nawrocki@samsung.com>
Thu, 22 Nov 2012 17:01:39 +0000 (14:01 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 21 Dec 2012 14:21:43 +0000 (12:21 -0200)
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.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/platform/s5p-fimc/fimc-reg.c
drivers/media/platform/s5p-fimc/fimc-reg.h

index 9c3c461a5099e12a10b094c5da7ee741805e9cb9..f0c34ca41894d8858128035db72d5ad2970af422 100644 (file)
@@ -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);
 }
index b6abfc7b72ace7472c7caea9d398500f3402be08..f3e0b78a37366cf3a96abaf261b2d53a95eb68a6 100644 (file)
@@ -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);