media: subdev: add stream based configuration
authorTomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Tue, 21 Dec 2021 10:20:53 +0000 (11:20 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Sun, 22 Jan 2023 08:38:20 +0000 (09:38 +0100)
commit2f91e10ee6fd4c0c4abba4d36c013a93560cf514
tree6899297490dc5476597b5d236e57e0c50b602603
parent70283e99a90b105173a05e8a8ebc78322b1127b5
media: subdev: add stream based configuration

Add support to manage configurations (format, crop, compose) per stream,
instead of per pad. This is accomplished with data structures that hold
an array of all subdev's stream configurations.

The number of streams can vary at runtime based on routing. Every time
the routing is changed, the stream configurations need to be
re-initialized.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Documentation/userspace-api/media/v4l/vidioc-subdev-enum-frame-interval.rst
Documentation/userspace-api/media/v4l/vidioc-subdev-enum-frame-size.rst
Documentation/userspace-api/media/v4l/vidioc-subdev-enum-mbus-code.rst
Documentation/userspace-api/media/v4l/vidioc-subdev-g-crop.rst
Documentation/userspace-api/media/v4l/vidioc-subdev-g-fmt.rst
Documentation/userspace-api/media/v4l/vidioc-subdev-g-frame-interval.rst
Documentation/userspace-api/media/v4l/vidioc-subdev-g-selection.rst
drivers/media/v4l2-core/v4l2-subdev.c
include/media/v4l2-subdev.h
include/uapi/linux/v4l2-subdev.h