diff options
Diffstat (limited to 'drivers/media/platform/vimc/vimc-streamer.h')
-rw-r--r-- | drivers/media/platform/vimc/vimc-streamer.h | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/drivers/media/platform/vimc/vimc-streamer.h b/drivers/media/platform/vimc/vimc-streamer.h index 752af2e2d5a2..2b3667408794 100644 --- a/drivers/media/platform/vimc/vimc-streamer.h +++ b/drivers/media/platform/vimc/vimc-streamer.h @@ -15,12 +15,32 @@ #define VIMC_STREAMER_PIPELINE_MAX_SIZE 16 +/** + * struct vimc_stream - struct that represents a stream in the pipeline + * + * @pipe: the media pipeline object associated with this stream + * @ved_pipeline: array containing all the entities participating in the + * stream. The order is from a video device (usually a capture device) where + * stream_on was called, to the entity generating the first base image to be + * processed in the pipeline. + * @pipe_size: size of @ved_pipeline + * @kthread: thread that generates the frames of the stream. + * @producer_pixfmt: the pixel format requested from the pipeline. This must + * be set just before calling vimc_streamer_s_stream(ent, 1). This value is + * propagated up to the source of the base image (usually a sensor node) and + * can be modified by entities during s_stream callback to request a different + * format from rest of the pipeline. + * + * When the user call stream_on in a video device, struct vimc_stream is + * used to keep track of all entities and subdevices that generates and + * process frames for the stream. + */ struct vimc_stream { struct media_pipeline pipe; struct vimc_ent_device *ved_pipeline[VIMC_STREAMER_PIPELINE_MAX_SIZE]; unsigned int pipe_size; - u8 *frame; struct task_struct *kthread; + u32 producer_pixfmt; }; /** |