Allocate all memory at once to simplify error handling. Allocate a
network device and use it both for the master and the VAP. Set a
descriptive name on the network device, as it's used in error and debug
messages.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4122 0192ed92-7a03-0410-a25b-9323aeb14dbd
The kernel AES will only be requested if hardware encryption is not
available and if AES is really needed. At that point, a failure to
allocate the AES cipher would be a real problem, not a minor debug
condition.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4121 0192ed92-7a03-0410-a25b-9323aeb14dbd
init_MUTEX() is missing on kernels with realtime patches. Besides,
init_MUTEX is a confusing name, since it initializes a semaphore,
whereas newer kernels have real mutexes as well.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4118 0192ed92-7a03-0410-a25b-9323aeb14dbd
The warning is
ld: warning: cannot find entry symbol stext; defaulting to 0000000000000000
LDFLAGS may have been a better choice when HAL was binary, but now
LDOPTS is the right thing for consistency with the makefiles in other
directories.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4104 0192ed92-7a03-0410-a25b-9323aeb14dbd
The contention window is supposed to be a power of two minus one, i.e.
15, 31, 63, 127... Due to a wrong formula, the actual sequence was 15,
32, 66, 134...
Bug reported by Dan Halperin <dhalperi@cs.washington.edu>
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4097 0192ed92-7a03-0410-a25b-9323aeb14dbd
Make srate signed, or checks for it being less than 0 don't work.
Consistently use IEEE80211_FIXED_RATE_NONE. Fix misleading comments.
Survive the case when the fixed rate is not in the rate table. It can
happen e.g. a CCK rate is used with an 802.11a channel, or in the STA
mode when an OFDM rate is used with 802.11b. The driver should catch
it, but it doesn't. In any case, it's not a reason for an oops.
Remove the debugging message if everything is fine. In case of an
error, specify the VAP name.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4095 0192ed92-7a03-0410-a25b-9323aeb14dbd
The logic to prevent calling ieee80211_input() on inactive VAPs was
flawed. The first VAP was exempt from the check for no reason.
Rewrite to avoid having nested loops. Give the original skb to the
first VAP, not to the last one, as the first VAP is easier to find in a
loop. Process the first VAP after others.
Only collect the result from the first VAP. ieee80211_input() should
return the same value (frame type) for all VAPs except if we call it
incorrectly, e.g. on an inactive VAP.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4081 0192ed92-7a03-0410-a25b-9323aeb14dbd
Don't enable AHB support in HAL on 64-bit systems, it's not 64-bit clean
and is not meant to be. Provide replacement definition for KSEG1ADDR
when it's not defined (that includes 64-bit mips). Remove other
replacement definitions, they are not needed anymore.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4064 0192ed92-7a03-0410-a25b-9323aeb14dbd
Don't assume that both iowrite32() and iowrite32be() return values in
the _OS_REG_WRITE definition. _OS_REG_WRITE discards the value anyway.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@4061 0192ed92-7a03-0410-a25b-9323aeb14dbd