11 Oct, 2007
40 commits
-
Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
This improves radiotap injection by removing the shortcut over TX handlers
that led to BUGS when injecting frames without setting a rate and also
resulted in various other quirks. Now, TX handlers are run but some
information that was present in the radiotap header is used instead of
automatic settings.Signed-off-by: Johannes Berg
Cc: Andy Green
Signed-off-by: John W. Linville -
This "algorithm" is used only internally and is not useful.
Signed-off-by: Johannes Berg
Cc: Michael Buesch
Acked-by: Zhu Yi
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
This makes mac80211 set the RX_FLAG_DECRYPTED flag for frames
decrypted in software allowing us to handle some things more
uniformly.Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Currently, we have three RX handlers doing the decryption.
This patch changes it to have only one handler doing
everything, thereby getting rid of many duplicate checks.Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller
--
net/mac80211/rx.c | 46 ++++++++++++----------------------------------
1 files changed, 12 insertions(+), 34 deletions(-) -
This moves the sta_process RX handler to after decryption
so that frames that cannot be decrypted don't influence
statistics, it is likely that they were injected or something
else is totally wrong.Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Removes the management interface since it is only required
for hostapd/userspace MLME, will not be in the final tree
at least in this form and hostapd/userspace MLME currently
do not work against this tree anyway.Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Since I cannot convince the lazy driver authors (hello Michael)
to stop (ab)using the MGMT interface type internally in their
drivers, this patch introduces a new _INVALID type especially
for their use and changes all affected drivers to use it.Signed-off-by: Johannes Berg
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Also remove the check for ops->config!=NULL, as it can never be NULL.
Signed-off-by: Michael Buesch
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Implement much easier and more lightweight locking for
the periodic work.
This also removes the last big busywait loop and replaces it
by a sleeping loop.Signed-off-by: Michael Buesch
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
This removes the direct call to rfkill on an rfkill event
and replaces it with an input device. This way userspace is also
notified about the event.Signed-off-by: Michael Buesch
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
This adds full support for the RFKILL button and
the RFKILL LED trigger.Signed-off-by: Michael Buesch
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Drive the LEDs through the generic LED triggers.
Signed-off-by: Michael Buesch
Cc: Larry Finger
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Buttons that work directly on hardware cannot support
the "user_claim" functionality. Add a flag to signal
this and return -EOPNOTSUPP in this case.
b43 is such a device.Signed-off-by: Michael Buesch
Acked-by: Ivo van Doorn
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
This adds a LED trigger.
Signed-off-by: Michael Buesch
Acked-by: Ivo van Doorn
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
The kernel now provides a generic hexdump implementation should we need
it again, so we can remove it from zd1211rw. After removing that, only
one single-user function is left in zd_util. Move that to zd_mac and
remove zd_util.Signed-off-by: Ulrich Kunitz
Signed-off-by: Daniel Drake
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
As detailed at https://bugs.gentoo.org/159646 hostap with hostapd confuses
udev by presenting 2 interfaces with the same MAC address. Also, at the time
of detection, the 'type' attribute is 1, identical to other hostap interfaces.The AP interface is supposed to have type ARPHRD_IEEE80211 (801), but this is
not set until after registration.Setting it before register_netdev() is called allows us to avoid this
confusion. We can do this by propogating the HOSTAP_INTERFACE type through
to hostap_setup_dev().Signed-off-by: Daniel Drake
Signed-off-by: John W. Linville
Signed-off-by: David S. Miller -
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This is a follow up to the patches from Denys Vlasenkos
to further optimize firmware loading.1. In bnx2_init_cpus(), we allocate memory for decompression once
and use it repeatedly instead of doing this for every firmware image.2. We eliminate the BSS and SBSS firmware sections in bnx2_fw*.h since
these are always zeros.Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
axnet_cs: Laneed LD-CDK/TX
pcnet_cs: LEMEL LM-N89TX PROSigned-off-by: Komuro
Signed-off-by: Jeff Garzik -
Hi, all.
This patch supports Hitachi Solution Engine (SuperH) of smc91x.
Please apply this patch .regards,
Nobuhiro--
Nobuhiro Iwamatsu
E-Mail : iwamatsu@nigauri.org
GPG ID : 3170EBE9Signed-off-by: Nobuhiro Iwamatsu
Signed-off-by: Jeff Garzik
-
Hi,
this are the changes to the smc911x driver, which were necessary
to get it running on the Magic Panel R2 (smsc9115).
It is a SH3-DSP based board. The other patches are available on
the linuxsh-dev mailinglist.
http://marc.info/?l=linuxsh-dev&r=1&b=200708&w=2It was necessary to set the irq sense to low level.
Therefor the SMC_IRQ_SENSE define was added.
How are the chances for inclusion in 2.6.24?Signed-off by: Markus Brunner
Signed-off by: Mark JonasSigned-off-by: Jeff Garzik
-
Due to stability issues in high load situations the HW queue handling
has to be changed. The HW queues are now stopped and restarted again instead
of destroying and allocating new HW queues.Signed-off-by: Jan-Bernd Themann
Signed-off-by: Jeff Garzik -
Mostly a bunch of __iomem annotations.
Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
Previously, bitbanged MDIO was only supported in individual
hardware-specific drivers. This code factors out the higher level
protocol implementation, reducing the hardware-specific portion to
functions setting direction, data, and clock.Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
The existing OF glue code was crufty and broken. Rather than fix it, it
will be removed, and the ethernet driver now talks to the device tree
directly.The old, non-CONFIG_PPC_CPM_NEW_BINDING code can go away once CPM
platforms are dropped from arch/ppc (which will hopefully be soon), and
existing arch/powerpc boards that I wasn't able to test on for this
patchset get converted (which should be even sooner).Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
At least some hardware driven by this driver needs receive buffers
to be aligned on a 16-byte boundary. This usually happens by chance,
but it breaks if slab debugging is enabled.Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
These macros accomplish nothing other than defeating type checking.
This patch also fixes one instance of the wrong register size being
used that was revealed by enabling type checking.Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
It is needed for strstr().
Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
Signed-off-by: Scott Wood
Signed-off-by: Jeff Garzik -
In case somebody has a suggestion about a better place for this
check, which must guarantee execution "early enough" (i.e,
before the wrap can occur), I'm very open to them.Signed-off-by: Ilpo Järvinen
Signed-off-by: David S. Miller -
Just came across what RFC2018 states about generation of valid
SACK blocks in case of reneging. Alter comment a bit to point
out clearly.IMHO, there isn't any reason to change code because the
validation is there for a purpose (counters will inform user
about decision TCP made if this case ever surfaces).Signed-off-by: Ilpo Järvinen
Signed-off-by: David S. Miller -
Signed-off-by: Ilpo Järvinen
Signed-off-by: David S. Miller -
This was found due to bug report from Cedric Le Goater though
it turned this turned out to be unrelated bug.Signed-off-by: Ilpo Järvinen
Signed-off-by: David S. Miller -
Signed-off-by: Denys Vlasenko
Acked-by: Michael Chan
Signed-off-by: David S. Miller -
This patch modifies gzip unpacking code in bnx2 driver so that
it does not depend on bnx2 internals. I will move this code
out of the driver and into zlib in follow-on patch.It can be useful in other drivers which need to store firmwares
or any other relatively big binary blobs - fonts, cursor bitmaps,
whatever.Patch is run tested by Michael Chan (driver author).
Signed-off-by: Denys Vlasenko
Acked-by: Michael Chan
Signed-off-by: David S. Miller -
Hook up the 93cx6 eeprom code to the ax88796 driver and modify the ax88796
driver to read out the mac address from the eeprom. We need this for the
ax88796 on certain SuperH boards. The pin configuration used to connect
the eeprom to the ax88796 on these boards is the same as pointed out by the
ax88796 datasheet, so we can probably reuse this code for multiple
platforms in the future.Signed-off-by: Magnus Damm
Cc: Ben Dooks
Cc: Paul Mundt
Signed-off-by: Andrew Morton
Signed-off-by: Jeff Garzik -
Ensure the PHY_HALTED state is not entered with the IRQ asserted as it
could lead to an interrupt loop.There is a small window in phy_stop(), where the state of the PHY machine
indicates it has been halted, but its interrupt output might still be
unmasked. If an interrupt goes active right at this moment it will loop as
the phy_interrupt() handler exits immediately with IRQ_NONE if the halted
state is seen. It is unsafe to extend the phydev spinlock to cover
phy_interrupt(). It is safe to swap the order of the actions though as all
the competing places to unmask the interrupt output of the PHY, which are
phy_change() and phy_timer() are already covered with the lock as is the
sequence in question.Signed-off-by: Maciej W. Rozycki
Cc: Andy Fleming
Cc: Jeff Garzik
Signed-off-by: Andrew Morton
Signed-off-by: Jeff Garzik -
Keep track of disable_irq_nosync() invocations and call enable_irq() the
right number of times if work has been cancelled that would include them.Now that the call to flush_work_keventd() (problematic because of
rtnl_mutex being held) has been replaced by cancel_work_sync() another
issue has arisen and been left unresolved. As the MDIO bus cannot be
accessed from the interrupt context the PHY interrupt handler uses
disable_irq_nosync() to prevent from looping and schedules some work to be
done as a softirq, which, apart from handling the state change of the
originating PHY, is responsible for reenabling the interrupt. Now if the
interrupt line is shared by another device and a call to the softirq
handler has been cancelled, that call to enable_irq() never happens and the
other device cannot use its interrupt anymore as its stuck disabled.I decided to use a counter rather than a flag because there may be more
than one call to phy_change() cancelled in the queue -- a real one and a
fake one triggered by free_irq() if DEBUG_SHIRQ is used, if nothing else.
Therefore because of its nesting property enable_irq() has to be called the
right number of times to match the number disable_irq_nosync() was called
and restore the original state. This DEBUG_SHIRQ feature is also the
reason why free_irq() has to be called before cancel_work_sync().While at it I updated the comment about phy_stop_interrupts() being called
from `keventd' -- this is no longer relevant as the use of
cancel_work_sync() makes such an approach unnecessary. OTOH a similar
comment referring to flush_scheduled_work() in phy_stop() still applies as
using cancel_work_sync() there would be dangerous.Checked with checkpatch.pl and at the run time (with and without
DEBUG_SHIRQ).Signed-off-by: Maciej W. Rozycki
Cc: Andy Fleming
Cc: Jeff Garzik
Signed-off-by: Andrew Morton
Signed-off-by: Jeff Garzik