[media] media: atmel-isi: add v4l2 async probe support
authorJosh Wu <josh.wu@atmel.com>
Fri, 25 Jul 2014 10:13:38 +0000 (07:13 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Wed, 30 Jul 2014 22:35:06 +0000 (19:35 -0300)
Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/platform/soc_camera/atmel-isi.c
include/media/atmel-isi.h

index 38c723a..c0d4612 100644 (file)
@@ -980,6 +980,11 @@ static int atmel_isi_probe(struct platform_device *pdev)
        soc_host->v4l2_dev.dev  = &pdev->dev;
        soc_host->nr            = pdev->id;
 
+       if (isi->pdata.asd_sizes) {
+               soc_host->asd = isi->pdata.asd;
+               soc_host->asd_sizes = isi->pdata.asd_sizes;
+       }
+
        ret = soc_camera_host_register(soc_host);
        if (ret) {
                dev_err(&pdev->dev, "Unable to register soc camera host\n");
index 2b02347..c2e5703 100644 (file)
 #define ISI_DATAWIDTH_8                                0x01
 #define ISI_DATAWIDTH_10                       0x02
 
+struct v4l2_async_subdev;
+
 struct isi_platform_data {
        u8 has_emb_sync;
        u8 emb_crc_sync;
@@ -118,6 +120,8 @@ struct isi_platform_data {
        u32 frate;
        /* Using for ISI_MCK */
        u32 mck_hz;
+       struct v4l2_async_subdev **asd; /* Flat array, arranged in groups */
+       int *asd_sizes;         /* 0-terminated array of asd group sizes */
 };
 
 #endif /* __ATMEL_ISI_H__ */