Additional attempts to fix Oops on disconnect, that appear to be successful.
However, some may be extraneous.
The cancel_delayed_work call is probably the most necessary. The
device_unplugged check may not be necessary. del_timer_sync may not
be necessary either, but the Oops I was receiving was related to
timers. Hence the addition.
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Cleanup dma on stack issues:
- no DMA on stack
- cleanup unclear endianness issue
Corrected version of Oliver Neukum's original patch for at76_usb.
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
flush_workqueue needs to be called instead of the generic one and the
associated functions need to be modified to prevent re-adding
themselves to the workqueue.
The rx_tasklet is also killed in the small (?) chance it is scheduled.
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
at76_debug should be an unsigned int as it used as a bit field. In
fact, modprobe fails when trying to set at76_debug's high bit.
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
With the latest mac80211 stack, the driver needs to be updated for
cfg80211 scanning. I based the changes off of modifications for
at76_usb found here:
http://johannes.sipsolutions.net/patches/old/all/2008-09-19-13:35/020-cfg80211-scan.patch
The trick was that max_signal also needs to be set to avoid a divide
by zero Oops. I just guessed and used the value 100 for now.
kvalo: handpicked the change from two different patches
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This is a driver for usb devices based on at76c50x chipset. This is
a mac80211 port of the original at76_usb driver.
Signed-off-by: Kalle Valo <kalle.valo@iki.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>