Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 24a70fdc authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Linus Torvalds
Browse files

[PATCH] v4l: BTTV updates and card additions



- Remove $Id CVS logs for V4L files
- Added DVICO FusionHDTV 5 Lite card.
- Added Acorp Y878F.
- CodingStyle fixes.
- Added tuner_addr to bttv cards structure.
- linux/version.h replaced by linux/utsname.h on bttvp.h
- kernel module for acquiring RDS data from a SAA6588.
- Allow multiple open() and reading calls to /dev/radio on bttv-driver.c
- added i2c address for lgdt330x.

Signed-off-by: default avatarHans J. Koch <koch@hjk-az.de>
Signed-off-by: default avatarMichael Krufky <mkrufky@m1k.net>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 793cf9e6
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -133,3 +133,5 @@ card=131 - Tibet Systems 'Progress DVR' CS16
card=132 - Kodicom 4400R (master)
card=133 - Kodicom 4400R (slave)
card=134 - Adlink RTV24
card=135 - DVICO FusionHDTV 5 Lite
card=136 - Acorp Y878F
+677 −498

File changed.

Preview size limit exceeded, changes collapsed.

+40 −8
Original line number Diff line number Diff line
/*
    $Id: bttv-driver.c,v 1.52 2005/08/04 00:55:16 mchehab Exp $

    bttv - Bt848 frame grabber driver

@@ -42,6 +41,9 @@

#include "bttvp.h"

#include "rds.h"


unsigned int bttv_num;			/* number of Bt848s in use */
struct bttv bttvs[BTTV_MAX];

@@ -3128,14 +3130,11 @@ static int radio_open(struct inode *inode, struct file *file)

	dprintk("bttv%d: open called (radio)\n",btv->c.nr);
	down(&btv->lock);
	if (btv->radio_user) {
		up(&btv->lock);
		return -EBUSY;
	}

	btv->radio_user++;

	file->private_data = btv;

	i2c_vidiocschan(btv);
	bttv_call_i2c_clients(btv,AUDC_SET_RADIO,&btv->tuner_type);
	audio_mux(btv,AUDIO_RADIO);

@@ -3146,8 +3145,12 @@ static int radio_open(struct inode *inode, struct file *file)
static int radio_release(struct inode *inode, struct file *file)
{
	struct bttv        *btv = file->private_data;
	struct rds_command cmd;

	btv->radio_user--;

	bttv_call_i2c_clients(btv, RDS_CMD_CLOSE, &cmd);

	return 0;
}

@@ -3203,13 +3206,42 @@ static int radio_ioctl(struct inode *inode, struct file *file,
	return video_usercopy(inode, file, cmd, arg, radio_do_ioctl);
}

static ssize_t radio_read(struct file *file, char __user *data,
			 size_t count, loff_t *ppos)
{
	struct bttv    *btv = file->private_data;
	struct rds_command cmd;
	cmd.block_count = count/3;
	cmd.buffer = data;
	cmd.instance = file;
	cmd.result = -ENODEV;

	bttv_call_i2c_clients(btv, RDS_CMD_READ, &cmd);

	return cmd.result;
}

static unsigned int radio_poll(struct file *file, poll_table *wait)
{
	struct bttv    *btv = file->private_data;
	struct rds_command cmd;
	cmd.instance = file;
	cmd.event_list = wait;
	cmd.result = -ENODEV;
	bttv_call_i2c_clients(btv, RDS_CMD_POLL, &cmd);

	return cmd.result;
}

static struct file_operations radio_fops =
{
	.owner	  = THIS_MODULE,
	.open	  = radio_open,
	.read     = radio_read,
	.release  = radio_release,
	.ioctl	  = radio_ioctl,
	.llseek	  = no_llseek,
	.poll     = radio_poll,
};

static struct video_device radio_template =
+0 −1
Original line number Diff line number Diff line
/*
    $Id: bttv-gpio.c,v 1.7 2005/02/16 12:14:10 kraxel Exp $

    bttv-gpio.c  --  gpio sub drivers

+1 −1
Original line number Diff line number Diff line
/*
    $Id: bttv-i2c.c,v 1.25 2005/07/05 17:37:35 nsh Exp $

    bttv-i2c.c  --  all the i2c code is here

@@ -381,6 +380,7 @@ void __devinit bttv_readee(struct bttv *btv, unsigned char *eedata, int addr)
}

static char *i2c_devs[128] = {
	[ 0x1c >> 1 ] = "lgdt330x",
	[ 0x30 >> 1 ] = "IR (hauppauge)",
	[ 0x80 >> 1 ] = "msp34xx",
	[ 0x86 >> 1 ] = "tda9887",
Loading