On 11/4/09, PseudoCylon <moonlightakkiy_at_yahoo.ca> wrote: > ----- Original Message ---- > >> From: Paul B Mahol <onemda_at_gmail.com> >> To: PseudoCylon <moonlightakkiy_at_yahoo.ca> >> Cc: freebsd-current_at_freebsd.org >> Sent: Tue, November 3, 2009 5:08:47 AM >> Subject: Re: Wireless usb + wep = no usbd_do_request >> >> On 11/3/09, PseudoCylon wrote: >> > Hi, >> > >> > I'm porting a wireless usb driver (if_run) to freebsd current, and I got >> > stuck. Once I "ifconfig wlan0 wepkey 1:0x... weptxkey 1" I cannot call >> > usbd_do_request() any more. Even ifconfig didn't exit. Chipset supports >> > h/w >> > en/decryption, so cannot write keys on chip. (It works without >> > encryption, >> > by the way.) >> > >> > So, I tried the same thing on another device, linksys wusb54gc with >> > if_rum. >> > It worked fine, but about 3 to 4 min later. (Just left it alone.) It >> > started >> > giving error >> > rum0: could not multi read MAC register: USB_ERR_TIMEOUT and >> > rum0: device timeout >> > when ifconfig wlan0 down, >> > rum0: could not multi write MAC register: USB_ERR_TIMEOUT >> > which means failed on usbd_do_request() (This could be totally different >> > issue.) >> >> I get this one multiple times after card got detached but vap was not >> manually destroyed. >> Recently I did not used if_rum more that 5 min I think(maybe in AP >> mode when I was testing hidden ssid ...) >> >> > Any ideas, patches, or walkaround? >> >> Make sure how locks are handled between net80211, usb and driver itself. > > Thanks for the reply. > > I think that's just simple lock problem, too. Just I don't know what it is. > I tried > IEEE80211_LOCK > IEEE80211_NODE_LOCK > IEEE80211_NODE_ITERATE_LOCK > but I cannot lock or unlock them. (I can lock IF_LOCK.) I just get "panic: > mtx_lock of spin mutex(null)" For example, IEEE80211_LOCK is sleep mutex, > and I can use it in newstate() no problem, but I some how it becomes spin > mutex in key_set(). Once I find what is over writing lock type, I can make > it work. Wish me a luck. Look other freebsd usb drivers for example when un/lock is required, also you need to have you own driver lock - and you need to really know when to use it.Received on Wed Nov 04 2009 - 11:40:27 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:57 UTC