diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-scan.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-scan.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-scan.c b/drivers/net/wireless/iwlwifi/iwl-scan.c index a4b3663a262f..8d7fa59364fe 100644 --- a/drivers/net/wireless/iwlwifi/iwl-scan.c +++ b/drivers/net/wireless/iwlwifi/iwl-scan.c | |||
@@ -378,7 +378,7 @@ void iwl_internal_short_hw_scan(struct iwl_priv *priv) | |||
378 | queue_work(priv->workqueue, &priv->start_internal_scan); | 378 | queue_work(priv->workqueue, &priv->start_internal_scan); |
379 | } | 379 | } |
380 | 380 | ||
381 | void iwl_bg_start_internal_scan(struct work_struct *work) | 381 | static void iwl_bg_start_internal_scan(struct work_struct *work) |
382 | { | 382 | { |
383 | struct iwl_priv *priv = | 383 | struct iwl_priv *priv = |
384 | container_of(work, struct iwl_priv, start_internal_scan); | 384 | container_of(work, struct iwl_priv, start_internal_scan); |
@@ -418,9 +418,8 @@ void iwl_bg_start_internal_scan(struct work_struct *work) | |||
418 | unlock: | 418 | unlock: |
419 | mutex_unlock(&priv->mutex); | 419 | mutex_unlock(&priv->mutex); |
420 | } | 420 | } |
421 | EXPORT_SYMBOL(iwl_bg_start_internal_scan); | ||
422 | 421 | ||
423 | void iwl_bg_scan_check(struct work_struct *data) | 422 | static void iwl_bg_scan_check(struct work_struct *data) |
424 | { | 423 | { |
425 | struct iwl_priv *priv = | 424 | struct iwl_priv *priv = |
426 | container_of(data, struct iwl_priv, scan_check.work); | 425 | container_of(data, struct iwl_priv, scan_check.work); |
@@ -439,7 +438,6 @@ void iwl_bg_scan_check(struct work_struct *data) | |||
439 | } | 438 | } |
440 | mutex_unlock(&priv->mutex); | 439 | mutex_unlock(&priv->mutex); |
441 | } | 440 | } |
442 | EXPORT_SYMBOL(iwl_bg_scan_check); | ||
443 | 441 | ||
444 | /** | 442 | /** |
445 | * iwl_fill_probe_req - fill in all required fields and IE for probe request | 443 | * iwl_fill_probe_req - fill in all required fields and IE for probe request |
@@ -489,7 +487,7 @@ u16 iwl_fill_probe_req(struct iwl_priv *priv, struct ieee80211_mgmt *frame, | |||
489 | } | 487 | } |
490 | EXPORT_SYMBOL(iwl_fill_probe_req); | 488 | EXPORT_SYMBOL(iwl_fill_probe_req); |
491 | 489 | ||
492 | void iwl_bg_abort_scan(struct work_struct *work) | 490 | static void iwl_bg_abort_scan(struct work_struct *work) |
493 | { | 491 | { |
494 | struct iwl_priv *priv = container_of(work, struct iwl_priv, abort_scan); | 492 | struct iwl_priv *priv = container_of(work, struct iwl_priv, abort_scan); |
495 | 493 | ||
@@ -504,13 +502,13 @@ void iwl_bg_abort_scan(struct work_struct *work) | |||
504 | iwl_send_scan_abort(priv); | 502 | iwl_send_scan_abort(priv); |
505 | mutex_unlock(&priv->mutex); | 503 | mutex_unlock(&priv->mutex); |
506 | } | 504 | } |
507 | EXPORT_SYMBOL(iwl_bg_abort_scan); | ||
508 | 505 | ||
509 | void iwl_bg_scan_completed(struct work_struct *work) | 506 | static void iwl_bg_scan_completed(struct work_struct *work) |
510 | { | 507 | { |
511 | struct iwl_priv *priv = | 508 | struct iwl_priv *priv = |
512 | container_of(work, struct iwl_priv, scan_completed); | 509 | container_of(work, struct iwl_priv, scan_completed); |
513 | bool internal = false; | 510 | bool internal = false; |
511 | bool scan_completed = false; | ||
514 | 512 | ||
515 | IWL_DEBUG_SCAN(priv, "SCAN complete scan\n"); | 513 | IWL_DEBUG_SCAN(priv, "SCAN complete scan\n"); |
516 | 514 | ||
@@ -521,7 +519,8 @@ void iwl_bg_scan_completed(struct work_struct *work) | |||
521 | priv->is_internal_short_scan = false; | 519 | priv->is_internal_short_scan = false; |
522 | IWL_DEBUG_SCAN(priv, "internal short scan completed\n"); | 520 | IWL_DEBUG_SCAN(priv, "internal short scan completed\n"); |
523 | internal = true; | 521 | internal = true; |
524 | } else { | 522 | } else if (priv->scan_request) { |
523 | scan_completed = true; | ||
525 | priv->scan_request = NULL; | 524 | priv->scan_request = NULL; |
526 | priv->scan_vif = NULL; | 525 | priv->scan_vif = NULL; |
527 | } | 526 | } |
@@ -552,10 +551,9 @@ void iwl_bg_scan_completed(struct work_struct *work) | |||
552 | * into driver again into functions that will attempt to take | 551 | * into driver again into functions that will attempt to take |
553 | * mutex. | 552 | * mutex. |
554 | */ | 553 | */ |
555 | if (!internal) | 554 | if (scan_completed) |
556 | ieee80211_scan_completed(priv->hw, false); | 555 | ieee80211_scan_completed(priv->hw, false); |
557 | } | 556 | } |
558 | EXPORT_SYMBOL(iwl_bg_scan_completed); | ||
559 | 557 | ||
560 | void iwl_setup_scan_deferred_work(struct iwl_priv *priv) | 558 | void iwl_setup_scan_deferred_work(struct iwl_priv *priv) |
561 | { | 559 | { |