diff options
Diffstat (limited to 'vnet503-rfmd.c')
-rw-r--r-- | vnet503-rfmd.c | 74 |
1 files changed, 40 insertions, 34 deletions
diff --git a/vnet503-rfmd.c b/vnet503-rfmd.c index e9deea2..553b6e7 100644 --- a/vnet503-rfmd.c +++ b/vnet503-rfmd.c @@ -36,6 +36,8 @@ #include "at76c503.h" #include "usbdfu.h" +/* Include firmware data definition */ + #include "fw-rfmd-0.90.2-140.h" /* Version Information */ @@ -44,6 +46,43 @@ #define DRIVER_AUTHOR "Oliver Kurth <oku@masqmail.cx>" #define DRIVER_DESC "Atmel at76c503 (RFMD) Wireless LAN Driver" +/* USB Device IDs supported by this driver */ + +#define VENDOR_ID_ATMEL 0x03eb +#define PRODUCT_ID_ATMEL_503R 0x7605 /* Generic AT76C503/RFMD device */ + +#define VENDOR_ID_BELKIN 0x0d5c +#define PRODUCT_ID_BELKIN_F5D6050 0xa002 /* Belkin F5D6050 / SMC 2662W v2 */ + +#define VENDOR_ID_DYNALINK 0x069a +#define PRODUCT_ID_DYNALINK_WLL013_R 0x0321 /* Dynalink/Askey WLL013 (rfmd) */ + +#define VENDOR_ID_LINKSYS 0x077b +#define PRODUCT_ID_LINKSYS_WUSB11_V26 0x2219 /* Linksys WUSB11 v2.6 */ + +#define VENDOR_ID_NETGEAR 0x0864 +#define PRODUCT_ID_NETGEAR_MA101B 0x4102 /* Netgear MA 101 Rev. B */ + +static struct usb_device_id vnet_table[] = { + { USB_DEVICE(VENDOR_ID_ATMEL, PRODUCT_ID_ATMEL_503R ) }, + { USB_DEVICE(VENDOR_ID_BELKIN, PRODUCT_ID_BELKIN_F5D6050 ) }, + { USB_DEVICE(VENDOR_ID_DYNALINK, PRODUCT_ID_DYNALINK_WLL013_R ) }, + { USB_DEVICE(VENDOR_ID_LINKSYS, PRODUCT_ID_LINKSYS_WUSB11_V26) }, + { USB_DEVICE(VENDOR_ID_NETGEAR, PRODUCT_ID_NETGEAR_MA101B ) }, + { } +}; + +MODULE_DEVICE_TABLE (usb, vnet_table); + +/* firmware / config variables */ + +static unsigned char fw_internal[] = FW_503RFMD_INTERNAL; +static unsigned char fw_external[] = FW_503RFMD_EXTERNAL; + +static int board_type = BOARDTYPE_RFMD; + +/*---------------------------------------------------------------------------*/ + /* Module paramaters */ #ifdef CONFIG_USB_DEBUG @@ -59,34 +98,6 @@ MODULE_PARM(eth_name, "c" __MODULE_STRING(IFNAMSIZ)); MODULE_PARM_DESC(eth_name, "network device name (default is eth%d)"); -/* USB Device IDs supported by this driver */ - -#define VENDOR_ID_ATMEL 0x03eb -#define PRODUCT_ID_ATMEL_503 0x7605 /* Generic AT76C503 device */ - -#define VENDOR_ID_BELKIN 0x0d5c -#define PRODUCT_ID_BELKIN_F5D6050 0xa002 /* Belkin F5D6050 / SMC 2662W v2 */ - -#define VENDOR_ID_DYNALINK 0x069a -#define PRODUCT_ID_DYNALINK_WLL013 0x0321 /* Dynalink/Askey WLL013 */ - -#define VENDOR_ID_LINKSYS 0x077b -#define PRODUCT_ID_LINKSYS_WUSB11 0x2219 /* Linksys WUSB11 v2.6 */ - -#define VENDOR_ID_NETGEAR 0x0864 -#define PRODUCT_ID_NETGEAR_MA101B 0x4102 /* Netgear MA 101 Rev. B */ - -static struct usb_device_id vnet_table[] = { - { USB_DEVICE(VENDOR_ID_ATMEL, PRODUCT_ID_ATMEL_503 ) }, - { USB_DEVICE(VENDOR_ID_BELKIN, PRODUCT_ID_BELKIN_F5D6050 ) }, - { USB_DEVICE(VENDOR_ID_DYNALINK, PRODUCT_ID_DYNALINK_WLL013) }, - { USB_DEVICE(VENDOR_ID_LINKSYS, PRODUCT_ID_LINKSYS_WUSB11 ) }, - { USB_DEVICE(VENDOR_ID_NETGEAR, PRODUCT_ID_NETGEAR_MA101B ) }, - { } -}; - -MODULE_DEVICE_TABLE (usb, vnet_table); - /* local function prototypes */ static void * vnet_probe(struct usb_device *dev, unsigned int ifnum, @@ -94,11 +105,6 @@ static void * vnet_probe(struct usb_device *dev, unsigned int ifnum, static void vnet_disconnect(struct usb_device *dev, void *ptr); static int vnet_usbdfu_post(struct usb_device *udev); -/* firmware variables */ - -static unsigned char fw_internal[] = FW_503RFMD_INTERNAL; -static unsigned char fw_external[] = FW_503RFMD_EXTERNAL; - /* structure for registering this driver with the usb subsystem */ static struct usb_driver vnet_driver = { @@ -181,7 +187,7 @@ static void *vnet_probe(struct usb_device *udev, unsigned int ifnum, const struc goto error; } - dev = at76c503_new_device(udev, eth_name); + dev = at76c503_new_device(udev, board_type, eth_name); if (!dev) { dbg("at76c503_new_device returned NULL"); goto error; |