summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Wu2014-07-25 12:13:38 +0200
committerMauro Carvalho Chehab2014-07-31 00:35:06 +0200
commit3900623bfaffde4eeb93ca0ba0475598a1b0cef5 (patch)
tree88dcae1db1cb0921a3bcf3812f5f0eef2e6d8295
parent[media] rcar_vin: add devicetree support (diff)
downloadkernel-qcow2-linux-3900623bfaffde4eeb93ca0ba0475598a1b0cef5.tar.gz
kernel-qcow2-linux-3900623bfaffde4eeb93ca0ba0475598a1b0cef5.tar.xz
kernel-qcow2-linux-3900623bfaffde4eeb93ca0ba0475598a1b0cef5.zip
[media] media: atmel-isi: add v4l2 async probe support
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>
-rw-r--r--drivers/media/platform/soc_camera/atmel-isi.c5
-rw-r--r--include/media/atmel-isi.h4
2 files changed, 9 insertions, 0 deletions
diff --git a/drivers/media/platform/soc_camera/atmel-isi.c b/drivers/media/platform/soc_camera/atmel-isi.c
index 38c723aca438..c0d46128cad9 100644
--- a/drivers/media/platform/soc_camera/atmel-isi.c
+++ b/drivers/media/platform/soc_camera/atmel-isi.c
@@ -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");
diff --git a/include/media/atmel-isi.h b/include/media/atmel-isi.h
index 2b023471ac89..c2e570336269 100644
--- a/include/media/atmel-isi.h
+++ b/include/media/atmel-isi.h
@@ -106,6 +106,8 @@
#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__ */