From owner-freebsd-wireless@FreeBSD.ORG Sat Jun 11 02:02:26 2011 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9E2FD106566B for ; Sat, 11 Jun 2011 02:02:26 +0000 (UTC) (envelope-from sendtomatt@gmail.com) Received: from mail-pz0-f54.google.com (mail-pz0-f54.google.com [209.85.210.54]) by mx1.freebsd.org (Postfix) with ESMTP id 6B74D8FC0C for ; Sat, 11 Jun 2011 02:02:26 +0000 (UTC) Received: by pzk27 with SMTP id 27so1904975pzk.13 for ; Fri, 10 Jun 2011 19:02:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:message-id:date:from:user-agent:mime-version:to :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=du3GNGb5cKleXV0cdknjbVKmuSfDpko9Grc0BmahJ9E=; b=HUdbvtY29Byx33pzPpZ2Th5j/h9LQDD7dF/WLltAucgJ4B7ZC5Dtsz6F0GTB/Y+QFV B/StCID6HNIddCXW/GJdKhg2MMfeIACqI8LnR9JeJpB/yDI1obsOh3Nc7WiNFpZc8aMh Skb+tIPthnigOlDj5ZheBR1m9Mq8JcQLTVgDo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; b=NZbGPoyCIaaV1PIRpDo/ZadkvIS+lHPdH2sTu3QBF+dQuJyUJmJpEsTAgjKOfoBqqE p8OR24ocWxtbjP63YKnO+Jn7iGn706HTC+nW0+1g8H/SbwCt6YleaY7aMdU7fjoK48il fJlhv7jVEOTxqZ3yMT2DzRfv8bxXZeHUEV198= Received: by 10.68.22.35 with SMTP id a3mr1176967pbf.477.1307757745897; Fri, 10 Jun 2011 19:02:25 -0700 (PDT) Received: from sidhe.local ([75.111.37.204]) by mx.google.com with ESMTPS id o2sm2761748pbj.65.2011.06.10.19.02.23 (version=SSLv3 cipher=OTHER); Fri, 10 Jun 2011 19:02:24 -0700 (PDT) Message-ID: <4DF2CCAA.2050500@gmail.com> Date: Fri, 10 Jun 2011 19:02:18 -0700 From: Matt User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.17) Gecko/20110502 Thunderbird/3.1.10 MIME-Version: 1.0 To: freebsd-wireless@freebsd.org References: <4DF12E4A.5020906@gmail.com> <201106100913.42480.bschmidt@freebsd.org> <4DF274F6.6050905@gmail.com> In-Reply-To: <4DF274F6.6050905@gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: problem with urtw X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 11 Jun 2011 02:02:26 -0000 On 06/10/11 12:48, Jim Bryant wrote: > the patch didn't get it. > > ugen3.2: at usbus3 > urtw0: 2> on usbus3 > urtw0: could not allocate USB transfers, err=USB_ERR_NO_PIPE > device_attach: urtw0 attach returned 6 > urtw0: 2> on usbus3 > urtw0: could not allocate USB transfers, err=USB_ERR_NO_PIPE > device_attach: urtw0 attach returned 6 > ugen3.2: at usbus3 (disconnected) > > [the last line was me unplugging it] > > this is with if_urtw.c patched to change L to B as you supplied. > > I'm here for testing.. any more ideas? If anyone wants to play > themselves, look on ebay for WiFiSky 1500mW B/G with 6dBi antenna. It > seems that half of Hong Kong is selling these for under $20 USD. > > Bernhard Schmidt wrote: >> On Thursday, June 09, 2011 22:34:18 Jim Bryant wrote: >>> I just bought one of those chinese (apparently the same unit >>> relabeled and being sold by multiple companies) realtek RTL8187B >>> wifi units. The price is right. >>> >>> The label name on this one is WiFySky 1500mW. >>> >>> other than the fact that the case it is enclosed in is really >>> cheesy, there is a more immediate problem with this. >>> >>> the current urtw driver returns a 6. >>> >>> here we go: >>> >>> on insert: >>> >>> ugen3.2: at usbus3 >>> >>> after kldload if_urtw.ko: >>> >>> urtw0: >> 2> on usbus3 >>> urtw0: could not allocate USB transfers, err=USB_ERR_NO_PIPE >>> device_attach: urtw0 attach returned 6 >>> urtw0: >> 2> on usbus3 >>> urtw0: could not allocate USB transfers, err=USB_ERR_NO_PIPE >>> device_attach: urtw0 attach returned 6 >>> urtw0: >> 2> on usbus3 >>> urtw0: could not allocate USB transfers, err=USB_ERR_NO_PIPE >>> device_attach: urtw0 attach returned 6 >>> urtw0: >> 2> on usbus3 >>> urtw0: could not allocate USB transfers, err=USB_ERR_NO_PIPE >>> device_attach: urtw0 attach returned 6 >>> >>> 3:28:35pm argus(48): usbconfig -u 3 -a 2 dump_device_desc >>> ugen3.2: at usbus3, cfg=0 md=HOST >>> spd=HIGH (480Mbps) pwr=ON >>> >>> bLength = 0x0012 >>> bDescriptorType = 0x0001 >>> bcdUSB = 0x0200 >>> bDeviceClass = 0x0000 >>> bDeviceSubClass = 0x0000 >>> bDeviceProtocol = 0x0000 >>> bMaxPacketSize0 = 0x0040 >>> idVendor = 0x0bda >>> idProduct = 0x8187 >>> bcdDevice = 0x0200 >>> iManufacturer = 0x0001 >>> iProduct = 0x0002 >>> iSerialNumber = 0x0000 >>> bNumConfigurations = 0x0001 >>> >>> 3:28:48pm argus(49): usbconfig -u 3 -a 2 dump_curr_config_desc >>> ugen3.2: at usbus3, cfg=0 md=HOST >>> spd=HIGH (480Mbps) pwr=ON >>> >>> >>> Configuration index 0 >>> >>> bLength = 0x0009 >>> bDescriptorType = 0x0002 >>> wTotalLength = 0x0051 >>> bNumInterfaces = 0x0001 >>> bConfigurationValue = 0x0001 >>> iConfiguration = 0x0004 >>> bmAttributes = 0x0080 >>> bMaxPower = 0x00fa >>> >>> Interface 0 >>> bLength = 0x0009 >>> bDescriptorType = 0x0004 >>> bInterfaceNumber = 0x0000 >>> bAlternateSetting = 0x0000 >>> bNumEndpoints = 0x0009 >>> bInterfaceClass = 0x00ff >>> bInterfaceSubClass = 0x00ff >>> bInterfaceProtocol = 0x00ff >>> iInterface = 0x0002 >>> >>> Endpoint 0 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x0083 >> >> I have no clue what I'm talking about, so, this might be wrong.. >> >> Anyways.. the urtw(4) driver supports two different chips the >> 8187B and 8187L. One difference between those is the number of >> endpoints and its addresses. The 8187L uses 3 endpoints with >> 0x81 as the RX endpoint, the 8187B uses 7 endpoints with 0x83 as >> RX. >> >> % vendor REALTEK 0x0bda Realtek >> % product REALTEK RTL8187 0x8187 RTL8187 Wireless Adapter >> >> Quoting from the driver: >> >> % #define URTW_DEV_B(v,p) \ >> % { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, >> URTW_REV_RTL8187B) } >> % #define URTW_DEV_L(v,p) \ >> % { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, >> URTW_REV_RTL8187L) } >> % .. >> % static const struct usb_device_id urtw_devs[] = { >> % URTW_DEV_L(REALTEK, RTL8187), >> % .. >> % static const struct usb_config >> urtw_8187b_usbconfig[URTW_8187B_N_XFERS] = { >> % [URTW_8187B_BULK_RX] = { >> % .type = UE_BULK, >> % .endpoint = 0x83, >> % .. >> % static const struct usb_config >> urtw_8187l_usbconfig[URTW_8187L_N_XFERS] = { >> % [URTW_8187L_BULK_RX] = { >> % .type = UE_BULK, >> % .endpoint = 0x81, >> >> It occurs to me that yours might actually be a B chip not a L, >> because there is a 0x83 endpoint but none for 0x81. >> >> Wanna give that a shot? >> >> Index: if_urtw.c >> =================================================================== >> --- if_urtw.c (revision 222807) >> +++ if_urtw.c (working copy) >> @@ -112,7 +112,7 @@ static const struct usb_device_id urtw_devs[] = { >> URTW_DEV_L(BELKIN, F5D7050E), >> URTW_DEV_L(LINKSYS4, WUSB54GCV2), >> URTW_DEV_L(NETGEAR, WG111V2), >> - URTW_DEV_L(REALTEK, RTL8187), >> + URTW_DEV_B(REALTEK, RTL8187), >> URTW_DEV_L(SITECOMEU, WL168V1), >> URTW_DEV_L(SURECOM, EP9001G2A), >> { USB_VPI(0x1b75, 0x8187, URTW_REV_RTL8187L) }, >> >> >> >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 1 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x0004 >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 2 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x0005 >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 3 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x0006 >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 4 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x0007 >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 5 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x0089 >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 6 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x000a >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 7 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x000b >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> Endpoint 8 >>> bLength = 0x0007 >>> bDescriptorType = 0x0005 >>> bEndpointAddress = 0x000c >>> bmAttributes = 0x0002 >>> wMaxPacketSize = 0x0200 >>> bInterval = 0x0000 >>> bRefresh = 0x0000 >>> bSynchAddress = 0x0000 >>> >>> If a verbose boot or any other info is needed to get this working, >>> please tell me, and I'll get you the info. >>> >>> I do have to admit, at the price these are going for, they are >>> rather nice, and do reach out and touch a router. Review >>> complaints: heat dissipation. If you buy one, don't operate it in a >>> hot environment. I'd like to see it working in FreeBSD, but I don't >>> have a handle on the wifi driver structure. Linux source code was >>> included on the driver disk. I can email that directly to whomever >>> needs it for comparison. >>> >>> >>> Thanks, >>> >>> Jim, KC5VDJ >>> >>> _______________________________________________ >>> freebsd-stable@freebsd.org mailing list >>> http://lists.freebsd.org/mailman/listinfo/freebsd-stable >>> To unsubscribe, send any mail to >>> "freebsd-stable-unsubscribe@freebsd.org" >> >> -- >> Bernhard >> > _______________________________________________ > freebsd-wireless@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-wireless > To unsubscribe, send any mail to > "freebsd-wireless-unsubscribe@freebsd.org" > The classic engineering question as far as I know is "Did it ever work?" Is any other operating system capable of bringing this device up & connecting to wireless networks etc? China's street market (now on eBay!) is known as the residence of the true spirit of caveat emptor. Matt