From cc1d76e0f50321e80f7f50e9e214de2c9a45628a Mon Sep 17 00:00:00 2001 From: Sakari Ailus Date: Wed, 22 Oct 2008 18:41:20 +0300 Subject: [PATCH] V4L: Int if: Dummy slave This patch implements a dummy slave that has no functionality. Helps managing slaves in the OMAP 3 camera driver; no need to check for NULL pointers. Signed-off-by: Sakari Ailus --- drivers/media/video/v4l2-int-device.c | 19 +++++++++++++++++++ include/media/v4l2-int-device.h | 2 ++ 2 files changed, 21 insertions(+), 0 deletions(-) diff --git a/drivers/media/video/v4l2-int-device.c b/drivers/media/video/v4l2-int-device.c index eb8dc84..483ee2e 100644 --- a/drivers/media/video/v4l2-int-device.c +++ b/drivers/media/video/v4l2-int-device.c @@ -67,6 +67,25 @@ static void __v4l2_int_device_try_attach_all(void) } } +static struct v4l2_int_slave dummy_slave = { + /* Dummy pointer to avoid underflow in find_ioctl. */ + .ioctls = (void *)sizeof(struct v4l2_int_ioctl_desc), + .num_ioctls = 0, +}; + +static struct v4l2_int_device dummy = { + .type = v4l2_int_type_slave, + .u = { + .slave = &dummy_slave, + }, +}; + +struct v4l2_int_device *v4l2_int_device_dummy() +{ + return &dummy; +} +EXPORT_SYMBOL_GPL(v4l2_int_device_dummy); + void v4l2_int_device_try_attach_all(void) { mutex_lock(&mutex); diff --git a/include/media/v4l2-int-device.h b/include/media/v4l2-int-device.h index fbf5855..5d254c4 100644 --- a/include/media/v4l2-int-device.h +++ b/include/media/v4l2-int-device.h @@ -84,6 +84,8 @@ struct v4l2_int_device { void *priv; }; +struct v4l2_int_device *v4l2_int_device_dummy(void); + void v4l2_int_device_try_attach_all(void); int v4l2_int_device_register(struct v4l2_int_device *d); -- 1.5.6.5