[PATCH 6/6] comedi vmk80xx: support comedi auto-configuration

From: J. Ali Harlow
Date: Wed May 18 2011 - 14:37:39 EST


Add support for automatically associating a vmk8055 device with a
comedi device (previously the user had to use comedi_num_legacy_minors
to reserve device slots and then associate them with vmk8055 devices
using comedi_config).
Tested on multiple K8055s, but not on K8061s.

Signed-off-by: J. Ali Harlow <ali@xxxxxxxxxxxxxxx>
---
drivers/staging/comedi/drivers/vmk80xx.c | 16 ++++++++++++++--
1 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/comedi/drivers/vmk80xx.c b/drivers/staging/comedi/drivers/vmk80xx.c
index 04c085f..3d13ca6 100644
--- a/drivers/staging/comedi/drivers/vmk80xx.c
+++ b/drivers/staging/comedi/drivers/vmk80xx.c
@@ -64,6 +64,8 @@ Changelog:

#include "../comedidev.h"

+#define BOARDNAME "vmk80xx"
+
MODULE_AUTHOR("Manuel Gebele <forensixs@xxxxxx>");
MODULE_DESCRIPTION("Velleman USB Board Low-Level Driver");
MODULE_SUPPORTED_DEVICE("K8055/K8061 aka VM110/VM140");
@@ -1480,6 +1482,8 @@ static int vmk80xx_probe(struct usb_interface *intf,

mutex_unlock(&glb_mutex);

+ comedi_usb_auto_config(dev->udev, BOARDNAME);
+
return 0;
error:
mutex_unlock(&glb_mutex);
@@ -1496,6 +1500,8 @@ static void vmk80xx_disconnect(struct usb_interface *intf)
if (!dev)
return;

+ comedi_usb_auto_unconfig(dev->udev);
+
mutex_lock(&glb_mutex);
down(&dev->limit_sem);

@@ -1533,10 +1539,16 @@ static struct comedi_driver driver_vmk80xx = {

static int __init vmk80xx_init(void)
{
+ int retval;
+
printk(KERN_INFO "vmk80xx: version 0.8.01 "
"Manuel Gebele <forensixs@xxxxxx>\n");
- usb_register(&vmk80xx_driver);
- return comedi_driver_register(&driver_vmk80xx);
+
+ retval = comedi_driver_register(&driver_vmk80xx);
+ if (retval < 0)
+ return retval;
+
+ return usb_register(&vmk80xx_driver);
}

static void __exit vmk80xx_exit(void)
--
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/