Andy Green wrote: > Association is presumably lost because the firmware in the Atheros > module is directly seeing this "go down", "come back up from scratch" > traffic.
The module actually has to be reset for letting the SDIO stack rediscover it. The SDIO spec allows the usual detection process only after a power-on reset (or, in our case, pulling the reset line) or a soft reset (where you set a bit to reset the IO function). In either case, the IO function gets completely reset. Since this is a "full MAC", all state in it is lost as well. (So the interface comes back up "clean" - no association, no ESSID, no key, etc.) The SDIO spec describes a way to suspend just the interface but to leave the IO function alone, but neither the AR6k module nor the Linux SDIO stack implement it. Even if this suspend function isn't there, we can probably just stop communication. (That's what happens with the Atheros SDIO stack and Samuel's driver.) I write probably, because if this doesn't actually work, it may explain some of the communication failures we're experiencing :) > It's fine for now, It's no worse than normal soft MAC device under Linux > where mac80211 is down in suspend and association is lost: > NetworkManager or similar will reacquire it on resume. Oh, good. Does it also set ESSID, encryption, and such again ? That would make things very easy for me ;-) - Werner
