Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Feb 2011 10:11:03 +0100
From:      Bernhard Schmidt <bschmidt@freebsd.org>
To:        joseph <icke@2egos.de>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: urtw0: could not allocate USB transfers
Message-ID:  <201102251011.03839.bschmidt@freebsd.org>
In-Reply-To: <4D66C4CB.1060207@2egos.de>
References:  <4D66C4CB.1060207@2egos.de>

next in thread | previous in thread | raw e-mail | index | archive | help
--Boundary-00=_nI3ZNUq3EhRKLCq
Content-Type: Text/Plain;
  charset="iso-8859-15"
Content-Transfer-Encoding: 7bit

On Thursday, February 24, 2011 21:51:23 joseph wrote:
> Hello,
> 
> i decided to get my laptop wlan via usb because my internal device isn't 
> supported yet.
> The usb device is a logilink WL0006 unit its vendorid is 0x0bda and the 
> productid says 0x8187.
> My search results say that this device depends on a RTL8187 chipset.
> I tried both, load the kernel module at boot time and compile kernel 
> withe urtw, but i get the same output at dmesg
> 
> device_attach: urtw0 attach returned 6
> urtw0: <vendor 0x0bda product 0x8187, class 0/0, rev 2.00/2.00, addr 2> 
> on usbus3
> urtw0: could not allocate USB transfers, err=USB_ERR_NO_PIPE
> device_attach: urtw0 attach returned 6
> 
> im running FreeBSD 8.1-RELEASE-p2 amd64.
> 
> What might be the reason for this error?
> Thanks for all hints.

Well, I have no clue about USB.. but this smells like one of the
endpoints is 'not there'. At least I can't find any reference to
it in the Linux driver. Wanna give attached patch a shot?

-- 
Bernhard

--Boundary-00=_nI3ZNUq3EhRKLCq
Content-Type: text/x-patch;
  charset="UTF-8";
  name="urtw_ep.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename="urtw_ep.diff"

Index: if_urtw.c
===================================================================
--- if_urtw.c	(revision 218938)
+++ if_urtw.c	(working copy)
@@ -633,19 +635,6 @@ static const struct usb_config urtw_8187l_usbconfi
 		.callback = urtw_bulk_tx_callback,
 		.timeout = URTW_DATA_TIMEOUT
 	},
-	[URTW_8187L_BULK_TX_NORMAL] = {
-		.type = UE_BULK,
-		.endpoint = 0x3,
-		.direction = UE_DIR_OUT,
-		.bufsize = URTW_TX_MAXSIZE,
-		.flags = {
-			.ext_buffer = 1,
-			.force_short_xfer = 1,
-			.pipe_bof = 1,
-		},
-		.callback = urtw_bulk_tx_callback,
-		.timeout = URTW_DATA_TIMEOUT
-	},
 };
 
 static struct ieee80211vap *urtw_vap_create(struct ieee80211com *,
@@ -1813,9 +1802,7 @@ urtw_tx_start(struct urtw_softc *sc, struct ieee80
 			break;
 		}
 	} else
-		xfer = (prior == URTW_PRIORITY_LOW) ?
-		    sc->sc_xfer[URTW_8187L_BULK_TX_LOW] :
-		    sc->sc_xfer[URTW_8187L_BULK_TX_NORMAL];
+		xfer = sc->sc_xfer[URTW_8187L_BULK_TX_LOW];
 
 	STAILQ_INSERT_TAIL(&sc->sc_tx_pending, data, next);
 	usbd_transfer_start(xfer);

--Boundary-00=_nI3ZNUq3EhRKLCq--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201102251011.03839.bschmidt>