diff options
author | H Hartley Sweeten <hsweeten@visionengravers.com> | 2013-02-06 00:23:40 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-02-06 02:07:11 (GMT) |
commit | 55ab4f641a3bfbdb7c59b80e194c7242234bbb1f (patch) | |
tree | 62ec947f7c747e8f4ea99290e434a4037015cdef | |
parent | 29d6dd3310641f7dc0dbd9b55f651eb9846f2aa6 (diff) | |
download | linux-fsl-qoriq-55ab4f641a3bfbdb7c59b80e194c7242234bbb1f.tar.xz |
staging: comedi: comedi_usb: allow comedi usb drivers to pass a 'context'
Allow the comedi usb drivers to pass a 'context' from their (*probe)
functions to the comedi core's comedi_usb_auto_config(). This 'context'
is then passed to comedi_auto_config() and then to the comedi_driver's
(*auto_attach).
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/staging/comedi/comedi_usb.c | 6 | ||||
-rw-r--r-- | drivers/staging/comedi/comedidev.h | 3 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/usbdux.c | 2 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/usbduxfast.c | 2 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/usbduxsigma.c | 2 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/vmk80xx.c | 2 |
6 files changed, 10 insertions, 7 deletions
diff --git a/drivers/staging/comedi/comedi_usb.c b/drivers/staging/comedi/comedi_usb.c index cd6abba..9d9716a 100644 --- a/drivers/staging/comedi/comedi_usb.c +++ b/drivers/staging/comedi/comedi_usb.c @@ -38,13 +38,15 @@ EXPORT_SYMBOL_GPL(comedi_to_usb_interface); * comedi_usb_auto_config() - Configure/probe a comedi USB driver. * @intf: usb_interface struct * @driver: comedi_driver struct + * @context: driver specific data, passed to comedi_auto_config() * * Typically called from the usb_driver (*probe) function. */ int comedi_usb_auto_config(struct usb_interface *intf, - struct comedi_driver *driver) + struct comedi_driver *driver, + unsigned long context) { - return comedi_auto_config(&intf->dev, driver, 0); + return comedi_auto_config(&intf->dev, driver, context); } EXPORT_SYMBOL_GPL(comedi_usb_auto_config); diff --git a/drivers/staging/comedi/comedidev.h b/drivers/staging/comedi/comedidev.h index 4836fe6..d921cd7 100644 --- a/drivers/staging/comedi/comedidev.h +++ b/drivers/staging/comedi/comedidev.h @@ -476,7 +476,8 @@ struct usb_interface; struct usb_interface *comedi_to_usb_interface(struct comedi_device *); -int comedi_usb_auto_config(struct usb_interface *, struct comedi_driver *); +int comedi_usb_auto_config(struct usb_interface *, struct comedi_driver *, + unsigned long context); void comedi_usb_auto_unconfig(struct usb_interface *); int comedi_usb_driver_register(struct comedi_driver *, struct usb_driver *); diff --git a/drivers/staging/comedi/drivers/usbdux.c b/drivers/staging/comedi/drivers/usbdux.c index 17b45eb..7c2f856 100644 --- a/drivers/staging/comedi/drivers/usbdux.c +++ b/drivers/staging/comedi/drivers/usbdux.c @@ -2388,7 +2388,7 @@ static void usbdux_firmware_request_complete_handler(const struct firmware *fw, "Could not upload firmware (err=%d)\n", ret); goto out; } - comedi_usb_auto_config(uinterf, &usbdux_driver); + comedi_usb_auto_config(uinterf, &usbdux_driver, 0); out: release_firmware(fw); } diff --git a/drivers/staging/comedi/drivers/usbduxfast.c b/drivers/staging/comedi/drivers/usbduxfast.c index 4e19f61..0f6187f 100644 --- a/drivers/staging/comedi/drivers/usbduxfast.c +++ b/drivers/staging/comedi/drivers/usbduxfast.c @@ -1490,7 +1490,7 @@ static void usbduxfast_firmware_request_complete_handler(const struct firmware goto out; } - comedi_usb_auto_config(uinterf, &usbduxfast_driver); + comedi_usb_auto_config(uinterf, &usbduxfast_driver, 0); out: release_firmware(fw); } diff --git a/drivers/staging/comedi/drivers/usbduxsigma.c b/drivers/staging/comedi/drivers/usbduxsigma.c index cdd279b..dc6b017 100644 --- a/drivers/staging/comedi/drivers/usbduxsigma.c +++ b/drivers/staging/comedi/drivers/usbduxsigma.c @@ -2374,7 +2374,7 @@ static void usbdux_firmware_request_complete_handler(const struct firmware *fw, "Could not upload firmware (err=%d)\n", ret); goto out; } - comedi_usb_auto_config(uinterf, &usbduxsigma_driver); + comedi_usb_auto_config(uinterf, &usbduxsigma_driver, 0); out: release_firmware(fw); } diff --git a/drivers/staging/comedi/drivers/vmk80xx.c b/drivers/staging/comedi/drivers/vmk80xx.c index 00a115d..c20202c 100644 --- a/drivers/staging/comedi/drivers/vmk80xx.c +++ b/drivers/staging/comedi/drivers/vmk80xx.c @@ -1401,7 +1401,7 @@ static int vmk80xx_usb_probe(struct usb_interface *intf, mutex_unlock(&glb_mutex); - comedi_usb_auto_config(intf, &vmk80xx_driver); + comedi_usb_auto_config(intf, &vmk80xx_driver, id->driver_info); return 0; |