aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/ivtv/ivtv-streams.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/video/ivtv/ivtv-streams.c')
-rw-r--r--drivers/media/video/ivtv/ivtv-streams.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/media/video/ivtv/ivtv-streams.c b/drivers/media/video/ivtv/ivtv-streams.c
index 6917c497fb7e..def507ee106a 100644
--- a/drivers/media/video/ivtv/ivtv-streams.c
+++ b/drivers/media/video/ivtv/ivtv-streams.c
@@ -42,6 +42,7 @@
42#include "ivtv-yuv.h" 42#include "ivtv-yuv.h"
43#include "ivtv-cards.h" 43#include "ivtv-cards.h"
44#include "ivtv-streams.h" 44#include "ivtv-streams.h"
45#include <media/v4l2-event.h>
45 46
46static const struct v4l2_file_operations ivtv_v4l2_enc_fops = { 47static const struct v4l2_file_operations ivtv_v4l2_enc_fops = {
47 .owner = THIS_MODULE, 48 .owner = THIS_MODULE,
@@ -840,6 +841,9 @@ int ivtv_stop_v4l2_encode_stream(struct ivtv_stream *s, int gop_end)
840 841
841int ivtv_stop_v4l2_decode_stream(struct ivtv_stream *s, int flags, u64 pts) 842int ivtv_stop_v4l2_decode_stream(struct ivtv_stream *s, int flags, u64 pts)
842{ 843{
844 static const struct v4l2_event ev = {
845 .type = V4L2_EVENT_EOS,
846 };
843 struct ivtv *itv = s->itv; 847 struct ivtv *itv = s->itv;
844 848
845 if (s->vdev == NULL) 849 if (s->vdev == NULL)
@@ -891,6 +895,7 @@ int ivtv_stop_v4l2_decode_stream(struct ivtv_stream *s, int flags, u64 pts)
891 895
892 set_bit(IVTV_F_I_EV_DEC_STOPPED, &itv->i_flags); 896 set_bit(IVTV_F_I_EV_DEC_STOPPED, &itv->i_flags);
893 wake_up(&itv->event_waitq); 897 wake_up(&itv->event_waitq);
898 v4l2_event_queue(s->vdev, &ev);
894 899
895 /* wake up wait queues */ 900 /* wake up wait queues */
896 wake_up(&s->waitq); 901 wake_up(&s->waitq);