summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c
diff options
context:
space:
mode:
Diffstat (limited to 'linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c')
-rw-r--r--linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c45
1 files changed, 0 insertions, 45 deletions
diff --git a/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c b/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c
index 71613d39b..2e9905b79 100644
--- a/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c
+++ b/linux/drivers/media/dvb/bt8xx/dvb-bt8xx.c
@@ -45,34 +45,26 @@ static int debug = 0;
static void dvb_bt8xx_task(unsigned long data)
{
-
struct dvb_bt8xx_card *card = (struct dvb_bt8xx_card *)data;
//printk("%d ", finished_block);
while (card->bt->last_block != card->bt->finished_block) {
-
dvb_dmx_swfilter(&card->demux, &card->bt->buf_cpu[card->bt->last_block * card->bt->block_bytes], card->bt->block_bytes);
-
card->bt->last_block = (card->bt->last_block + 1) % card->bt->block_count;
-
}
-
}
static int dvb_bt8xx_master_xfer(struct dvb_i2c_bus *i2c, const struct i2c_msg msgs[], int num)
{
-
struct dvb_bt8xx_card *card = (struct dvb_bt8xx_card *)i2c->data;
return card->i2c_adap->algo->master_xfer(card->i2c_adap, (struct i2c_msg *)msgs, num);
-
}
static int dvb_bt8xx_start_feed(struct dvb_demux_feed *dvbdmxfeed)
{
-
struct dvb_demux *dvbdmx = dvbdmxfeed->demux;
struct dvb_bt8xx_card *card = dvbdmx->priv;
@@ -89,12 +81,10 @@ static int dvb_bt8xx_start_feed(struct dvb_demux_feed *dvbdmxfeed)
// bt878_start(card->bt, card->gpio_mode);
return 0;
-
}
static int dvb_bt8xx_stop_feed(struct dvb_demux_feed *dvbdmxfeed)
{
-
struct dvb_demux *dvbdmx = dvbdmxfeed->demux;
struct dvb_bt8xx_card *card = dvbdmx->priv;
@@ -111,12 +101,10 @@ static int dvb_bt8xx_stop_feed(struct dvb_demux_feed *dvbdmxfeed)
card->active = 0;
return 0;
-
}
static struct bt878 *dvb_bt8xx_get_bt(unsigned int bttv_nr)
{
-
struct pci_dev* bttv_pci_dev;
unsigned int card_nr;
@@ -124,22 +112,18 @@ static struct bt878 *dvb_bt8xx_get_bt(unsigned int bttv_nr)
return NULL;
for (card_nr = 0; card_nr < bt878_num; card_nr++) {
-
if ((bt878[card_nr].dev->subsystem_vendor == bttv_pci_dev->subsystem_vendor) &&
(bt878[card_nr].dev->subsystem_device == bttv_pci_dev->subsystem_device) &&
(bt878[card_nr].dev->bus->number == bttv_pci_dev->bus->number) &&
(PCI_SLOT(bt878[card_nr].dev->devfn) == PCI_SLOT(bttv_pci_dev->devfn)))
return &bt878[card_nr];
-
}
return NULL;
-
}
static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio_mode)
{
-
struct dvb_bt8xx_card *card;
int result;
@@ -151,7 +135,6 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
card->bttv_nr = bttv_nr;
if (!(card->bt = dvb_bt8xx_get_bt(card->bttv_nr))) {
-
printk("dvb_bt8xx: unable to determine DMA core of card%d\n", card->bttv_nr);
return -EFAULT;
@@ -161,7 +144,6 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
card->gpio_mode = gpio_mode;
if (!(card->i2c_adap = bttv_get_i2c_adap(card->bttv_nr))) {
-
printk("dvb_bt8xx: unable to determine i2c adapter of card%d\n", card->bttv_nr);
kfree(card);
@@ -181,7 +163,6 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
}
if (!(dvb_register_i2c_bus(dvb_bt8xx_master_xfer, card, card->adapter, 0))) {
-
printk("dvb_bt8xx: dvb_register_i2c_bus of card%d failed\n", card->bttv_nr);
dvb_unregister_adapter(card->adapter);
@@ -189,7 +170,6 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
kfree(card);
return -EFAULT;
-
}
memset(&card->demux, 0, sizeof(struct dvb_demux));
@@ -204,14 +184,12 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
card->demux.write_to_decoder = NULL;
if ((result = dvb_dmx_init(&card->demux)) < 0) {
-
printk("dvb_bt8xx: dvb_dmx_init failed (errno = %d)\n", result);
dvb_unregister_i2c_bus(dvb_bt8xx_master_xfer, card->adapter, 0);
dvb_unregister_adapter(card->adapter);
return result;
-
}
card->dmxdev.filternum = 256;
@@ -219,7 +197,6 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
card->dmxdev.capabilities = 0;
if ((result = dvb_dmxdev_init(&card->dmxdev, card->adapter)) < 0) {
-
printk("dvb_bt8xx: dvb_dmxdev_init failed (errno = %d)\n", result);
dvb_dmx_release(&card->demux);
@@ -227,13 +204,11 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
dvb_unregister_adapter(card->adapter);
return result;
-
}
card->fe_hw.source = DMX_FRONTEND_0;
if ((result = card->demux.dmx.add_frontend(&card->demux.dmx, &card->fe_hw)) < 0) {
-
printk("dvb_bt8xx: dvb_dmx_init failed (errno = %d)\n", result);
dvb_dmxdev_release(&card->dmxdev);
@@ -242,13 +217,11 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
dvb_unregister_adapter(card->adapter);
return result;
-
}
card->fe_mem.source = DMX_MEMORY_FE;
if ((result = card->demux.dmx.add_frontend(&card->demux.dmx, &card->fe_mem)) < 0) {
-
printk("dvb_bt8xx: dvb_dmx_init failed (errno = %d)\n", result);
card->demux.dmx.remove_frontend(&card->demux.dmx, &card->fe_hw);
@@ -258,11 +231,9 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
dvb_unregister_adapter(card->adapter);
return result;
-
}
if ((result = card->demux.dmx.connect_frontend(&card->demux.dmx, &card->fe_hw)) < 0) {
-
printk("dvb_bt8xx: dvb_dmx_init failed (errno = %d)\n", result);
card->demux.dmx.remove_frontend(&card->demux.dmx, &card->fe_mem);
@@ -273,7 +244,6 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
dvb_unregister_adapter(card->adapter);
return result;
-
}
dvb_net_init(card->adapter, &card->dvbnet, &card->demux.dmx);
@@ -290,12 +260,10 @@ static int __init dvb_bt8xx_load(unsigned int bttv_nr, char *card_name, u32 gpio
static void dvb_bt8xx_close(void)
{
-
struct dvb_bt8xx_card *card;
struct list_head *entry, *entry_safe;
list_for_each_safe(entry, entry_safe, &card_list) {
-
card = list_entry(entry, struct dvb_bt8xx_card, list);
dprintk("dvb_bt8xx: unloading card%d\n", card->bttv_nr);
@@ -314,14 +282,12 @@ static void dvb_bt8xx_close(void)
kfree(card);
list_del(&card->list);
-
}
}
static int __init dvb_bt8xx_init(void)
{
-
int card_id;
unsigned int card_nr;
int card_type;
@@ -329,23 +295,14 @@ static int __init dvb_bt8xx_init(void)
dprintk("dvb_bt8xx: enumerating availible bttv cards...\n");
for (card_nr = 0; !bttv_get_cardinfo(card_nr, &card_type, &card_id); card_nr++) {
-
switch(card_id) {
-
case 0x001C11BD:
-
dvb_bt8xx_load(card_nr, "Pinnacle PCTV DVB-S", 0x0400C060);
-
break;
-
case 0x01010071:
-
dvb_bt8xx_load(card_nr, "Nebula DigiTV DVB-T", (1 << 26) | (1 << 14) | (1 << 5));
-
break;
-
}
-
}
return 0;
@@ -354,9 +311,7 @@ static int __init dvb_bt8xx_init(void)
static void __exit dvb_bt8xx_exit(void)
{
-
dvb_bt8xx_close();
-
}
module_init(dvb_bt8xx_init);