From 1470f2860a4b1e0d492de5ec7274455c46d5cee6 Mon Sep 17 00:00:00 2001 From: Ulrich Kunitz Date: Wed, 13 Sep 2006 02:42:12 +0100 Subject: [PATCH] --- yaml --- r: 36531 b: refs/heads/master c: bc5f06a8aaa29a79c9da2cedb5b9779b8081289c h: refs/heads/master i: 36529: 1d0dd161f54b1e1bd549bc433b291ff54f57b448 36527: fd7e252e40d78729383289b0592b0b84248704f4 v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/zd1211rw/zd_usb.c | 10 ++++++++++ trunk/drivers/net/wireless/zd1211rw/zd_usb.h | 2 ++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 212540ceeecc..6f0a7b5ef873 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 44976c66bb2b44e4cf29a259a0cd6adadf8eb031 +refs/heads/master: bc5f06a8aaa29a79c9da2cedb5b9779b8081289c diff --git a/trunk/drivers/net/wireless/zd1211rw/zd_usb.c b/trunk/drivers/net/wireless/zd1211rw/zd_usb.c index 31027e52b04b..5c265ad0485a 100644 --- a/trunk/drivers/net/wireless/zd1211rw/zd_usb.c +++ b/trunk/drivers/net/wireless/zd1211rw/zd_usb.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include "zd_def.h" @@ -1112,12 +1113,20 @@ static struct usb_driver driver = { .disconnect = disconnect, }; +struct workqueue_struct *zd_workqueue; + static int __init usb_init(void) { int r; pr_debug("usb_init()\n"); + zd_workqueue = create_singlethread_workqueue(driver.name); + if (zd_workqueue == NULL) { + printk(KERN_ERR "%s: couldn't create workqueue\n", driver.name); + return -ENOMEM; + } + r = usb_register(&driver); if (r) { printk(KERN_ERR "usb_register() failed. Error number %d\n", r); @@ -1132,6 +1141,7 @@ static void __exit usb_exit(void) { pr_debug("usb_exit()\n"); usb_deregister(&driver); + destroy_workqueue(zd_workqueue); } module_init(usb_init); diff --git a/trunk/drivers/net/wireless/zd1211rw/zd_usb.h b/trunk/drivers/net/wireless/zd1211rw/zd_usb.h index ded39de5f72d..e81a2d3cfffd 100644 --- a/trunk/drivers/net/wireless/zd1211rw/zd_usb.h +++ b/trunk/drivers/net/wireless/zd1211rw/zd_usb.h @@ -238,4 +238,6 @@ int zd_usb_iowrite16v(struct zd_usb *usb, const struct zd_ioreq16 *ioreqs, int zd_usb_rfwrite(struct zd_usb *usb, u32 value, u8 bits); +extern struct workqueue_struct *zd_workqueue; + #endif /* _ZD_USB_H */