aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/platform/vimc/vimc-streamer.c
diff options
context:
space:
mode:
authorAndré Almeida <andrealmeid@collabora.com>2019-06-15 22:09:58 -0400
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>2019-06-21 17:17:25 -0400
commitbfa69bdf342b723a065528acdb217d13a40e40b6 (patch)
treef101f0caa3fa6e6256424a222bf34d1695a06e1d /drivers/media/platform/vimc/vimc-streamer.c
parent94954bb709c998aeda73be42bb18a7911b6413b4 (diff)
media: vimc: stream: add missing function documentation
Add comments at vimc_streamer_s_stream and vimc_streamer_thread, making the vimc-stream totally documented. Signed-off-by: André Almeida <andrealmeid@collabora.com> [hverkuil-cisco@xs4all.nl: fix typo: in a fixed framerate -> at a fixed framerate] [hverkuil-cisco@xs4all.nl: fix typo: stops the thread -> stop the thread] Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'drivers/media/platform/vimc/vimc-streamer.c')
-rw-r--r--drivers/media/platform/vimc/vimc-streamer.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/drivers/media/platform/vimc/vimc-streamer.c b/drivers/media/platform/vimc/vimc-streamer.c
index 236ade38f1da..3b3f36357a0e 100644
--- a/drivers/media/platform/vimc/vimc-streamer.c
+++ b/drivers/media/platform/vimc/vimc-streamer.c
@@ -122,6 +122,14 @@ static int vimc_streamer_pipeline_init(struct vimc_stream *stream,
122 return -EINVAL; 122 return -EINVAL;
123} 123}
124 124
125/*
126 * vimc_streamer_thread - process frames through the pipeline
127 *
128 * @data: vimc_stream struct of the current stream
129 *
130 * From the source to the sink, gets a frame from each subdevice and send to
131 * the next one of the pipeline at a fixed framerate.
132 */
125static int vimc_streamer_thread(void *data) 133static int vimc_streamer_thread(void *data)
126{ 134{
127 struct vimc_stream *stream = data; 135 struct vimc_stream *stream = data;
@@ -149,6 +157,20 @@ static int vimc_streamer_thread(void *data)
149 return 0; 157 return 0;
150} 158}
151 159
160/*
161 * vimc_streamer_s_stream - start/stop the streaming on the media pipeline
162 *
163 * @stream: the pointer to the stream structure of the current stream
164 * @ved: pointer to the vimc entity of the entity of the stream
165 * @enable: flag to determine if stream should start/stop
166 *
167 * When starting, check if there is no stream->kthread allocated. This should
168 * indicate that a stream is already running. Then, it initializes
169 * the pipeline, creates and runs a kthread to consume buffers through the
170 * pipeline.
171 * When stopping, analogously check if there is a stream running, stop
172 * the thread and terminates the pipeline.
173 */
152int vimc_streamer_s_stream(struct vimc_stream *stream, 174int vimc_streamer_s_stream(struct vimc_stream *stream,
153 struct vimc_ent_device *ved, 175 struct vimc_ent_device *ved,
154 int enable) 176 int enable)