diff options
Diffstat (limited to 'at76c505-rfmd2958.c')
-rw-r--r-- | at76c505-rfmd2958.c | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/at76c505-rfmd2958.c b/at76c505-rfmd2958.c new file mode 100644 index 0000000..7ace069 --- /dev/null +++ b/at76c505-rfmd2958.c @@ -0,0 +1,74 @@ +/* -*- linux-c -*- */ +/* + * at76c505-rfmd2958.c: + * + * Driver for at76c505-based devices based on the Atmel "Fast-Vnet" reference + * design using RFMD radio chips + * This file is used for the AT76C505 with RFMD 2958 radio. + * + * Copyright (c) 2002 - 2003 Oliver Kurth <oku@masqmail.cx> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * + * This driver is derived from usb-skeleton.c + * + * This driver contains code specific to Atmel AT76C505 (USB wireless 802.11) + * devices which use radio chips from RF Micro Devices (RFMD). Almost + * all of the actual driver is handled by the generic at76c503.c module, this + * file mostly just deals with the initial probes and downloading the correct + * firmware to the device before handing it off to at76c503. + */ + +#include <linux/config.h> +#include <linux/module.h> +#include <linux/usb.h> +#include <linux/init.h> +#include <linux/firmware.h> + +#include "at76c503.h" + +/* Include firmware data definition: a dummy or a statically compiled-in fw */ +#ifdef CONFIG_AT76C503_FIRMWARE_DOWNLOAD +# include "fw-empty.h" +#else +# include "fw-pkg-505-rfmd2958-1.101.0-86.h" +#endif + +/* Version Information */ + +#define DRIVER_NAME "at76c505-rfmd2958" +#define DRIVER_AUTHOR \ +"Oliver Kurth <oku@masqmail.cx>, Joerg Albert <joerg.albert@gmx.de>, Alex <alex@foogod.com>" +#define DRIVER_DESC "Atmel at76c505 (RFMD 2958) Wireless LAN Driver" + +/* firmware name to load if above include file contains empty fw only */ +#define FW_NAME DRIVER_NAME "-fw" + +#define BOARDTYPE BOARDTYPE_R505 + +/* USB Device IDs supported by this driver */ + +#define VENDOR_ID_ATMEL 0x03eb +#define PRODUCT_ID_ATMEL_505R2958 0x7613 /* Generic AT76C505/RFMD device */ +#define VENDOR_ID_CNET 0x1371 +#define PRODUCT_ID_CNET_CNUSB611G 0x0013 /* CNet CNUSB 611G */ +#define PRODUCT_ID_FL_WL240U 0x0014 /* Fiberline WL-240U with the + CNet vendor id */ +#define VENDOR_ID_LINKSYS 0x1915 +#define PRODUCT_ID_LINKSYS_WUSB11V28 0x2233 /* Linksys WUSB11 v2.8 */ + +static struct usb_device_id dev_table[] = { + { USB_DEVICE(VENDOR_ID_ATMEL, PRODUCT_ID_ATMEL_505R2958 ) }, + { USB_DEVICE(VENDOR_ID_CNET, PRODUCT_ID_FL_WL240U ) }, + { USB_DEVICE(VENDOR_ID_CNET, PRODUCT_ID_CNET_CNUSB611G ) }, + { USB_DEVICE(VENDOR_ID_LINKSYS, PRODUCT_ID_LINKSYS_WUSB11V28 ) }, + { } +}; + +/* jal: not really good style to include a .c file, but all but the above + is constant in the at76c50[35]-*.c files ... */ +#include "at76c503-fw_skel.c" |