303-v4.15-0003-brcmfmac-cleanup-brcmf_cfg80211_escan-function.patch 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. From 8c6efda22f5f9f73fc948f517424466be01ae84d Mon Sep 17 00:00:00 2001
  2. From: Arend Van Spriel <[email protected]>
  3. Date: Wed, 8 Nov 2017 14:36:33 +0100
  4. Subject: [PATCH] brcmfmac: cleanup brcmf_cfg80211_escan() function
  5. The function brcmf_cfg80211_escan() was always called with a non-null
  6. request parameter and null pointer for this_ssid parameter. Clean up
  7. the function removing the dead code path.
  8. Reviewed-by: Hante Meuleman <[email protected]>
  9. Reviewed-by: Pieter-Paul Giesberts <[email protected]>
  10. Reviewed-by: Franky Lin <[email protected]>
  11. Signed-off-by: Arend van Spriel <[email protected]>
  12. Signed-off-by: Kalle Valo <[email protected]>
  13. ---
  14. .../broadcom/brcm80211/brcmfmac/cfg80211.c | 76 ++++------------------
  15. 1 file changed, 11 insertions(+), 65 deletions(-)
  16. --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
  17. +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
  18. @@ -1072,18 +1072,10 @@ brcmf_do_escan(struct brcmf_if *ifp, str
  19. static s32
  20. brcmf_cfg80211_escan(struct wiphy *wiphy, struct brcmf_cfg80211_vif *vif,
  21. - struct cfg80211_scan_request *request,
  22. - struct cfg80211_ssid *this_ssid)
  23. + struct cfg80211_scan_request *request)
  24. {
  25. - struct brcmf_if *ifp = vif->ifp;
  26. struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy);
  27. - struct cfg80211_ssid *ssids;
  28. - u32 passive_scan;
  29. - bool escan_req;
  30. - bool spec_scan;
  31. s32 err;
  32. - struct brcmf_ssid_le ssid_le;
  33. - u32 SSID_len;
  34. brcmf_dbg(SCAN, "START ESCAN\n");
  35. @@ -1101,8 +1093,8 @@ brcmf_cfg80211_escan(struct wiphy *wiphy
  36. cfg->scan_status);
  37. return -EAGAIN;
  38. }
  39. - if (test_bit(BRCMF_VIF_STATUS_CONNECTING, &ifp->vif->sme_state)) {
  40. - brcmf_err("Connecting: status (%lu)\n", ifp->vif->sme_state);
  41. + if (test_bit(BRCMF_VIF_STATUS_CONNECTING, &vif->sme_state)) {
  42. + brcmf_err("Connecting: status (%lu)\n", vif->sme_state);
  43. return -EAGAIN;
  44. }
  45. @@ -1110,63 +1102,17 @@ brcmf_cfg80211_escan(struct wiphy *wiphy
  46. if (vif == cfg->p2p.bss_idx[P2PAPI_BSSCFG_DEVICE].vif)
  47. vif = cfg->p2p.bss_idx[P2PAPI_BSSCFG_PRIMARY].vif;
  48. - escan_req = false;
  49. - if (request) {
  50. - /* scan bss */
  51. - ssids = request->ssids;
  52. - escan_req = true;
  53. - } else {
  54. - /* scan in ibss */
  55. - /* we don't do escan in ibss */
  56. - ssids = this_ssid;
  57. - }
  58. -
  59. cfg->scan_request = request;
  60. set_bit(BRCMF_SCAN_STATUS_BUSY, &cfg->scan_status);
  61. - if (escan_req) {
  62. - cfg->escan_info.run = brcmf_run_escan;
  63. - err = brcmf_p2p_scan_prep(wiphy, request, vif);
  64. - if (err)
  65. - goto scan_out;
  66. -
  67. - err = brcmf_do_escan(vif->ifp, request);
  68. - if (err)
  69. - goto scan_out;
  70. - } else {
  71. - brcmf_dbg(SCAN, "ssid \"%s\", ssid_len (%d)\n",
  72. - ssids->ssid, ssids->ssid_len);
  73. - memset(&ssid_le, 0, sizeof(ssid_le));
  74. - SSID_len = min_t(u8, sizeof(ssid_le.SSID), ssids->ssid_len);
  75. - ssid_le.SSID_len = cpu_to_le32(0);
  76. - spec_scan = false;
  77. - if (SSID_len) {
  78. - memcpy(ssid_le.SSID, ssids->ssid, SSID_len);
  79. - ssid_le.SSID_len = cpu_to_le32(SSID_len);
  80. - spec_scan = true;
  81. - } else
  82. - brcmf_dbg(SCAN, "Broadcast scan\n");
  83. -
  84. - passive_scan = cfg->active_scan ? 0 : 1;
  85. - err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_PASSIVE_SCAN,
  86. - passive_scan);
  87. - if (err) {
  88. - brcmf_err("WLC_SET_PASSIVE_SCAN error (%d)\n", err);
  89. - goto scan_out;
  90. - }
  91. - brcmf_scan_config_mpc(ifp, 0);
  92. - err = brcmf_fil_cmd_data_set(ifp, BRCMF_C_SCAN, &ssid_le,
  93. - sizeof(ssid_le));
  94. - if (err) {
  95. - if (err == -EBUSY)
  96. - brcmf_dbg(INFO, "BUSY: scan for \"%s\" canceled\n",
  97. - ssid_le.SSID);
  98. - else
  99. - brcmf_err("WLC_SCAN error (%d)\n", err);
  100. -
  101. - brcmf_scan_config_mpc(ifp, 1);
  102. - goto scan_out;
  103. - }
  104. - }
  105. +
  106. + cfg->escan_info.run = brcmf_run_escan;
  107. + err = brcmf_p2p_scan_prep(wiphy, request, vif);
  108. + if (err)
  109. + goto scan_out;
  110. +
  111. + err = brcmf_do_escan(vif->ifp, request);
  112. + if (err)
  113. + goto scan_out;
  114. /* Arm scan timeout timer */
  115. mod_timer(&cfg->escan_timeout, jiffies +
  116. @@ -1191,7 +1137,7 @@ brcmf_cfg80211_scan(struct wiphy *wiphy,
  117. if (!check_vif_up(vif))
  118. return -EIO;
  119. - err = brcmf_cfg80211_escan(wiphy, vif, request, NULL);
  120. + err = brcmf_cfg80211_escan(wiphy, vif, request);
  121. if (err)
  122. brcmf_err("scan error (%d)\n", err);