|
|
|
@ -81,3 +81,32 @@ |
|
|
|
|
|
|
|
|
|
adev->channel = channel;
|
|
|
|
|
|
|
|
|
|
--- a/merge.c
|
|
|
|
|
+++ b/merge.c
|
|
|
|
|
@@ -2776,7 +2776,10 @@ void acx_irq_work(struct work_struct *wo
|
|
|
|
|
/* HOST_INT_SCAN_COMPLETE */
|
|
|
|
|
if (irqmasked & HOST_INT_SCAN_COMPLETE) {
|
|
|
|
|
if (test_bit(ACX_FLAG_SCANNING, &adev->flags)) {
|
|
|
|
|
- ieee80211_scan_completed(adev->hw, false);
|
|
|
|
|
+ struct cfg80211_scan_info info = {
|
|
|
|
|
+ .aborted = false
|
|
|
|
|
+ };
|
|
|
|
|
+ ieee80211_scan_completed(adev->hw, &info);
|
|
|
|
|
log(L_INIT, "scan completed\n");
|
|
|
|
|
clear_bit(ACX_FLAG_SCANNING, &adev->flags);
|
|
|
|
|
}
|
|
|
|
|
@@ -3138,10 +3141,13 @@ int acx_op_start(struct ieee80211_hw *hw
|
|
|
|
|
|
|
|
|
|
void acx_stop(acx_device_t *adev)
|
|
|
|
|
{
|
|
|
|
|
+ struct cfg80211_scan_info info = {
|
|
|
|
|
+ .aborted = true
|
|
|
|
|
+ };
|
|
|
|
|
acxmem_lock_flags;
|
|
|
|
|
|
|
|
|
|
if (test_bit(ACX_FLAG_SCANNING, &adev->flags)) {
|
|
|
|
|
- ieee80211_scan_completed(adev->hw, true);
|
|
|
|
|
+ ieee80211_scan_completed(adev->hw, &info);
|
|
|
|
|
acx_issue_cmd(adev, ACX1xx_CMD_STOP_SCAN, NULL, 0);
|
|
|
|
|
clear_bit(ACX_FLAG_SCANNING, &adev->flags);
|
|
|
|
|
}
|
|
|
|
|