566
567
568
569
570 printk(KERN_INFO "%s() allocating %d frontend(s)\n", __func__,
571 port->num_frontends);
572
573 for (i = 1; i <= port->num_frontends; i++) {
574 if (videobuf_dvb_alloc_frontend(
575 &port->frontends, i) == NULL) {
576 printk(KERN_ERR "%s() failed to alloc\n", __func__);
577 return -ENOMEM;
578 }
579
580 fe0 = videobuf_dvb_get_frontend(&port->frontends, i);
581 if (!fe0)
582 err = -EINVAL;
583
584 dprintk(1, "%s\n", __func__);
585 dprintk(1, " ->probed by Card=%d Name=%s, PCI %02x:%02x\n",
586 dev->board,
587 dev->name,
588 dev->pci_bus,
589 dev->pci_slot);
590
591 err = -ENODEV;
592
593
594
595 printk(KERN_INFO "%s: cx23885 based dvb card\n", dev->name);
596 videobuf_queue_sg_init(&fe0->dvb.dvbq, &dvb_qops,
597 &dev->pci->dev, &port->slock,
598 V4L2_BUF_TYPE_VIDEO_CAPTURE, V4L2_FIELD_TOP,
599 sizeof(struct cx23885_buffer), port);
600 }
601 err = dvb_register(port);
602 if (err != 0)
603 printk(KERN_ERR "%s() dvb_register failed err = %d\n",
604 __func__, err);
605
606 return err;