diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-17 00:15:42 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-06-17 00:15:42 -0400 |
commit | 0dd5198672dd2bbeb933862e1fc82162e0b636be (patch) | |
tree | c9efed20d90603c4d1626c21bd7aab1e7fc74a58 /drivers/media/video/saa7134/saa7134-empress.c | |
parent | c868d550115b9ccc0027c67265b9520790f05601 (diff) | |
parent | 11c635a25b9f3a5d87409ce46cf2e05c500251ec (diff) |
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (425 commits)
V4L/DVB (11870): gspca - main: VIDIOC_ENUM_FRAMESIZES ioctl added.
V4L/DVB (12004): poll method lose race condition
V4L/DVB (11894): flexcop-pci: dmesg visible names broken
V4L/DVB (11892): Siano: smsendian - declare function as extern
V4L/DVB (11891): Siano: smscore - bind the GPIO SMS protocol
V4L/DVB (11890): Siano: smscore - remove redundant code
V4L/DVB (11889): Siano: smsdvb - add DVB v3 events
V4L/DVB (11888): Siano: smsusb - remove redundant ifdef
V4L/DVB (11887): Siano: smscards - add board (target) events
V4L/DVB (11886): Siano: smscore - fix some new GPIO definitions names
V4L/DVB (11885): Siano: Add new GPIO management interface
V4L/DVB (11884): Siano: smssdio - revert to stand alone module
V4L/DVB (11883): Siano: cards - add two additional (USB) devices
V4L/DVB (11824): Siano: smsusb - change exit func debug msg
V4L/DVB (11823): Siano: smsusb - fix typo in module description
V4L/DVB (11822): Siano: smscore - bug fix at get_device_mode
V4L/DVB (11821): Siano: smscore - fix isdb-t firmware name
V4L/DVB (11820): Siano: smscore - fix byte ordering bug
V4L/DVB (11819): Siano: smscore - fix get_common_buffer bug
V4L/DVB (11818): Siano: smscards - assign gpio to HPG targets
...
Diffstat (limited to 'drivers/media/video/saa7134/saa7134-empress.c')
-rw-r--r-- | drivers/media/video/saa7134/saa7134-empress.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/media/video/saa7134/saa7134-empress.c b/drivers/media/video/saa7134/saa7134-empress.c index 9db3472667e5..add1757f8930 100644 --- a/drivers/media/video/saa7134/saa7134-empress.c +++ b/drivers/media/video/saa7134/saa7134-empress.c | |||
@@ -255,6 +255,16 @@ static int empress_s_fmt_vid_cap(struct file *file, void *priv, | |||
255 | return 0; | 255 | return 0; |
256 | } | 256 | } |
257 | 257 | ||
258 | static int empress_try_fmt_vid_cap(struct file *file, void *priv, | ||
259 | struct v4l2_format *f) | ||
260 | { | ||
261 | struct saa7134_dev *dev = file->private_data; | ||
262 | |||
263 | f->fmt.pix.pixelformat = V4L2_PIX_FMT_MPEG; | ||
264 | f->fmt.pix.sizeimage = TS_PACKET_SIZE * dev->ts.nr_packets; | ||
265 | |||
266 | return 0; | ||
267 | } | ||
258 | 268 | ||
259 | static int empress_reqbufs(struct file *file, void *priv, | 269 | static int empress_reqbufs(struct file *file, void *priv, |
260 | struct v4l2_requestbuffers *p) | 270 | struct v4l2_requestbuffers *p) |
@@ -450,6 +460,7 @@ static const struct v4l2_file_operations ts_fops = | |||
450 | static const struct v4l2_ioctl_ops ts_ioctl_ops = { | 460 | static const struct v4l2_ioctl_ops ts_ioctl_ops = { |
451 | .vidioc_querycap = empress_querycap, | 461 | .vidioc_querycap = empress_querycap, |
452 | .vidioc_enum_fmt_vid_cap = empress_enum_fmt_vid_cap, | 462 | .vidioc_enum_fmt_vid_cap = empress_enum_fmt_vid_cap, |
463 | .vidioc_try_fmt_vid_cap = empress_try_fmt_vid_cap, | ||
453 | .vidioc_s_fmt_vid_cap = empress_s_fmt_vid_cap, | 464 | .vidioc_s_fmt_vid_cap = empress_s_fmt_vid_cap, |
454 | .vidioc_g_fmt_vid_cap = empress_g_fmt_vid_cap, | 465 | .vidioc_g_fmt_vid_cap = empress_g_fmt_vid_cap, |
455 | .vidioc_reqbufs = empress_reqbufs, | 466 | .vidioc_reqbufs = empress_reqbufs, |
@@ -491,11 +502,8 @@ static void empress_signal_update(struct work_struct *work) | |||
491 | 502 | ||
492 | if (dev->nosignal) { | 503 | if (dev->nosignal) { |
493 | dprintk("no video signal\n"); | 504 | dprintk("no video signal\n"); |
494 | ts_reset_encoder(dev); | ||
495 | } else { | 505 | } else { |
496 | dprintk("video signal acquired\n"); | 506 | dprintk("video signal acquired\n"); |
497 | if (atomic_read(&dev->empress_users)) | ||
498 | ts_init_encoder(dev); | ||
499 | } | 507 | } |
500 | } | 508 | } |
501 | 509 | ||