struct cx23885_i2c *i2c_bus = NULL;
struct videobuf_dvb_frontend *fe0;
- fe0 = videobuf_dvb_get_frontend(&port->frontends, 0);
+ fe0 = videobuf_dvb_get_frontend(&port->frontends, 1);
if (!fe0)
return -EINVAL;
break;
case CX23885_BOARD_HAUPPAUGE_HVR1800:
i2c_bus = &dev->i2c_bus[0];
- switch (alt_tuner) { // XXXXXX multifrontend?
+ switch (alt_tuner) {
case 1:
fe0->dvb.frontend =
dvb_attach(s5h1409_attach,
struct cx23885_dev *dev = port->dev;
int err;
- fe0 = videobuf_dvb_get_frontend(&port->frontends, 0);
+ fe0 = videobuf_dvb_get_frontend(&port->frontends, 1);
if (!fe0)
err = -EINVAL;
{
struct videobuf_dvb_frontend *fe0;
- fe0 = videobuf_dvb_get_frontend(&port->frontends, 0);
+ fe0 = videobuf_dvb_get_frontend(&port->frontends, 1);
/* dvb */
if(fe0->dvb.frontend)
videobuf_dvb_unregister_bus(&port->frontends);
cx88_card_list(core, pci);
}
- memset(&core->board, 0, sizeof(core->board));
memcpy(&core->board, &cx88_boards[core->boardnr], sizeof(core->board));
if (!core->board.num_frontends)
return -EINVAL;
}
-
drv = cx8802_get_driver(dev, CX88_MPEG_DVB);
if (drv) {
if (acquire){
.ctrl = &ctl,
};
-/* Get the first frontend */
+ /* Get the first frontend */
fe0 = videobuf_dvb_get_frontend(&dev->frontends, 1);
if (!fe0)
return -EINVAL;
udelay(1000);
break;
- case CX88_BOARD_HAUPPAUGE_HVR3000: /* ? */
- if(core->dvbdev->frontends.active_fe_id == 1) {
- /* DVB-S/S2 Enabled */
-
- /* Toggle reset on cx22702 leaving i2c active */
- cx_write(MO_GP0_IO, core->board.input[0].gpio0);
- udelay(1000);
- cx_clear(MO_GP0_IO, 0x00000080);
- udelay(50);
- cx_set(MO_GP0_IO, 0x00000080); /* cx22702 out of reset */
- cx_set(MO_GP0_IO, 0x00000004); /* tri-state the cx22702 pins */
- udelay(1000);
-
- cx_write(MO_SRST_IO, 1); /* Take the cx24116/cx24123 out of reset */
- core->dvbdev->ts_gen_cntrl = 0x02; /* Parallel IO */
- } else
- if (core->dvbdev->frontends.active_fe_id == 2) {
- /* DVB-T Enabled */
-
- /* Put the cx24116/cx24123 into reset */
- cx_write(MO_SRST_IO, 0);
-
- /* cx22702 out of reset and enable it */
- cx_set(MO_GP0_IO, 0x00000080);
- cx_clear(MO_GP0_IO, 0x00000004);
- core->dvbdev->ts_gen_cntrl = 0x0c; /* Serial IO */
- udelay(1000);
- }
- break;
+ case CX88_BOARD_HAUPPAUGE_HVR3000:
case CX88_BOARD_HAUPPAUGE_HVR4000:
if(core->dvbdev->frontends.active_fe_id == 1) {
/* DVB-S/S2 Enabled */
{
struct cx88_core *core = drv->core;
struct cx8802_dev *dev = drv->core->dvbdev;
- int err,i;
+ int err, i;
struct videobuf_dvb_frontend *fe;
dprintk( 1, "%s\n", __func__);
if (err != 0)
printk(KERN_ERR "%s/2: dvb_register failed (err = %d)\n",
core->name, err);
-
- fail_core:
+fail_core:
return err;
}
case CX88_BOARD_PINNACLE_PCTV_HD_800i:
ircode = ir_decode_biphase(ir->samples, ir->scount, 5, 7);
ir_dprintk("biphase decoded: %x\n", ircode);
-//TODO Darron has other code here
if ((ircode & 0xfffff000) != 0x3000)
break;
ir_input_keydown(ir->input, &ir->ir, ircode & 0x3f, ircode);
{
struct videobuf_dvb_frontend *fe0;
- fe0 = videobuf_dvb_get_frontend(&dev->frontends, 0);
+ /* Get the first frontend */
+ fe0 = videobuf_dvb_get_frontend(&dev->frontends, 1);
fe0->dvb.frontend = dvb_attach(tda10046_attach, cdec_conf, &dev->i2c_adap);
if (fe0->dvb.frontend) {
struct videobuf_dvb_frontend *fe0;
/* Get the first frontend */
- fe0 = videobuf_dvb_get_frontend(&dev->frontends, 0);
+ fe0 = videobuf_dvb_get_frontend(&dev->frontends, 1);
if (!fe0)
return -EINVAL;
&tda827x_cfg_0) < 0)
goto dettach_frontend;
break;
- case SAA7134_BOARD_FLYDVB_TRIO: // XXXXXX multifrontend
+ case SAA7134_BOARD_FLYDVB_TRIO:
if (!use_frontend) { /* terrestrial */
if (configure_tda827x_fe(dev, &lifeview_trio_config,
&tda827x_cfg_0) < 0)
dvb->dmxdev.filternum = 256;
dvb->dmxdev.demux = &dvb->demux.dmx;
dvb->dmxdev.capabilities = 0;
- //result = dvb_dmxdev_init(&dvb->dmxdev, &dvb->adapter);
result = dvb_dmxdev_init(&dvb->dmxdev, adapter);
if (result < 0) {
dvb_unregister_frontend(dvb->frontend);
fail_frontend:
dvb_frontend_detach(dvb->frontend);
- dvb_unregister_adapter(&dvb->adapter);
+ dvb_unregister_adapter(adapter);
return result;
}