Follow the rule of coding for the latest API. Use __skb_queue_after()
in the code rather than __skb_append(), which is due to be removed in
Linux 2.6.26. Provide compatibility definitions for __skb_queue_after()
in include/compat.h.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3605 0192ed92-7a03-0410-a25b-9323aeb14dbd
Otherwise, $(TARGET).hal.o is not built for Linux 2.4 kernels. The rule
for ath_hal.o is for Linux 2.4 only and should not affect Linux 2.6
builds.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3604 0192ed92-7a03-0410-a25b-9323aeb14dbd
During the second stage of the module build, Linux 2.6.26 does not
define $(obj). Try using $(SUBDIRS) as $(obj) before falling back to
the current directory.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3603 0192ed92-7a03-0410-a25b-9323aeb14dbd
__skb_append() will be removed in Linux 2.6.26. __skb_queue_after()
should be used instead. Use the new interface on Linux 2.6.25 and
newer.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3602 0192ed92-7a03-0410-a25b-9323aeb14dbd
Filter out harmful options from OBJCOPY. Linux 2.4 adds "-O binary" and
"-S" for i386 and x86_64, which would break the build.
Use $(TOP) in hal_unmangle.objcopy path.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3599 0192ed92-7a03-0410-a25b-9323aeb14dbd
Normally, compatibility issues should be addressed in compat.h, but
INITIAL_JIFFIES is not something that should be widely used.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3598 0192ed92-7a03-0410-a25b-9323aeb14dbd
* Formatting
* Add a function to remove SKB from ath_buf.
* Call aforementioned function early if we are accepting a frame, so that there's not chance the data can get stomped on by DMA. We should probably do this for ignored frames as well, but I got fed up trying to sort out the stack of goto.
* Remove some KASSERT for skb users, as the SKB are always copied.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3594 0192ed92-7a03-0410-a25b-9323aeb14dbd
to see those debug message).
Fixed a bug where we removed TX descriptors too early. This should fix NETDEV
WATCHDOG error messages. Apparently, TX descriptor status is updated by the
hardware before TXDP.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3552 0192ed92-7a03-0410-a25b-9323aeb14dbd
The rx overruns should dissapear with the previous performance improvements and a little bit more runway here. The 100 more to tx should only help in cases where large numbers of small packets are set and you are going for maximum throughput. Even then, I haven't proven you will ever need this many tx buffers. I've also bumped the reserve pool for management frames from 5 to 20.
These settings tested well in the lab with multiple station links running bandwidth tests.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3521 0192ed92-7a03-0410-a25b-9323aeb14dbd
* Only hold the RX queue lock while removing and while re-inserting a buffer -
allowing pre-emption to work properly while the tasklet is reaping and
recycling rx buffers.
* All skb and bus handling is managed in the ath_rxbuf_init function now.
* Do not stop processing when ath_rxbuf_init fails, because that means low
free skb but does NOT mean the queue is fully processed. Since we also keep
our skbuff except during a very brief period when we free one and reallocate
one - unless pre-emption or SMP steals it, chances are very good we can keep
processing the queue even under low memory conditions -- and avoid dreaded
rx overruns.
* Add missing locks around code blocks that iterate over rx buffer list in
flush/drain/init/cleanup/etc helper functions.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3519 0192ed92-7a03-0410-a25b-9323aeb14dbd