From: Hugo H. <hug...@in...> - 2005-01-30 21:19:13
|
Hi, I'm using a DWL-650+ pcmcia on a powerpc (kernel 2.6.9) and I (also) experience systematic tx error 0x20 after (usually) a few minutes (rarely longer than 10 mns). Whatever the sens or retry are, when a tx error 0x20 occurs, most likely can't the card recover. The (full debug) log shows that after one or two more correct tx, all further tx attempts end up with a maximum rts_fail (i.e. "ack_fail=0 rts_fail=8 rts_ok=0 rate=110" if retry limit is set to 7). A typical factor that almost surely provokes an unrecoverable 0x20 error is turning on the wireless card of the computer next room. Another way to make the card raising systematically a 0x20 without being able to recover is to issue one or two "iwconfig wlan0 sens 150" (or another value) commands while pinging the station. Beside the 0x20 problem, I had a problem matching the essid. My home access point is "NETGEAR", but there is another ap in the building named "NETGEAR_ME102". Since the match is done on the length of the expected id only, "NETGEAR" matched "NETGEAR_ME102" and, when the later was listed first, the driver selected it. I solved the problem by inserting a precondition "this_bss->essid_len = priv->essid_len &&" before the memcmp in function acx_complete_dot11_scan. I believe this a bug (the comparison must be done at least on the minimal length of the strings), but I'm unsure of what the exact specification of a given essid is. I also found a strange thing in the code while trying to understand the structure of tx descriptors. The tx host descriptor pool alternates descriptors for the headers and the payloads. So we need twice more of host descriptors, don't we? I look at the (old) cvs repository for comparison and the last version of idma.c actually shows a "* 2" that does no longer occur in the 0.2.0pre8-44 version (line 1318). Apparently, it does not change the observational behavior of the driver (neither better nor worse), but that seems to be potentially a source of memory fault, doesn't it? Otherwise, regarding the big endianness of powerpc, everything looks fine. That's great. Please let me know if I can do some test, e.g. on some new recalibration discipline. Hugo |