On Sat, Mar 17, 2007 at 12:37:10AM -0400, Michael Wu wrote: > On Friday 16 March 2007 23:46, Paul TBBle Hampson wrote: >> The (built-in) bcm43xx-mac80211 driver works, but when I try to load a >> CardBus Atheros card I've got lying around with dadwifi-openhal, it >> fails with some sort of hardware error. (ie. it _might_ be a dodgey >> Cardbus port, although both cardbus cards used to work in this machine, >> using prism54 hardmac and the dadwifi with atheros hal driver >> respectively) > Can you rule out the port first? Load the fullmac driver first, bring it up & > down, unload it, and then try p54. OK, with the current prism54 as it appears in wireless-dev: Mar 17 16:32:41 su kernel: pccard: CardBus card inserted into slot 0 ] modprobe prism54 Mar 17 16:33:04 su kernel: Loaded prism54 driver, version 1.2 Mar 17 16:33:04 su kernel: PCI: Enabling device 0001:11:00.0 (0000 -> 0002) Mar 17 16:33:04 su kernel: prism54: pci_set_mwi(pdev) succeeded ] ifup prism54-0 (fires up wpa_supplicant and tries to associate to local WPA AP) Mar 17 16:33:54 su kernel: prism54-0: resetting device... Mar 17 16:33:54 su kernel: prism54-0: uploading firmware... Mar 17 16:33:54 su kernel: prism54-0: firmware version: 1.0.4.3 Mar 17 16:33:54 su kernel: prism54-0: firmware upload complete Mar 17 16:33:54 su kernel: prism54-0: interface reset complete Mar 17 16:33:55 su kernel: prism54-0: WPA IE Attachment was set Mar 17 16:34:05 su kernel: prism54-0: no IPv6 routers present Mar 17 16:34:08 su kernel: prism54-0: WPA IE Attachment was set Mar 17 16:34:21 su kernel: prism54-0: WPA IE Attachment was set Mar 17 16:34:34 su kernel: prism54-0: timeout waiting for mgmt response 300, triggering device <repeat last two lies x 3> Mar 17 16:35:14 su kernel: prism54-0: mgt_commit_list: failure. oid=19000004 err=1 Mar 17 16:35:14 su kernel: prism54-0: mgt_commit: failure Mar 17 16:35:14 su kernel: prism54-0: WPA IE Attachment was set <repeat last three lines> Mar 17 16:35:30 su kernel: prism54-0: timeout waiting for mgmt response 300, triggering device Mar 17 16:35:30 su kernel: prism54-0: mgt_commit_list: failure. oid=19000004 err=1 Mar 17 16:35:30 su kernel: prism54-0: mgt_commit: failure Mar 17 16:35:30 su kernel: prism54-0: WPA IE Attachment was set <repeat these four lines a lot> Mar 17 16:37:40 su kernel: prism54-0: timeout waiting for mgmt response 300, triggering device Mar 17 16:37:40 su kernel: prism54-0: timeout waiting for mgmt response 270, triggering device Mar 17 16:37:40 su kernel: prism54-0: timeout waiting for mgmt response 240, triggering device Mar 17 16:37:40 su kernel: prism54-0: timeout waiting for mgmt response 210, triggering device Mar 17 16:37:41 su kernel: prism54-0: timeout waiting for mgmt response 180, triggering device Mar 17 16:37:41 su kernel: prism54-0: timeout waiting for mgmt response 150, triggering device Mar 17 16:37:41 su kernel: prism54-0: timeout waiting for mgmt response 120, triggering device Mar 17 16:37:41 su kernel: prism54-0: timeout waiting for mgmt response 90, triggering device Mar 17 16:37:41 su kernel: prism54-0: timeout waiting for mgmt response 60, triggering device Mar 17 16:37:41 su kernel: prism54-0: timeout waiting for mgmt response 30, triggering device Mar 17 16:37:41 su kernel: prism54-0: timeout waiting for mgmt response <repeat above lines again> Mar 17 16:37:51 su kernel: prism54-0: mgmt tx queue is still full <lots of these until I shut down the interface> Mar 17 16:39:25 su kernel: prism54-0: islpci_close () Bleh, that doesn't look healthy. ] rmmod prism54 Mar 17 16:43:26 su kernel: prism54-0: removing device Mar 17 16:43:26 su kernel: Unloaded prism54 driver Then, with the p54 code, patched with the patch you attached. ] modprobe prism54pci Mar 17 16:48:56 su kernel: p54: LM86 firmware Mar 17 16:48:58 su kernel: 0001:11:00.0 (prism54pci): Cannot read eeprom! Mar 17 16:48:58 su kernel: prism54pci: probe of 0001:11:00.0 failed with error -22 Hmm, I guess the patch fixed the BUG_ON. ^_^ Removing the modules produced nothing in the kernel log. ] eject card Mar 17 16:51:14 su kernel: pccard: card ejected from slot 0 Excellent. So that's fixed the BUG_ON and the hard lock. Still fails to read an eeprom from my card though. I'm wondering if the crapspew from the prism54 driver implies card or socket badness? However, the hardmac driver is able to get a MAC address (with an OID query, according to the code) and the MAC address is correct: 00:60:64:03:41:81 Is it worth dumping the purported eeprom to see if it's actually a valid eeprom in a format unexpected by the code? (The card is very old now...) >> (Albeit the hardmach driver never managed to WPA, and as of 2.6.20 still >> doesn't, haven't tried the version in wireless-dev yet) > Hardmac version in wireless-dev is the same thing. wireless-dev is just for > mac80211 and cfg80211 code. Ah, right. The changes I'm seeing are post-2.6.20 changes in linus' tree. I rebuilt my prism54 module with them for the above. >> So maybe the BUG isn't a problem with the p54 driver, but I'd appreciate >> help with making it find the eeprom so it doesn't happen... > I just found a leak in a probe error path. It might somehow cause the problem > in the pci code. I've attached a patch to fix it. > Thanks, > -Michael Wu > p54pci: Fix error path when eeprom read fails Patch applied offset 11 lines... -- ----------------------------------------------------------- Paul "TBBle" Hampson, B.Sc, LPI, MCSE On-hiatus Asian Studies student, ANU The Boss, Bubblesworth Pty Ltd (ABN: 51 095 284 361) Paul.Hampson@xxxxxxxxx Of course Pacman didn't influence us as kids. If it did, we'd be running around in darkened rooms, popping pills and listening to repetitive music. -- Kristian Wilson, Nintendo, Inc, 1989 License: http://creativecommons.org/licenses/by/2.1/au/ -----------------------------------------------------------
Attachment:
pgpz16nf6SJUl.pgp
Description: PGP signature