Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / staging / ozwpan / ozmain.c
1 /* -----------------------------------------------------------------------------
2  * Copyright (c) 2011 Ozmo Inc
3  * Released under the GNU General Public License Version 2 (GPLv2).
4  * -----------------------------------------------------------------------------
5  */
6
7 #include <linux/init.h>
8 #include <linux/module.h>
9 #include <linux/timer.h>
10 #include <linux/sched.h>
11 #include <linux/netdevice.h>
12 #include <linux/errno.h>
13 #include <linux/ieee80211.h>
14 #include "ozdbg.h"
15 #include "ozpd.h"
16 #include "ozproto.h"
17 #include "ozcdev.h"
18
19 unsigned int oz_dbg_mask = OZ_DEFAULT_DBG_MASK;
20
21 /*
22  * The name of the 802.11 mac device. Empty string is the default value but a
23  * value can be supplied as a parameter to the module. An empty string means
24  * bind to nothing. '*' means bind to all netcards - this includes non-802.11
25  * netcards. Bindings can be added later using an IOCTL.
26  */
27 static char *g_net_dev = "";
28 module_param(g_net_dev, charp, S_IRUGO);
29 MODULE_PARM_DESC(g_net_dev, "The device(s) to bind to; "
30         "'*' means all, '' (empty string; default) means none.");
31
32 /*
33  * Context: process
34  */
35 static int __init ozwpan_init(void)
36 {
37         int err;
38
39         err = oz_cdev_register();
40         if (err)
41                 return err;
42         err = oz_protocol_init(g_net_dev);
43         if (err)
44                 goto err_protocol;
45         oz_app_enable(OZ_APPID_USB, 1);
46         oz_apps_init();
47         return 0;
48
49 err_protocol:
50         oz_cdev_deregister();
51         return err;
52 }
53
54 /*
55  * Context: process
56  */
57 static void __exit ozwpan_exit(void)
58 {
59         oz_protocol_term();
60         oz_apps_term();
61         oz_cdev_deregister();
62 }
63
64 module_init(ozwpan_init);
65 module_exit(ozwpan_exit);
66
67 MODULE_AUTHOR("Chris Kelly");
68 MODULE_DESCRIPTION("Ozmo Devices USB over WiFi hcd driver");
69 MODULE_VERSION("1.0.13");
70 MODULE_LICENSE("GPL");
71