1
linux/drivers/media/test-drivers/vimc
Laurent Pinchart 7603ac5a8a media: vimc: scaler: Use subdev active state
Store the active formats and crop rectangle in the subdevice active
state. This simplifies implementation of the format and selection
accessors, and allows using the v4l2_subdev_get_fmt() helper to
implement the .get_fmt() operation.

The active configuration that is used in the .process_frame() handler is
still stored in the vimc_scaler_device structure. The driver could
instead access the active state in the .process_frame() handler, but the
required locking could interfere with the real time constraints of the
frame processing. This data would be stored in registers in the
.s_stream() handler for real hardware, storing it in dedicated storage
thus mimics a real driver. To differentiate them from the rest of the
device private data, move the corresponding fields to a sub-structure of
vimc_scaler_device named hw.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2024-06-26 16:39:34 +02:00
..
Kconfig
Makefile
vimc-capture.c media: vimc: Constify vimc_ent_type structures 2024-06-26 16:39:34 +02:00
vimc-common.c media: vimc: Initialize subdev active state 2024-06-26 16:39:34 +02:00
vimc-common.h media: vimc: Centralize subdev internal_ops initialization 2024-06-26 16:39:34 +02:00
vimc-core.c media: vimc: Constify the ent_config array 2024-06-26 16:39:34 +02:00
vimc-debayer.c media: vimc: debayer: Use subdev active state 2024-06-26 16:39:34 +02:00
vimc-lens.c media: vimc: Initialize subdev active state 2024-06-26 16:39:34 +02:00
vimc-scaler.c media: vimc: scaler: Use subdev active state 2024-06-26 16:39:34 +02:00
vimc-sensor.c media: vimc: sensor: Use subdev active state 2024-06-26 16:39:34 +02:00
vimc-streamer.c
vimc-streamer.h