[media] v4l: Add a media_device pointer to the v4l2_device structure
The pointer will later be used to register/unregister media entities when registering/unregistering a v4l2_subdev or a video_device. With the introduction of media devices, device drivers need to store a pointer to a driver-specific structure in the device's drvdata. v4l2_device can't claim ownership of the drvdata anymore. To maintain compatibility with drivers that rely on v4l2_device storing a pointer to itself in the device's drvdata, v4l2_device_register() will keep doing so if the drvdata is NULL. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:

committed by
Mauro Carvalho Chehab

parent
e02188c90f
commit
95db3a60e0
@@ -21,6 +21,7 @@
|
||||
#ifndef _V4L2_DEVICE_H
|
||||
#define _V4L2_DEVICE_H
|
||||
|
||||
#include <media/media-device.h>
|
||||
#include <media/v4l2-subdev.h>
|
||||
|
||||
/* Each instance of a V4L2 device should create the v4l2_device struct,
|
||||
@@ -39,6 +40,9 @@ struct v4l2_device {
|
||||
Note: dev might be NULL if there is no parent device
|
||||
as is the case with e.g. ISA devices. */
|
||||
struct device *dev;
|
||||
#if defined(CONFIG_MEDIA_CONTROLLER)
|
||||
struct media_device *mdev;
|
||||
#endif
|
||||
/* used to keep track of the registered subdevs */
|
||||
struct list_head subdevs;
|
||||
/* lock this struct; can be used by the driver as well if this
|
||||
|
Reference in New Issue
Block a user