em28xx-cards.c (081b945ed74c9bd37da2ee928f9ad281222a6477) em28xx-cards.c (d3829fadc4611e96aa360b8ead5adefdf61f45ea)
1/*
2 em28xx-cards.c - driver for Empia EM2800/EM2820/2840 USB
3 video capture devices
4
5 Copyright (C) 2005 Ludovico Cavedon <cavedon@sssup.it>
6 Markus Rechberger <mrechberger@gmail.com>
7 Mauro Carvalho Chehab <mchehab@infradead.org>
8 Sascha Sommer <saschasommer@freenet.de>

--- 43 unchanged lines hidden (view full) ---

52module_param(disable_ir, int, 0444);
53MODULE_PARM_DESC(disable_ir, "disable infrared remote support");
54
55static unsigned int disable_usb_speed_check;
56module_param(disable_usb_speed_check, int, 0444);
57MODULE_PARM_DESC(disable_usb_speed_check,
58 "override min bandwidth requirement of 480M bps");
59
1/*
2 em28xx-cards.c - driver for Empia EM2800/EM2820/2840 USB
3 video capture devices
4
5 Copyright (C) 2005 Ludovico Cavedon <cavedon@sssup.it>
6 Markus Rechberger <mrechberger@gmail.com>
7 Mauro Carvalho Chehab <mchehab@infradead.org>
8 Sascha Sommer <saschasommer@freenet.de>

--- 43 unchanged lines hidden (view full) ---

52module_param(disable_ir, int, 0444);
53MODULE_PARM_DESC(disable_ir, "disable infrared remote support");
54
55static unsigned int disable_usb_speed_check;
56module_param(disable_usb_speed_check, int, 0444);
57MODULE_PARM_DESC(disable_usb_speed_check,
58 "override min bandwidth requirement of 480M bps");
59
60static unsigned int card[] = {[0 ... (EM28XX_MAXBOARDS - 1)] = UNSET };
60static unsigned int card[] = {[0 ... (EM28XX_MAXBOARDS - 1)] = -1U };
61module_param_array(card, int, NULL, 0444);
62MODULE_PARM_DESC(card, "card type");
63
64static int usb_xfer_mode = -1;
65module_param(usb_xfer_mode, int, 0444);
66MODULE_PARM_DESC(usb_xfer_mode,
67 "USB transfer mode for frame data (-1 = auto, 0 = prefer isoc, 1 = prefer bulk)");
68

--- 2891 unchanged lines hidden (view full) ---

2960 int minor)
2961{
2962 struct v4l2_ctrl_handler *hdl = &dev->ctrl_handler;
2963 int retval;
2964 static const char *default_chip_name = "em28xx";
2965 const char *chip_name = default_chip_name;
2966
2967 dev->udev = udev;
61module_param_array(card, int, NULL, 0444);
62MODULE_PARM_DESC(card, "card type");
63
64static int usb_xfer_mode = -1;
65module_param(usb_xfer_mode, int, 0444);
66MODULE_PARM_DESC(usb_xfer_mode,
67 "USB transfer mode for frame data (-1 = auto, 0 = prefer isoc, 1 = prefer bulk)");
68

--- 2891 unchanged lines hidden (view full) ---

2960 int minor)
2961{
2962 struct v4l2_ctrl_handler *hdl = &dev->ctrl_handler;
2963 int retval;
2964 static const char *default_chip_name = "em28xx";
2965 const char *chip_name = default_chip_name;
2966
2967 dev->udev = udev;
2968 mutex_init(&dev->vb_queue_lock);
2969 mutex_init(&dev->vb_vbi_queue_lock);
2968 mutex_init(&dev->ctrl_urb_lock);
2969 spin_lock_init(&dev->slock);
2970
2971 dev->em28xx_write_regs = em28xx_write_regs;
2972 dev->em28xx_read_reg = em28xx_read_reg;
2973 dev->em28xx_read_reg_req_len = em28xx_read_reg_req_len;
2974 dev->em28xx_write_regs_req = em28xx_write_regs_req;
2975 dev->em28xx_read_reg_req = em28xx_read_reg_req;

--- 430 unchanged lines hidden (view full) ---

3406 dev->num_alt = interface->num_altsetting;
3407
3408 if ((unsigned)card[nr] < em28xx_bcount)
3409 dev->model = card[nr];
3410
3411 /* save our data pointer in this interface device */
3412 usb_set_intfdata(interface, dev);
3413
2970 mutex_init(&dev->ctrl_urb_lock);
2971 spin_lock_init(&dev->slock);
2972
2973 dev->em28xx_write_regs = em28xx_write_regs;
2974 dev->em28xx_read_reg = em28xx_read_reg;
2975 dev->em28xx_read_reg_req_len = em28xx_read_reg_req_len;
2976 dev->em28xx_write_regs_req = em28xx_write_regs_req;
2977 dev->em28xx_read_reg_req = em28xx_read_reg_req;

--- 430 unchanged lines hidden (view full) ---

3408 dev->num_alt = interface->num_altsetting;
3409
3410 if ((unsigned)card[nr] < em28xx_bcount)
3411 dev->model = card[nr];
3412
3413 /* save our data pointer in this interface device */
3414 usb_set_intfdata(interface, dev);
3415
3416 /* initialize videobuf2 stuff */
3417 em28xx_vb2_setup(dev);
3418
3414 /* allocate device struct */
3415 mutex_init(&dev->lock);
3416 mutex_lock(&dev->lock);
3417 retval = em28xx_init_dev(dev, udev, interface, nr);
3418 if (retval) {
3419 goto unlock_and_free;
3420 }
3421

--- 135 unchanged lines hidden ---
3419 /* allocate device struct */
3420 mutex_init(&dev->lock);
3421 mutex_lock(&dev->lock);
3422 retval = em28xx_init_dev(dev, udev, interface, nr);
3423 if (retval) {
3424 goto unlock_and_free;
3425 }
3426

--- 135 unchanged lines hidden ---