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 */ ozwpan_init(void)35static 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 */ ozwpan_exit(void)57static 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 72