summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/saa7134/saa7134-video.c
diff options
context:
space:
mode:
Diffstat (limited to 'linux/drivers/media/video/saa7134/saa7134-video.c')
-rw-r--r--linux/drivers/media/video/saa7134/saa7134-video.c82
1 files changed, 41 insertions, 41 deletions
diff --git a/linux/drivers/media/video/saa7134/saa7134-video.c b/linux/drivers/media/video/saa7134/saa7134-video.c
index 4d79c3dc6..3995f062b 100644
--- a/linux/drivers/media/video/saa7134/saa7134-video.c
+++ b/linux/drivers/media/video/saa7134/saa7134-video.c
@@ -1,5 +1,5 @@
/*
- * $Id: saa7134-video.c,v 1.15 2004/10/11 14:53:13 kraxel Exp $
+ * $Id: saa7134-video.c,v 1.16 2004/10/13 10:39:00 kraxel Exp $
*
* device driver for philips saa7134 based TV cards
* video4linux video interface
@@ -55,7 +55,7 @@ MODULE_PARM_DESC(noninterlaced,"video input is noninterlaced");
static int video_out[][9] = {
[CCIR656] = { 0x00, 0xb1, 0x00, 0xa1, 0x00, 0x04, 0x06, 0x00, 0x00 },
};
-
+
static struct saa7134_format formats[] = {
{
.name = "8 bpp gray",
@@ -373,7 +373,7 @@ static const unsigned int CTRLS = ARRAY_SIZE(video_ctrls);
static const struct v4l2_queryctrl* ctrl_by_id(unsigned int id)
{
unsigned int i;
-
+
for (i = 0; i < CTRLS; i++)
if (video_ctrls[i].id == id)
return video_ctrls+i;
@@ -482,12 +482,12 @@ static void set_tvnorm(struct saa7134_dev *dev, struct saa7134_tvnorm *norm)
saa_writeb(SAA7134_HSYNC_START, 0xeb);
saa_writeb(SAA7134_HSYNC_STOP, 0xe0);
saa_writeb(SAA7134_SOURCE_TIMING1, norm->src_timing);
-
+
saa_writeb(SAA7134_SYNC_CTRL, sync_control);
saa_writeb(SAA7134_LUMA_CTRL, luma_control);
saa_writeb(SAA7134_DEC_LUMA_BRIGHT, dev->ctl_bright);
saa_writeb(SAA7134_DEC_LUMA_CONTRAST, dev->ctl_contrast);
-
+
saa_writeb(SAA7134_DEC_CHROMA_SATURATION, dev->ctl_saturation);
saa_writeb(SAA7134_DEC_CHROMA_HUE, dev->ctl_hue);
saa_writeb(SAA7134_CHROMA_CTRL1, norm->chroma_ctrl1);
@@ -570,7 +570,7 @@ static void set_h_prescale(struct saa7134_dev *dev, int task, int prescale)
static void set_v_scale(struct saa7134_dev *dev, int task, int yscale)
{
int val,mirror;
-
+
saa_writeb(SAA7134_V_SCALE_RATIO1(task), yscale & 0xff);
saa_writeb(SAA7134_V_SCALE_RATIO2(task), yscale >> 8);
@@ -604,7 +604,7 @@ static void set_size(struct saa7134_dev *dev, int task,
v_start = dev->crop_current.top/2;
h_stop = (dev->crop_current.left + dev->crop_current.width -1);
v_stop = (dev->crop_current.top + dev->crop_current.height -1)/2;
-
+
saa_writeb(SAA7134_VIDEO_H_START1(task), h_start & 0xff);
saa_writeb(SAA7134_VIDEO_H_START2(task), h_start >> 8);
saa_writeb(SAA7134_VIDEO_H_STOP1(task), h_stop & 0xff);
@@ -624,7 +624,7 @@ static void set_size(struct saa7134_dev *dev, int task,
saa_writeb(SAA7134_H_SCALE_INC1(task), xscale & 0xff);
saa_writeb(SAA7134_H_SCALE_INC2(task), xscale >> 8);
set_v_scale(dev,task,yscale);
-
+
saa_writeb(SAA7134_VIDEO_PIXELS1(task), width & 0xff);
saa_writeb(SAA7134_VIDEO_PIXELS2(task), width >> 8);
saa_writeb(SAA7134_VIDEO_LINES1(task), height/div & 0xff);
@@ -651,7 +651,7 @@ static void sort_cliplist(struct cliplist *cl, int entries)
{
struct cliplist swap;
int i,j,n;
-
+
for (i = entries-2; i >= 0; i--) {
for (n = 0, j = 0; j <= i; j++) {
if (cl[j].position > cl[j+1].position) {
@@ -846,7 +846,7 @@ static int buffer_activate(struct saa7134_dev *dev,
dprintk("buffer_activate buf=%p\n",buf);
buf->vb.state = STATE_ACTIVE;
buf->top_seen = 0;
-
+
set_size(dev,TASK_A,buf->vb.width,buf->vb.height,
V4L2_FIELD_HAS_BOTH(buf->vb.field));
if (buf->fmt->yuv)
@@ -926,7 +926,7 @@ static int buffer_prepare(void *priv, struct videobuf_buffer *vb,
struct saa7134_buf *buf = (struct saa7134_buf *)vb;
unsigned int size;
int err;
-
+
/* sanity checks */
if (NULL == fh->fmt)
return -EINVAL;
@@ -995,7 +995,7 @@ static void buffer_queue(void *priv, struct videobuf_buffer *vb)
{
struct saa7134_fh *fh = priv;
struct saa7134_buf *buf = (struct saa7134_buf *)vb;
-
+
saa7134_buffer_queue(fh->dev,&fh->dev->video_q,buf);
}
@@ -1003,7 +1003,7 @@ static void buffer_release(void *priv, struct videobuf_buffer *vb)
{
struct saa7134_fh *fh = priv;
struct saa7134_buf *buf = (struct saa7134_buf *)vb;
-
+
saa7134_dma_free(fh->dev,buf);
}
@@ -1160,7 +1160,7 @@ static int set_control(struct saa7134_dev *dev, struct saa7134_fh *fh,
static struct videobuf_queue* saa7134_queue(struct saa7134_fh *fh)
{
struct videobuf_queue* q = NULL;
-
+
switch (fh->type) {
case V4L2_BUF_TYPE_VIDEO_CAPTURE:
q = &fh->cap;
@@ -1177,7 +1177,7 @@ static struct videobuf_queue* saa7134_queue(struct saa7134_fh *fh)
static int saa7134_resource(struct saa7134_fh *fh)
{
int res = 0;
-
+
switch (fh->type) {
case V4L2_BUF_TYPE_VIDEO_CAPTURE:
res = RESOURCE_VIDEO;
@@ -1199,7 +1199,7 @@ static int video_open(struct inode *inode, struct file *file)
struct list_head *list;
enum v4l2_buf_type type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
int radio = 0;
-
+
list_for_each(list,&saa7134_devlist) {
h = list_entry(list, struct saa7134_dev, devlist);
if (h->video_dev && (h->video_dev->minor == minor))
@@ -1377,7 +1377,7 @@ static int
video_mmap(struct file *file, struct vm_area_struct * vma)
{
struct saa7134_fh *fh = file->private_data;
-
+
return videobuf_mmap_mapper(vma,saa7134_queue(fh));
}
@@ -1436,7 +1436,7 @@ int saa7134_try_fmt(struct saa7134_dev *dev, struct saa7134_fh *fh,
struct v4l2_format *f)
{
int err;
-
+
switch (f->type) {
case V4L2_BUF_TYPE_VIDEO_CAPTURE:
{
@@ -1451,7 +1451,7 @@ int saa7134_try_fmt(struct saa7134_dev *dev, struct saa7134_fh *fh,
field = f->fmt.pix.field;
maxw = min(dev->crop_current.width*4, dev->crop_bounds.width);
maxh = min(dev->crop_current.height*4, dev->crop_bounds.height);
-
+
if (V4L2_FIELD_ANY == field) {
field = (f->fmt.pix.height > maxh/2)
? V4L2_FIELD_INTERLACED
@@ -1481,7 +1481,7 @@ int saa7134_try_fmt(struct saa7134_dev *dev, struct saa7134_fh *fh,
(f->fmt.pix.width * fmt->depth) >> 3;
f->fmt.pix.sizeimage =
f->fmt.pix.height * f->fmt.pix.bytesperline;
-
+
return 0;
}
case V4L2_BUF_TYPE_VIDEO_OVERLAY:
@@ -1502,13 +1502,13 @@ int saa7134_s_fmt(struct saa7134_dev *dev, struct saa7134_fh *fh,
{
unsigned long flags;
int err;
-
+
switch (f->type) {
case V4L2_BUF_TYPE_VIDEO_CAPTURE:
err = saa7134_try_fmt(dev,fh,f);
if (0 != err)
return err;
-
+
fh->fmt = format_by_fourcc(f->fmt.pix.pixelformat);
fh->width = f->fmt.pix.width;
fh->height = f->fmt.pix.height;
@@ -1550,7 +1550,7 @@ int saa7134_common_ioctl(struct saa7134_dev *dev,
unsigned int cmd, void *arg)
{
int err;
-
+
switch (cmd) {
case VIDIOC_QUERYCTRL:
{
@@ -1617,7 +1617,7 @@ int saa7134_common_ioctl(struct saa7134_dev *dev,
case VIDIOC_S_INPUT:
{
int *i = arg;
-
+
if (*i < 0 || *i >= SAA7134_INPUT_MAX)
return -EINVAL;
if (NULL == card_in(dev,*i).name)
@@ -1665,7 +1665,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
case VIDIOC_QUERYCAP:
{
struct v4l2_capability *cap = arg;
-
+
memset(cap,0,sizeof(*cap));
strcpy(cap->driver, "saa7134");
strlcpy(cap->card, saa7134_boards[dev->board].name,
@@ -1677,7 +1677,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
V4L2_CAP_VIDEO_OVERLAY |
V4L2_CAP_VBI_CAPTURE |
V4L2_CAP_TUNER |
- V4L2_CAP_READWRITE |
+ V4L2_CAP_READWRITE |
V4L2_CAP_STREAMING;
return 0;
}
@@ -1727,7 +1727,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
set_tvnorm(dev,&tvnorms[i]);
start_preview(dev,fh);
spin_unlock_irqrestore(&dev->slock,flags);
- } else
+ } else
set_tvnorm(dev,&tvnorms[i]);
saa7134_tvaudio_do_scan(dev);
up(&dev->lock);
@@ -1759,7 +1759,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
case VIDIOC_G_CROP:
{
struct v4l2_crop * crop = arg;
-
+
if (crop->type != V4L2_BUF_TYPE_VIDEO_CAPTURE &&
crop->type != V4L2_BUF_TYPE_VIDEO_OVERLAY)
return -EINVAL;
@@ -1770,7 +1770,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
{
struct v4l2_crop *crop = arg;
struct v4l2_rect *b = &dev->crop_bounds;
-
+
if (crop->type != V4L2_BUF_TYPE_VIDEO_CAPTURE &&
crop->type != V4L2_BUF_TYPE_VIDEO_OVERLAY)
return -EINVAL;
@@ -1790,7 +1790,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
crop->c.top = b->top + b->height;
if (crop->c.height > b->top - crop->c.top + b->height)
crop->c.height = b->top - crop->c.top + b->height;
-
+
if (crop->c.left < b->left)
crop->c.top = b->left;
if (crop->c.left > b->left + b->width)
@@ -1873,7 +1873,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
up(&dev->lock);
return 0;
}
-
+
/* --- control ioctls ---------------------------------------- */
case VIDIOC_ENUMINPUT:
case VIDIOC_G_INPUT:
@@ -1949,7 +1949,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
strcpy(f->description,"vbi data");
break;
default:
- return -EINVAL;
+ return -EINVAL;
}
return 0;
}
@@ -1965,7 +1965,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
{
struct v4l2_framebuffer *fb = arg;
struct saa7134_format *fmt;
-
+
if(!capable(CAP_SYS_ADMIN) &&
!capable(CAP_SYS_RAWIO))
return -EPERM;
@@ -2021,7 +2021,7 @@ static int video_do_ioctl(struct inode *inode, struct file *file,
struct v4l2_format *f = arg;
return saa7134_try_fmt(dev,fh,f);
}
-
+
case VIDIOCGMBUF:
{
struct video_mbuf *mbuf = arg;
@@ -2096,7 +2096,7 @@ static int radio_do_ioctl(struct inode *inode, struct file *file,
{
struct saa7134_fh *fh = file->private_data;
struct saa7134_dev *dev = fh->dev;
-
+
if (video_debug > 1)
saa7134_print_ioctl(dev->name,cmd);
switch (cmd) {
@@ -2127,7 +2127,7 @@ static int radio_do_ioctl(struct inode *inode, struct file *file,
#ifdef V4L2_I2C_CLIENTS
saa7134_i2c_call_clients(dev,VIDIOC_G_TUNER,t);
-#else
+#else
{
struct video_tuner vt;
memset(&vt,0,sizeof(vt));
@@ -2140,7 +2140,7 @@ static int radio_do_ioctl(struct inode *inode, struct file *file,
case VIDIOC_ENUMINPUT:
{
struct v4l2_input *i = arg;
-
+
if (i->index != 0)
return -EINVAL;
strcpy(i->name,"Radio");
@@ -2194,7 +2194,7 @@ static int radio_do_ioctl(struct inode *inode, struct file *file,
case VIDIOC_G_FREQUENCY:
case VIDIOC_S_FREQUENCY:
return video_do_ioctl(inode,file,cmd,arg);
-
+
default:
return v4l_compat_translate_ioctl(inode,file,cmd,arg,
radio_do_ioctl);
@@ -2302,7 +2302,7 @@ int saa7134_video_init1(struct saa7134_dev *dev)
saa_writeb(SAA7134_VIDEO_PORT_CTRL7, video_out[vo][7]);
saa_writeb(SAA7134_VIDEO_PORT_CTRL8, video_out[vo][8]);
}
-
+
return 0;
}
@@ -2330,7 +2330,7 @@ void saa7134_irq_video_intl(struct saa7134_dev *dev)
norm = saa_readb(SAA7134_STATUS_VIDEO1) & 0x03;
dprintk("DCSDT: %s\n",st[norm]);
-
+
if (0 != norm) {
/* wake up tvaudio audio carrier scan thread */
saa7134_tvaudio_do_scan(dev);
@@ -2348,7 +2348,7 @@ void saa7134_irq_video_intl(struct saa7134_dev *dev)
void saa7134_irq_video_done(struct saa7134_dev *dev, unsigned long status)
{
enum v4l2_field field;
-
+
spin_lock(&dev->slock);
if (dev->video_q.curr) {
dev->video_fieldcount++;