From owner-freebsd-usb@FreeBSD.ORG Mon Sep 27 11:40:01 2010 Return-Path: Delivered-To: freebsd-usb@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 570B7106564A for ; Mon, 27 Sep 2010 11:40:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 3400B8FC18 for ; Mon, 27 Sep 2010 11:40:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id o8RBe1VY059091 for ; Mon, 27 Sep 2010 11:40:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id o8RBe106059090; Mon, 27 Sep 2010 11:40:01 GMT (envelope-from gnats) Resent-Date: Mon, 27 Sep 2010 11:40:01 GMT Resent-Message-Id: <201009271140.o8RBe106059090@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-usb@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Anil Gulati Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BC4E2106566C for ; Mon, 27 Sep 2010 11:36:42 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id 916308FC1C for ; Mon, 27 Sep 2010 11:36:42 +0000 (UTC) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.3/8.14.3) with ESMTP id o8RBaggd057613 for ; Mon, 27 Sep 2010 11:36:42 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.3/8.14.3/Submit) id o8RBag1N057612; Mon, 27 Sep 2010 11:36:42 GMT (envelope-from nobody) Message-Id: <201009271136.o8RBag1N057612@www.freebsd.org> Date: Mon, 27 Sep 2010 11:36:42 GMT From: Anil Gulati To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: usb/150989: [patch] Add Netgear WG111V2_2 support to upgt(4) X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Sep 2010 11:40:01 -0000 >Number: 150989 >Category: usb >Synopsis: [patch] Add Netgear WG111V2_2 support to upgt(4) >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-usb >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Mon Sep 27 11:40:00 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Anil Gulati >Release: FreeBSD 8.1 CURRENT >Organization: Anil Gulati >Environment: FreeBSD engine.local 8.1-BETA1 FreeBSD 8.1-BETA1 #0: Thu Aug 26 22:45:23 EST 2010 root@engine.local:/usr/obj/usr/src/sys/VESAKERN i386 >Description: Some Netgear USB wireless adapter devices are labelled WG111V2 externally but are actually WG111V2_2 devices as listed in /sys/dev/usb/usbdevs. These devices are not recognised by FreeBSD 8.1 since they are not listed as supported. Booting with this USB device inserted will result in the device being recognised as a default USB device, not an actual wireless adapter. >How-To-Repeat: Plug in a Netgear WG111V2_2 USB wireless adapter and boot. Not all devices labelled WG111V2 are actually WG111V2_2. WG111V2_2 devices will not be recognised as a network device but will use the default USB device. My device of this type is externally labelled WG111V2 but is revealed as WG111V2_2 by the usbconfig output: $ usbconfig -u 4 -a 2 dump_device_desc ugen4.2: at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x0846 idProduct = 0x4240 bcdDevice = 0x1020 iManufacturer = 0x0001 iProduct = 0x0002 iSerialNumber = 0x0003 <3887-0000> bNumConfigurations = 0x0001 >Fix: WG111V2_2 devices use the GW3887 chipset and therefore need the PrismGT driver upgt rather than the urtw driver used for all other Netgear WG111 devices: > cat /sys/dev/usb/usbdevs | grep WG111V2_2 product NETGEAR WG111V2_2 0x4240 PrismGT USB 2.0 WLAN WG111V2_2 is not listed as a device supported by upgt in /sys/dev/usb/wlan/if_upgt.c, so it needs to be added: UPGT_DEV(NETGEAR, WG111V2_2), Attached patch provides this update. Thread demonstrating this as it was worked out: http://www.daemonforums.org/showthread.php?t=5108 Patch attached with submission follows: --- /sys/dev/usb/wlan/if_upgt.c.orig 2009-08-03 00:00:00.000000000 +1000 +++ /sys/dev/usb/wlan/if_upgt.c 2010-09-22 00:00:00.000000000 +1000 @@ -182,6 +182,7 @@ UPGT_DEV(FSC, E5400), UPGT_DEV(GLOBESPAN, PRISM_GT_1), UPGT_DEV(GLOBESPAN, PRISM_GT_2), + UPGT_DEV(NETGEAR, WG111V2_2), UPGT_DEV(INTERSIL, PRISM_GT), UPGT_DEV(SMC, 2862WG), UPGT_DEV(WISTRONNEWEB, UR045G), >Release-Note: >Audit-Trail: >Unformatted: