Commit Graph

471 Commits

Author SHA1 Message Date
mentor
f259deab93 In some parts of Madwifi, SKBs are dispatched from the VAP device to the physical device using Linux kernel queuing, which does not understand our node reference system, so node references are carefully cleaned up if the packet is dropped.
However, the netif_rx and vlan_hwaccel_receive_skb functions dispatch the SKB to the higher networking levels, out of our domain.

Therefore, handle node references as appropriate.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3708 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 19:21:33 +00:00
proski
1b5e6019b1 Don't show comments while compiling
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3707 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 05:39:54 +00:00
proski
78ddabe0b4 Fix tools compliation described in ticket #1934
Change compat.h to never use KERNEL_VERSION in userspace code.  Move it
to the block only used by the kernel code.  While at that, move KASSERT
to the same block.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3706 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 05:38:29 +00:00
mentor
a5680de2b6 Remove sead ALIGNED_POINTER code
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3705 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-06 01:40:25 +00:00
proski
0c4f9cd972 Add ignore rules for tools/wpakey and modules.order
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3703 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-05 07:37:41 +00:00
proski
798e0eb3fb Registers between 0x7000 and 0x8000 are always little-endian
According to FreeBSD changelog, this area is present in 5416 and newer
and must be byteswapped on big-endian systems.  Testing confirms it.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3701 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-05 07:22:51 +00:00
proski
8c141cdc58 Reapply r3402 (ARM compile fix), it was reverted by mistake
This should fix compilation on little-endian ARM and possibly other
platforms with little or no optimization.  This closes #1783.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3700 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-05 07:13:41 +00:00
kelmo
4b2cf1393a Remove modules.order files in Makefile clean targets.
Remove kbuild by-products in regression/Makefile. Also allow
regression/tkip/test_tkip.c to compile (too few arguments to function
ieee80211_crypto_demic).

Closes: #1973


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3699 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-04 12:25:31 +00:00
proski
eaac5479fd Rename remaining instances of ALL to PROGRAMS
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3693 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-01 17:39:48 +00:00
benoit
4b8b3f3960 Revert part of previous change. Was too board. Merge -dfs r3691
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3692 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-01 17:36:03 +00:00
benoit
ec82a6dabd Avoid soft lockup with calibration timer. Merge from -dfs r3689
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3690 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-01 16:44:12 +00:00
benoit
c04bc3e394 Merge -dfs r3410 and r3687 for proper multicast key search operation (disable
at this point since it does not work as expected).


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3688 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-06-01 09:34:30 +00:00
proski
4cf35af407 Copy Makefile and wpakey.c from madwifi-dfs branch
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3685 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-30 19:52:53 +00:00
proski
0b5e419a35 Connect ath_info as a subdirectory for tools
Use https protocol and the tip revision.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3684 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-30 19:44:14 +00:00
mentor
bacb36738e Update some strings in ieee80211_dumppkt to be slightly more obvious/correct
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3680 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-25 18:44:50 +00:00
mentor
7045e12375 Aid debugging by helpfully not dereferencing NULL pointers and oopsing when debugging messages are turned on.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3679 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-24 12:15:44 +00:00
mentor
2cb3887369 Add lots of .PHONY to Makefiles and remove a duplicate rule definition
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3678 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-23 03:49:25 +00:00
benoit
99ead2121d Merge madwifi-dfs r3676
Fixed type of all variables storing jiffies
Converted add_timer() to mod_timer()


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3677 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 20:25:48 +00:00
mentor
c62ff62eaf Cast to remotely the right pointer type
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3675 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 16:15:28 +00:00
mentor
c0466a75a6 Record stat's before dispatch, and generally don't try to access NULL pointers
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3674 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 16:09:19 +00:00
mentor
03b00b0e45 A few final bits of tidy
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3673 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 15:17:20 +00:00
mentor
2e5d81996e Slightly tidier way of managing SKBs
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3672 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 15:13:19 +00:00
mentor
18682f3d29 SKB handling code cleanup:
* Convert last SKB_CB()->ni to SKB_NI
 * Lots of comments
 * Refactor various pieces of code for consistency, readability, and removal of goto


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3666 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 12:58:24 +00:00
mentor
04084c023d Make sure to free the skb if it is not used. This is brute force programming; I blame gotos.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3665 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 12:48:52 +00:00
proski
78731b81b8 Compile ath_hal_reg_write() and ath_hal_reg_read() only if needed
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3664 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-22 12:39:24 +00:00
br1
f99b56ca39 fixing and cleanup of ath_announce
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3659 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-21 13:44:15 +00:00
br1
e6646f6f0a add chip name by SREV mapping from ath5k and print MAC and PHY
chip name on module load


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3658 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-21 13:44:09 +00:00
br1
8d0833e60d move all HAL extensions (everything including direct register read and writes
or reverse engineered information) to if_ath_hal_extensions.[ch]


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3657 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-21 13:44:03 +00:00
br1
fe5351a3e3 remove add_timer() call after mod_timer(). it causes a kernel bug and is not
necessary since mod_timer does all the work already. this fixes station mode.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3653 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-20 17:16:24 +00:00
mentor
547147362c Random whitespace
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3652 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-20 15:58:00 +00:00
br1
9ba85e9edf drop packets if a WME queue gets too long.
similar code was removed in r3503, but it was wrong before as well, because
the packet needs to be dropped instead of requeued to actually achieve
prioritization between different packet types (WME classes). if we allow
one queue to consume all TX buffers then there is no buffer left to service
packets on higher priority queues.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3648 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-20 13:46:02 +00:00
mentor
c4093cb5c8 Manually stomp the DMA size to 128B for AR5418 devices. This patch should probably be extended to do this for all PCIe devices.
The register defines were taken from ath5k.

This patch has been only lightly tested, I'm afraid - trying for more coverage.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3641 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-17 04:53:35 +00:00
mentor
15abd8d1f1 Formatting - r3634
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3640 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-17 04:44:05 +00:00
mentor
0d37af2c27 Interference mitigation control code changes:
* More pedanting of comments
 * Update sysctl to return early if no change is made and OPNOTSUPP if !sc_hasintmit
 * Tidy call to set HAL int. mit. status. Remove chatty printf as it is known that this does not work.
 * Preprocessor out HAL call as the int. mit. status is unconditionally set manually.
 * Misc. churn.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3639 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-17 04:41:01 +00:00
br1
3b9f5d1b89 add IEEE80211_TSF_TO_TU macro again and explain it once there instead of
open coding >> 10 and putting notes all over the place.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3635 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-16 16:09:36 +00:00
br1
86d8de1785 let ieee80211_recv_mgmt() return 0 if the frame is to be discarded and don't
process discarded frames in ath_recv_mgmt(). this reduces the number of times
we attempt to merge IBSS to invalid beacons.

this patch is based on the work of Derek Smithies


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3634 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-16 16:09:28 +00:00
br1
6da523e4d6 enclose node_print_message() calls in #ifdef IEEE80211_DEBUG
preprocessor directives to avoid this function beeing called
(and allocating stack space) when debugging is disabled.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3631 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-16 11:34:59 +00:00
mentor
1866fef7c5 Pedant spelling/punctuation
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3630 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-14 19:21:38 +00:00
mentor
7d8156565c Downgrade Int. Mit. out of synchronisation message to a warning as we know it happens.
Also, remove extraneous message severity indicators.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3629 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-14 19:19:30 +00:00
mentor
88959bf97f If hal_tpc is out of sync. with the actual HAL setting, set the HAL setting to hal_tpc rather than just to on.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3628 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-14 19:16:59 +00:00
mentor
6abd8285aa Whitespace for control statements
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3627 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-14 19:11:57 +00:00
proski
17ef384654 Remove inline forward declarations, it doesn't work this way
Besided, gcc 3.4.6 doesn't accept it.  Move ath_ds_link_swap() before
the code that uses it.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3626 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-12 02:01:57 +00:00
proski
c85c1bb5c7 likely() doesn't take pointers in Linux 2.4, give it an integer
This should fix #1932


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3625 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-12 01:42:34 +00:00
mentor
c063dad027 Thanks to author of r3623
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3624 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-10 06:59:09 +00:00
mentor
30aec0e604 Off by one error in accessing bf_skbaddrff
Signed-off-by: Przemyslaw Bruski <pbruski@op.pl>


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3623 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-10 06:58:20 +00:00
mentor
b9be39d736 Cleanup extraneous ieee80211_dev_kfree_skb checks
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3622 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-10 06:07:18 +00:00
mentor
a192279dd6 Only deliver frames to VAPs that are running.
This includes the reinstatement of the ieee80211_input_all function as this functionality should live in the net80211 layer. Unfortunately the code for this is a tad on the ugly side.

Thanks to OpenWRT/nbd: https://dev.openwrt.org/log/trunk/package/madwifi/patches/334-input.patch


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3621 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-10 06:03:52 +00:00
mentor
dfdda8ca55 Remove axq_link, for benoit.
The last descriptor is now implicit in the structure and meta-data of the buffers; axq_link does not need to be maintained separately.
Add macros to to return the last buffer, descriptor, and link them as necessary.
Make the queue moving macro implicitly link descriptors, and remove the explicit descriptor linking in this case.

ath_node_move_data is still desperately in need of a review; it is used in XR.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3620 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-07 18:33:15 +00:00
mentor
3dc12c74ec Fold descriptor link address byte-swapping for hardware into a common function
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3619 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-06 22:18:43 +00:00
mentor
ef47acefdd Convert tracked member of ieee80211_cb to be a flag
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3618 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-05-06 11:31:26 +00:00