mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-09-21 20:22:13 +08:00
media: v4l: subdev: Store the sub-device in the sub-device state
Store the sub-device in the sub-device state. This will be needed in e.g. validating pad number when retrieving information for non-stream-aware users. There are expected to be more needs for this in the future. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
parent
aeb18af188
commit
52c2575db8
@ -1448,6 +1448,8 @@ __v4l2_subdev_state_alloc(struct v4l2_subdev *sd, const char *lock_name,
|
||||
else
|
||||
state->lock = &state->_lock;
|
||||
|
||||
state->sd = sd;
|
||||
|
||||
/* Drivers that support streams do not need the legacy pad config */
|
||||
if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS) && sd->entity.num_pads) {
|
||||
state->pads = kvcalloc(sd->entity.num_pads,
|
||||
|
@ -749,6 +749,7 @@ struct v4l2_subdev_krouting {
|
||||
*
|
||||
* @_lock: default for 'lock'
|
||||
* @lock: mutex for the state. May be replaced by the user.
|
||||
* @sd: the sub-device which the state is related to
|
||||
* @pads: &struct v4l2_subdev_pad_config array
|
||||
* @routing: routing table for the subdev
|
||||
* @stream_configs: stream configurations (only for V4L2_SUBDEV_FL_STREAMS)
|
||||
@ -761,6 +762,7 @@ struct v4l2_subdev_state {
|
||||
/* lock for the struct v4l2_subdev_state fields */
|
||||
struct mutex _lock;
|
||||
struct mutex *lock;
|
||||
struct v4l2_subdev *sd;
|
||||
struct v4l2_subdev_pad_config *pads;
|
||||
struct v4l2_subdev_krouting routing;
|
||||
struct v4l2_subdev_stream_configs stream_configs;
|
||||
|
Loading…
Reference in New Issue
Block a user