fimc-is: fix includes and make the code to compile on ARM64
authorMarek Szyprowski <m.szyprowski@samsung.com>
Fri, 7 Aug 2015 08:41:03 +0000 (10:41 +0200)
committerSeung-Woo Kim <sw0312.kim@samsung.com>
Wed, 14 Dec 2016 04:47:31 +0000 (13:47 +0900)
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
42 files changed:
drivers/media/platform/exynos/fimc-is/Makefile
drivers/media/platform/exynos/fimc-is/fimc-is-companion-dt.c
drivers/media/platform/exynos/fimc-is/fimc-is-config.h
drivers/media/platform/exynos/fimc-is/fimc-is-core.c
drivers/media/platform/exynos/fimc-is/fimc-is-device-af.c
drivers/media/platform/exynos/fimc-is/fimc-is-device-companion.c
drivers/media/platform/exynos/fimc-is/fimc-is-device-csi.c
drivers/media/platform/exynos/fimc-is/fimc-is-device-flite.c
drivers/media/platform/exynos/fimc-is/fimc-is-device-ischain.c
drivers/media/platform/exynos/fimc-is/fimc-is-device-ois.c
drivers/media/platform/exynos/fimc-is/fimc-is-device-sensor.c
drivers/media/platform/exynos/fimc-is/fimc-is-dt.c
drivers/media/platform/exynos/fimc-is/fimc-is-framemgr.c
drivers/media/platform/exynos/fimc-is/fimc-is-groupmgr.c
drivers/media/platform/exynos/fimc-is/fimc-is-hw-csi.c
drivers/media/platform/exynos/fimc-is/fimc-is-hw-ischain.c
drivers/media/platform/exynos/fimc-is/fimc-is-interface.c
drivers/media/platform/exynos/fimc-is/fimc-is-mem.c
drivers/media/platform/exynos/fimc-is/fimc-is-regs.h
drivers/media/platform/exynos/fimc-is/fimc-is-resourcemgr.c
drivers/media/platform/exynos/fimc-is/fimc-is-sec-define.c
drivers/media/platform/exynos/fimc-is/fimc-is-sec-define.h
drivers/media/platform/exynos/fimc-is/fimc-is-spi.c
drivers/media/platform/exynos/fimc-is/fimc-is-type.h
drivers/media/platform/exynos/fimc-is/fimc-is-video-3aa.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-3aac.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-companion.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-isp.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-scc.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-scp.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-sensor.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-vdisc.c
drivers/media/platform/exynos/fimc-is/fimc-is-video-vdiso.c
drivers/media/platform/exynos/fimc-is/fimc-is-video.c
drivers/media/platform/exynos/fimc-is/sensor/fimc-is-device-6d1.c
drivers/media/platform/exynos/fimc-is/sensor/fimc-is-device-imx240.c
drivers/media/platform/exynos/fimc-is/setup-fimc-is-companion.c
drivers/media/platform/exynos/fimc-is/setup-fimc-is-sensor.c
drivers/media/platform/exynos/fimc-is/setup-fimc-is.c
include/media/v4l2-mediabus.h
include/uapi/linux/v4l2-mediabus.h
include/uapi/linux/videodev2_exynos_camera.h

index a4767f8..c4b396d 100644 (file)
@@ -21,7 +21,8 @@ fimc-is-objs  := fimc-is-core.o \
                fimc-is-device-ischain.o \
                fimc-is-interface.o \
                fimc-is-time.o \
-               fimc-is-dt.o
+               fimc-is-dt.o \
+               exynos-smc.o
 
 obj-$(CONFIG_USE_VENDER_FEATURE) := fimc-is-spi.o \
                                fimc-is-sec-define.o \
index 4756e18..b71d1d2 100644 (file)
  * published by the Free Software Foundation.
  */
 
+#include <linux/device.h>
 #include <linux/sched.h>
+#include <linux/mutex.h>
+#include <linux/slab.h>
+#include <linux/videodev2.h>
+#include "fimc-is-config.h"
 #include "exynos-fimc-is-sensor.h"
 #include "exynos-fimc-is.h"
-#include "media/exynos_mc.h"
 #include <linux/of_gpio.h>
 
 #include "fimc-is-dt.h"
index a2e8ff8..53b04ad 100644 (file)
@@ -24,7 +24,7 @@
 #define ENABLE_FAST_SHOT
 /* #define ENABLE_MIF_400 */
 #define ENABLE_DTP
-#define USE_ION_ALLOC
+//#define USE_ION_ALLOC
 
 #define START_DVFS_LEVEL FIMC_IS_SN_MAX
 
@@ -32,6 +32,8 @@
 #define TARGET_SPI_CH_FOR_PERI 0
 #define MAX_ZOOM_LEVEL 8
 
+#define EXYNOS_VIDEONODE_FLITE(x)              (36 + x)
+#define EXYNOS_VIDEONODE_FIMC_IS               (100)
 
 #if !defined(MAX_ZOOM_LEVEL)
 /* default max zoom lv is 4 */
index a66b3de..d986745 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
 #include <linux/vmalloc.h>
 #include <linux/interrupt.h>
-#include <mach/regs-clock.h>
 #include <linux/bug.h>
 #include <linux/v4l2-mediabus.h>
-#include <mach/devfreq.h>
-#include <mach/bts.h>
 #include <linux/gpio.h>
-#include <plat/gpio-cfg.h>
 
 #include <linux/of.h>
 #include <linux/of_gpio.h>
@@ -114,6 +107,8 @@ static int fimc_is_ischain_allocmem(struct fimc_is_core *this)
        fw_size = PAGE_ALIGN(fw_size);
        dbg_core("Allocating memory for FIMC-IS firmware.\n");
 
+#warning NOT IMPLEMENTED
+#if 0
        fw_cookie = vb2_ion_private_alloc(this->mem.alloc_ctx, fw_size, 1, 0);
 
        if (IS_ERR(fw_cookie)) {
@@ -145,8 +140,11 @@ static int fimc_is_ischain_allocmem(struct fimc_is_core *this)
                goto exit;
        }
 
+#warning NOT IMPLEMENTED
+#if 0
        vb2_ion_sync_for_device(fw_cookie, 0, fw_size, DMA_BIDIRECTIONAL);
-
+#endif
+#endif
 exit:
        info("[COR] Device virtual for internal: %08x\n", this->minfo.kvaddr);
        this->minfo.fw_cookie = fw_cookie;
@@ -846,12 +844,7 @@ static int fimc_is_probe(struct platform_device *pdev)
        fimc_is_parse_children_dt(&pdev->dev, core);
 
        fimc_is_dev = &pdev->dev;
-       ret = dev_set_drvdata(fimc_is_dev, core);
-       if (ret) {
-               err("dev_set_drvdata is fail(%d)", ret);
-               kfree(core);
-               return ret;
-       }
+       dev_set_drvdata(fimc_is_dev, core);
 
        core->companion_spi_channel = pdata->companion_spi_channel;
        core->use_two_spi_line = pdata->use_two_spi_line;
index ca5340a..97e20c3 100644 (file)
@@ -28,7 +28,6 @@
 #include <linux/platform_device.h>
 #include <linux/regulator/consumer.h>
 #include <linux/delay.h>
-#include <mach/pinctrl-samsung.h>
 
 #include "fimc-is-core.h"
 #include "fimc-is-interface.h"
@@ -78,7 +77,7 @@ static void fimc_is_af_i2c_config(struct i2c_client *client, bool onoff)
                } else {
                        devm_pinctrl_put(pinctrl_i2c);
                }
-    }
+       }
 }
 
 int fimc_is_af_i2c_write(struct i2c_client *client ,u16 addr, u16 data)
@@ -375,6 +374,8 @@ static int fimc_is_af_probe(struct i2c_client *client,
        core->client2 = client;
        device->client = client;
        device->core = core;
+
+#if 0
        af_noise_count = 0;
 
        af_sensor_interface.af_pdata = device;
@@ -382,6 +383,7 @@ static int fimc_is_af_probe(struct i2c_client *client,
        ret = remove_af_noise_register(&af_sensor_interface);
        if (ret)
                err("reduce_af_noise_register failed: %d\n", ret);
+#endif
        i2c_set_clientdata(client, device);
 
        return 0;
@@ -389,7 +391,9 @@ static int fimc_is_af_probe(struct i2c_client *client,
 
 static int fimc_is_af_remove(struct i2c_client *client)
 {
+#if 0
        remove_af_noise_unregister(&af_sensor_interface);
+#endif
        return 0;
 }
 
index 54681a3..9d2a21d 100644 (file)
@@ -18,8 +18,6 @@
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
 #include <linux/videodev2_exynos_camera.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
 #include <linux/i2c.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <mach/pinctrl-samsung.h>
 
 #include "fimc-is-video.h"
 #include "fimc-is-dt.h"
index 83cc2f1..cc4e8f9 100644 (file)
 #include <linux/platform_device.h>
 #include <linux/slab.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <mach/exynos5-mipiphy.h>
-
+#include "exynos5-mipiphy.h"
 #include "fimc-is-config.h"
 #include "fimc-is-regs.h"
 #include "fimc-is-hw.h"
index 6611b30..9c290c7 100644 (file)
@@ -21,8 +21,6 @@
 #include <linux/of_irq.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
 #include <linux/videodev2_exynos_camera.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <mach/irqs.h>
 
 #include "fimc-is-time.h"
 #include "fimc-is-core.h"
index cd90731..cc77bd5 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/vmalloc.h>
 #include <linux/kthread.h>
 #include <linux/syscalls.h>
 #include <linux/bug.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <mach/smc.h>
+#include "smc.h"
 #include <linux/regulator/consumer.h>
 #include <linux/gpio.h>
-#include <plat/gpio-cfg.h>
 
 #include "fimc-is-time.h"
 #include "fimc-is-core.h"
@@ -55,7 +48,6 @@
 #include "fimc-is-companion.h"
 #include "fimc-is-device-companion.h"
 #include <linux/pinctrl/consumer.h>
-#include <mach/pinctrl-samsung.h>
 
 #include "fimc-is-sec-define.h"
 
@@ -132,8 +124,11 @@ static int isfw_debug_read(struct file *file, char __user *user_buf,
                goto exit;
        }
 
+#warning NOT IMPLEMENTED
+#if 0
        vb2_ion_sync_for_device(imemory->fw_cookie, DEBUG_OFFSET,
                DEBUG_CNT, DMA_FROM_DEVICE);
+#endif
 
        debug_cnt = *((int *)(imemory->kvaddr + DEBUGCTL_OFFSET)) - DEBUG_OFFSET;
        backup_cnt = core->debug_cnt;
@@ -688,32 +683,43 @@ static int fimc_is_ishcain_deinitmem(struct fimc_is_device_ischain *device)
 static void fimc_is_ischain_cache_flush(struct fimc_is_device_ischain *this,
        u32 offset, u32 size)
 {
+#warning NOT IMPLEMENTED
+#if 0
        vb2_ion_sync_for_device(this->imemory.fw_cookie,
                offset,
                size,
                DMA_TO_DEVICE);
+#endif
 }
 
 static void fimc_is_ischain_region_invalid(struct fimc_is_device_ischain *device)
 {
+#warning NOT IMPLEMENTED
+#if 0
        vb2_ion_sync_for_device(
                device->imemory.fw_cookie,
                device->imemory.offset_region,
                sizeof(struct is_region),
                DMA_FROM_DEVICE);
+#endif
 }
 
 static void fimc_is_ischain_region_flush(struct fimc_is_device_ischain *device)
 {
+#warning NOT IMPLEMENTED
+#if 0
        vb2_ion_sync_for_device(
                device->imemory.fw_cookie,
                device->imemory.offset_region,
                sizeof(struct is_region),
                DMA_TO_DEVICE);
+#endif
 }
 
 void fimc_is_ischain_meta_flush(struct fimc_is_frame *frame)
 {
+#warning NOT IMPLEMENTED
+#if 0
 #ifdef ENABLE_CACHE
        vb2_ion_sync_for_device(
                (void *)frame->cookie_shot,
@@ -721,10 +727,13 @@ void fimc_is_ischain_meta_flush(struct fimc_is_frame *frame)
                frame->shot_size,
                DMA_TO_DEVICE);
 #endif
+#endif
 }
 
 void fimc_is_ischain_meta_invalid(struct fimc_is_frame *frame)
 {
+#warning NOT IMPLEMENTED
+#if 0
 #ifdef ENABLE_CACHE
        vb2_ion_sync_for_device(
                (void *)frame->cookie_shot,
@@ -732,6 +741,7 @@ void fimc_is_ischain_meta_invalid(struct fimc_is_frame *frame)
                frame->shot_size,
                DMA_FROM_DEVICE);
 #endif
+#endif
 }
 
 static void fimc_is_ischain_version(struct fimc_is_device_ischain *this, char *name, const char *load_bin, u32 size)
index 70cf630..2a14f9e 100644 (file)
@@ -29,7 +29,6 @@
 #include <linux/regulator/consumer.h>
 #include <linux/delay.h>
 #include "exynos-fimc-is-sensor.h"
-#include <mach/pinctrl-samsung.h>
 #include <linux/kthread.h>
 
 #include "fimc-is-core.h"
index 84af205..34f0af2 100644 (file)
@@ -18,8 +18,6 @@
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
 #include <linux/videodev2_exynos_camera.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
 #include <linux/i2c.h>
 
-#include <mach/map.h>
-#include <mach/devfreq.h>
-#include <mach/regs-clock.h>
 
 #include "fimc-is-core.h"
 #include "fimc-is-param.h"
index 94069d1..76746cc 100644 (file)
@@ -13,7 +13,6 @@
 #include <linux/sched.h>
 #include "exynos-fimc-is-sensor.h"
 #include "exynos-fimc-is.h"
-#include <media/exynos_mc.h>
 #include <linux/of.h>
 #include <linux/of_gpio.h>
 #include <linux/regmap.h>
index f59f352..7ae550f 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
 
 #include "fimc-is-core.h"
 #include "fimc-is-param.h"
index 23b06fd..f931a15 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
 
 #include "fimc-is-core.h"
 #include "fimc-is-err.h"
index f884654..d24522b 100644 (file)
@@ -16,9 +16,6 @@
 #include <linux/platform_device.h>
 #include <linux/io.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <mach/exynos5-mipiphy.h>
 
 #include "fimc-is-config.h"
 #include "fimc-is-type.h"
index fb3dc98..3479b71 100644 (file)
 #include <linux/errno.h>
 #include <linux/platform_device.h>
 #include <linux/io.h>
-#include <mach/devfreq.h>
-#include <mach/bts.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <mach/exynos5-mipiphy.h>
 
 #include "fimc-is-config.h"
 #include "fimc-is-type.h"
index 7e15382..26c1417 100644 (file)
@@ -2493,8 +2493,11 @@ int fimc_is_hw_logdump(struct fimc_is_interface *this)
        core = (struct fimc_is_core *)this->core;
        sentence_i = 0;
 
+#warning NOT IMPLEMENTED
+#if 0
        vb2_ion_sync_for_device(core->minfo.fw_cookie,
                DEBUG_OFFSET, DEBUG_CNT, DMA_FROM_DEVICE);
+#endif
 
        debug = (char *)(core->minfo.kvaddr + DEBUG_OFFSET);
        debug_cnt = *((int *)(core->minfo.kvaddr + DEBUGCTL_OFFSET))
index 30d5dab..d128c35 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
+#include <media/videobuf2-dma-contig.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
 #include <linux/vmalloc.h>
 #include <linux/interrupt.h>
 #include <linux/of.h>
 #include "fimc-is-regs.h"
 #include "fimc-is-err.h"
 
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 9, 0))
-#include <linux/exynos_iovmm.h>
-#else
-#include <plat/iovmm.h>
-#endif
-
+#ifdef IOC_ALLOC
 static void *fimc_is_ion_init(struct platform_device *pdev)
 {
        return vb2_ion_create_context(&pdev->dev, SZ_4K,
@@ -50,15 +43,18 @@ static void *fimc_is_ion_init(struct platform_device *pdev)
                                        VB2ION_CTX_VMCONTIG |
                                        VB2ION_CTX_KVA_ONDEMAND);
 }
+#endif
 
 static unsigned long plane_addr(struct vb2_buffer *vb, u32 plane_no)
 {
+#ifdef IOC_ALLOC
        void *cookie = vb2_plane_cookie(vb, plane_no);
        dma_addr_t dva = 0;
 
        WARN_ON(vb2_ion_dma_address(cookie, &dva) != 0);
-
-       return dva;
+#else
+       return vb2_dma_contig_plane_dma_addr(vb, plane_no);
+#endif
 }
 
 static unsigned long plane_kvaddr(struct vb2_buffer *vb, u32 plane_no)
@@ -68,6 +64,33 @@ static unsigned long plane_kvaddr(struct vb2_buffer *vb, u32 plane_no)
        return (unsigned long)kvaddr;
 }
 
+
+static void *fimc_is_dma_contig_init(struct platform_device *pdev)
+{
+       return vb2_dma_contig_init_ctx(&pdev->dev);
+}
+
+int vb2_null_attach_iommu(void *alloc_ctx)
+{
+       return 0;
+}
+
+void vb2_null_detach_iommu(void *alloc_ctx)
+{
+
+}
+
+void vb2_null_set_cached(void *ctx, bool cached)
+{
+
+}
+
+void vb2_null_destroy_context(void *ctx)
+{
+
+}
+
+#ifdef IOC_ALLOC
 const struct fimc_is_vb2 fimc_is_vb2_ion = {
        .ops            = &vb2_ion_memops,
        .init           = fimc_is_ion_init,
@@ -78,13 +101,27 @@ const struct fimc_is_vb2 fimc_is_vb2_ion = {
        .suspend        = vb2_ion_detach_iommu,
        .set_cacheable  = vb2_ion_set_cached,
 };
+#define fimc_is_vb2_allocator (&fimc_is_vb2_ion)
+#else
+const struct fimc_is_vb2 fimc_is_vb2_dc = {
+       .ops            = &vb2_dma_contig_memops,
+       .init           = fimc_is_dma_contig_init,
+       .cleanup        = vb2_null_destroy_context,
+       .plane_addr     = plane_addr,
+       .plane_kvaddr   = plane_kvaddr,
+       .resume         = vb2_null_attach_iommu,
+       .suspend        = vb2_null_detach_iommu,
+       .set_cacheable  = vb2_null_set_cached,
+};
+#define fimc_is_vb2_allocator (&fimc_is_vb2_dc)
+#endif
 
 int fimc_is_mem_probe(struct fimc_is_mem *this,
        struct platform_device *pdev)
 {
        u32 ret = 0;
 
-       this->vb2 = &fimc_is_vb2_ion;
+       this->vb2 = fimc_is_vb2_allocator;
 
        this->alloc_ctx = this->vb2->init(pdev);
        if (IS_ERR(this->alloc_ctx)) {
@@ -92,9 +129,10 @@ int fimc_is_mem_probe(struct fimc_is_mem *this,
                goto p_err;
        }
 
+#ifdef IOC_ALLOC
        /* FIXME: should be different by device type */
        exynos_create_iovmm(&pdev->dev, 1, 4);
-
+#endif
 p_err:
        return ret;
 }
index b12a194..1086ae3 100644 (file)
@@ -12,7 +12,6 @@
 #ifndef FIMC_IS_REGS_H
 #define FIMC_IS_REGS_H
 
-#include <mach/map.h>
 
 /* MCUCTL register */
 #define MCUCTL                         0x0
index a5f58f2..788590b 100644 (file)
@@ -7,14 +7,9 @@
 #include <linux/clk.h>
 #include <linux/regulator/consumer.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
 #include <linux/module.h>
 #include <linux/moduleparam.h>
 #include <linux/platform_device.h>
-#include <mach/regs-gpio.h>
-#include <mach/regs-clock.h>
-#include <plat/clock.h>
-#include <plat/gpio-cfg.h>
 #include <media/v4l2-ctrls.h>
 #include <media/v4l2-device.h>
 #include <media/v4l2-subdev.h>
index 6f8fb65..3b84c7e 100644 (file)
@@ -9,24 +9,18 @@
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
 #include <linux/syscalls.h>
 #include <linux/vmalloc.h>
 
-#include <mach/map.h>
-#include <mach/regs-clock.h>
 #include <linux/gpio.h>
-#include <plat/gpio-cfg.h>
 #include <linux/regulator/consumer.h>
 
 #include "fimc-is-core.h"
index 8151b31..e5db569 100644 (file)
@@ -17,7 +17,6 @@
 #include <linux/module.h>
 #include <linux/spi/spi.h>
 #include <linux/gpio.h>
-#include <plat/gpio-cfg.h>
 #include "fimc-is-core.h"
 #include "fimc-is-regs.h"
 
index 2f70fa8..e677d30 100644 (file)
@@ -1,10 +1,10 @@
 #ifndef FIMC_IS_TYPE_H
 #define FIMC_IS_TYPE_H
 
-#include <linux/v4l2-mediabus.h>
-
+#include <media/v4l2-mediabus.h>
 #include <media/v4l2-device.h>
 
+
 enum fimc_is_device_type {
        FIMC_IS_DEVICE_SENSOR,
        FIMC_IS_DEVICE_ISCHAIN
index 0d308f3..d34fdfa 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
+#include <linux/videodev2.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
@@ -35,7 +33,6 @@
 #include <media/v4l2-device.h>
 #include <media/v4l2-mem2mem.h>
 #include <media/v4l2-mediabus.h>
-#include <media/exynos_mc.h>
 
 #include "fimc-is-core.h"
 #include "fimc-is-param.h"
index 3f63054..a7a1066 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
+#include <linux/videodev2.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index aae5c16..125fbd1 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
+#include <linux/videodev2.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index 50a7e1b..b55917e 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index ebe1a01..0f29cf4 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index 42600bb..28728ef 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index d7c7917..e58d832 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
+#include <linux/videodev2.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index afe74ba..6c5cfb1 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index 3270f82..c56611a 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_media.h>
 #include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
index 70a1100..26aab5c 100644 (file)
 #include <linux/device.h>
 #include <linux/platform_device.h>
 #include <linux/slab.h>
-#include <mach/videonode.h>
-#include <media/exynos_mc.h>
 #include <asm/cacheflush.h>
 #include <asm/pgtable.h>
 #include <linux/firmware.h>
 #include <linux/dma-mapping.h>
 #include <linux/scatterlist.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_media.h>
-#include <linux/videodev2_exynos_camera.h>
 #include <linux/v4l2-mediabus.h>
 #include <linux/bug.h>
 
@@ -36,7 +32,6 @@
 #include <media/v4l2-device.h>
 #include <media/v4l2-mem2mem.h>
 #include <media/v4l2-mediabus.h>
-#include <media/exynos_mc.h>
 
 #include "fimc-is-time.h"
 #include "fimc-is-core.h"
@@ -305,9 +300,8 @@ static int queue_init(void *priv, struct vb2_queue *vbq_src,
                vbq_src->drv_priv       = vctx;
                vbq_src->ops            = vctx->vb2_ops;
                vbq_src->mem_ops        = vctx->mem_ops;
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
-               vbq_src->timestamp_type = V4L2_BUF_FLAG_TIMESTAMP_COPY;
-#endif
+               vbq_src->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
+
                ret = vb2_queue_init(vbq_src);
                if (ret) {
                        err("vb2_queue_init fail");
@@ -322,9 +316,8 @@ static int queue_init(void *priv, struct vb2_queue *vbq_src,
                vbq_dst->drv_priv       = vctx;
                vbq_dst->ops            = vctx->vb2_ops;
                vbq_dst->mem_ops        = vctx->mem_ops;
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
-               vbq_dst->timestamp_type = V4L2_BUF_FLAG_TIMESTAMP_COPY;
-#endif
+               vbq_dst->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
+
                ret = vb2_queue_init(vbq_dst);
                if (ret) {
                        err("vb2_queue_init fail");
@@ -340,9 +333,8 @@ static int queue_init(void *priv, struct vb2_queue *vbq_src,
                vbq_src->drv_priv       = vctx;
                vbq_src->ops            = vctx->vb2_ops;
                vbq_src->mem_ops        = vctx->mem_ops;
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
-               vbq_src->timestamp_type = V4L2_BUF_FLAG_TIMESTAMP_COPY;
-#endif
+               vbq_src->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
+
                ret = vb2_queue_init(vbq_src);
                if (ret) {
                        err("vb2_queue_init fail");
@@ -355,9 +347,8 @@ static int queue_init(void *priv, struct vb2_queue *vbq_src,
                vbq_dst->drv_priv       = vctx;
                vbq_dst->ops            = vctx->vb2_ops;
                vbq_dst->mem_ops        = vctx->mem_ops;
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
-               vbq_dst->timestamp_type = V4L2_BUF_FLAG_TIMESTAMP_COPY;
-#endif
+               vbq_dst->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_COPY;
+
                ret = vb2_queue_init(vbq_dst);
                if (ret) {
                        err("vb2_queue_init fail");
@@ -1115,7 +1106,7 @@ int fimc_is_video_qbuf(struct file *file,
        BUG_ON(!vctx);
        BUG_ON(!buf);
 
-       buf->flags &= ~V4L2_BUF_FLAG_USE_SYNC;
+//     buf->flags &= ~V4L2_BUF_FLAG_USE_SYNC;
        queue = GET_VCTX_QUEUE(vctx, buf);
        vbq = queue->vbq;
 
index d8385b3..e2205ad 100644 (file)
 #include <linux/clk.h>
 #include <linux/regulator/consumer.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
 #include <linux/module.h>
 #include <linux/moduleparam.h>
 #include <linux/platform_device.h>
 #include <linux/of_gpio.h>
-#include <mach/regs-gpio.h>
-#include <mach/regs-clock.h>
-#include <plat/clock.h>
-#include <plat/gpio-cfg.h>
 #include <media/v4l2-ctrls.h>
 #include <media/v4l2-device.h>
 #include <media/v4l2-subdev.h>
index 5871726..c1d9a21 100644 (file)
 #include <linux/clk.h>
 #include <linux/regulator/consumer.h>
 #include <linux/videodev2.h>
-#include <linux/videodev2_exynos_camera.h>
 #include <linux/module.h>
 #include <linux/moduleparam.h>
 #include <linux/platform_device.h>
 #include <linux/of_gpio.h>
-#include <mach/regs-gpio.h>
-#include <mach/regs-clock.h>
-#include <plat/clock.h>
-#include <plat/gpio-cfg.h>
 #include <media/v4l2-ctrls.h>
 #include <media/v4l2-device.h>
 #include <media/v4l2-subdev.h>
index 994e6d2..1809938 100644 (file)
 #include <linux/delay.h>
 #include <linux/clk-provider.h>
 #include <linux/clkdev.h>
-#include <mach/regs-gpio.h>
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <plat/gpio-cfg.h>
-#include <plat/map-s5p.h>
-#include <plat/cpu.h>
 #include <linux/of_gpio.h>
 
 #include "exynos-fimc-is.h"
index 5232695..f2289f5 100644 (file)
 #include <linux/delay.h>
 #include <linux/clk-provider.h>
 #include <linux/clkdev.h>
-#include <mach/regs-gpio.h>
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <plat/gpio-cfg.h>
-#include <plat/map-s5p.h>
-#include <plat/cpu.h>
 #include <linux/of_gpio.h>
-#include <mach/regs-clock-exynos5433.h>
 
 #include "exynos-fimc-is.h"
 #include "exynos-fimc-is-sensor.h"
index bb3613f..63d5488 100644 (file)
 #include <linux/delay.h>
 #include <linux/clk-provider.h>
 #include <linux/clkdev.h>
-#include <mach/regs-gpio.h>
-#include <mach/map.h>
-#include <mach/regs-clock.h>
-#include <plat/gpio-cfg.h>
-#include <plat/map-s5p.h>
-#include <plat/cpu.h>
 #include "exynos-fimc-is.h"
 #include <linux/of_gpio.h>
 
index 38d960d..c0df617 100644 (file)
@@ -11,7 +11,7 @@
 #ifndef V4L2_MEDIABUS_H
 #define V4L2_MEDIABUS_H
 
-#include <linux/v4l2-mediabus.h>
+#include <uapi/linux/v4l2-mediabus.h>
 
 /* Parallel flags */
 /*
index 26db206..13f5ba9 100644 (file)
@@ -36,7 +36,6 @@ struct v4l2_mbus_framefmt {
        __u32                   reserved[6];
 };
 
-#ifndef __KERNEL__
 /*
  * enum v4l2_mbus_pixelcode and its definitions are now deprecated, and
  * MEDIA_BUS_FMT_ definitions (defined in media-bus-format.h) should be
@@ -133,6 +132,5 @@ enum v4l2_mbus_pixelcode {
 
        V4L2_MBUS_FROM_MEDIA_BUS_FMT(AHSV8888_1X32),
 };
-#endif /* __KERNEL__ */
 
 #endif
index ecef0b3..aded0be 100644 (file)
@@ -57,6 +57,8 @@ enum is_set_stream {
 #define V4L2_CID_IS_END_OF_STREAM              (V4L2_CID_FIMC_IS_BASE + 58)
 #define V4L2_CID_IS_MAP_BUFFER                 (V4L2_CID_FIMC_IS_BASE + 59)
 #define V4L2_CID_IS_INTENT                     (V4L2_CID_FIMC_IS_BASE + 60)
+#define V4L2_CID_IS_DEBUG_DUMP                 (V4L2_CID_FIMC_IS_BASE + 900)
+#define V4L2_CID_IS_DEBUG_SYNC_LOG             (V4L2_CID_FIMC_IS_BASE + 901)
 
 #define V4L2_CID_SENSOR_SET_AE_TARGET                  (V4L2_CID_SENSOR_BASE + 1)
 #define V4L2_CID_SENSOR_SET_AE_WEIGHT_1x1_2            (V4L2_CID_SENSOR_BASE + 2)