Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[deliverable/linux.git] / drivers / media / platform / omap3isp / isphist.c
index e7f9c4292cc61b40190dee390731faa75c73f9d8..2d759c56f37c33f4f4b09362acf8125344a34937 100644 (file)
@@ -74,11 +74,14 @@ static void hist_reset_mem(struct ispstat *hist)
 
 static void hist_dma_config(struct ispstat *hist)
 {
+       struct isp_device *isp = hist->isp;
+
        hist->dma_config.data_type = OMAP_DMA_DATA_TYPE_S32;
        hist->dma_config.sync_mode = OMAP_DMA_SYNC_ELEMENT;
        hist->dma_config.frame_count = 1;
        hist->dma_config.src_amode = OMAP_DMA_AMODE_CONSTANT;
-       hist->dma_config.src_start = OMAP3ISP_HIST_REG_BASE + ISPHIST_DATA;
+       hist->dma_config.src_start = isp->mmio_base_phys[OMAP3_ISP_IOMEM_HIST]
+                                  + ISPHIST_DATA;
        hist->dma_config.dst_amode = OMAP_DMA_AMODE_POST_INC;
        hist->dma_config.src_or_dst_synch = OMAP_DMA_SRC_SYNC;
 }
@@ -479,6 +482,8 @@ int omap3isp_hist_init(struct isp_device *isp)
                return -ENOMEM;
 
        memset(hist, 0, sizeof(*hist));
+       hist->isp = isp;
+
        if (HIST_CONFIG_DMA)
                ret = omap_request_dma(OMAP24XX_DMA_NO_DEVICE, "DMA_ISP_HIST",
                                       hist_dma_cb, hist, &hist->dma_ch);
@@ -496,7 +501,6 @@ int omap3isp_hist_init(struct isp_device *isp)
        hist->ops = &hist_ops;
        hist->priv = hist_cfg;
        hist->event_type = V4L2_EVENT_OMAP3ISP_HIST;
-       hist->isp = isp;
 
        ret = omap3isp_stat_init(hist, "histogram", &hist_subdev_ops);
        if (ret) {
This page took 0.025178 seconds and 5 git commands to generate.