summaryrefslogtreecommitdiff
path: root/vnet503-rfmd.c
diff options
context:
space:
mode:
Diffstat (limited to 'vnet503-rfmd.c')
-rw-r--r--vnet503-rfmd.c74
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;