Merge master.kernel.org:/home/rmk/linux-2.6-arm
[pandora-kernel.git] / drivers / media / dvb / dvb-usb / dvb-usb-init.c
index c3b3ae4..a902059 100644 (file)
@@ -51,17 +51,17 @@ static int dvb_usb_init(struct dvb_usb_device *d)
 
 /* speed - when running at FULL speed we need a HW PID filter */
        if (d->udev->speed == USB_SPEED_FULL && !(d->props.caps & DVB_USB_HAS_PID_FILTER)) {
-               err("This USB2.0 device cannot be run on a USB1.1 port. (it lacks a HW PID filter)");
+               err("This USB2.0 device cannot be run on a USB1.1 port. (it lacks a hardware PID filter)");
                return -ENODEV;
        }
 
        if ((d->udev->speed == USB_SPEED_FULL && d->props.caps & DVB_USB_HAS_PID_FILTER) ||
                (d->props.caps & DVB_USB_NEED_PID_FILTERING)) {
-               info("will use the device's hw PID filter.");
+               info("will use the device's hardware PID filter (table count: %d).",d->props.pid_filter_count);
                d->pid_filtering = 1;
                d->max_feed_count = d->props.pid_filter_count;
        } else {
-               info("will pass the complete MPEG2 transport stream to the demuxer.");
+               info("will pass the complete MPEG2 transport stream to the software demuxer.");
                d->pid_filtering = 0;
                d->max_feed_count = 255;
        }
@@ -128,7 +128,9 @@ static struct dvb_usb_device_description * dvb_usb_find_device(struct usb_device
 /*
  * USB
  */
-int dvb_usb_device_init(struct usb_interface *intf, struct dvb_usb_properties *props, struct module *owner)
+
+int dvb_usb_device_init(struct usb_interface *intf, struct dvb_usb_properties
+               *props, struct module *owner,struct dvb_usb_device **du)
 {
        struct usb_device *udev = interface_to_usbdev(intf);
        struct dvb_usb_device *d = NULL;
@@ -170,6 +172,9 @@ int dvb_usb_device_init(struct usb_interface *intf, struct dvb_usb_properties *p
 
                usb_set_intfdata(intf, d);
 
+               if (du != NULL)
+                       *du = d;
+
                ret = dvb_usb_init(d);
        }
 
@@ -196,19 +201,6 @@ void dvb_usb_device_exit(struct usb_interface *intf)
 }
 EXPORT_SYMBOL(dvb_usb_device_exit);
 
-/* module stuff */
-static int __init dvb_usb_module_init(void)
-{
-       return 0;
-}
-
-static void __exit dvb_usb_module_exit(void)
-{
-}
-
-module_init (dvb_usb_module_init);
-module_exit (dvb_usb_module_exit);
-
 MODULE_VERSION("0.3");
 MODULE_AUTHOR("Patrick Boettcher <patrick.boettcher@desy.de>");
 MODULE_DESCRIPTION("A library module containing commonly used USB and DVB function USB DVB devices");