bcmdhd: Fixed to filter out SOFTAP flag from 5G channels when STA is connected DFS

[Issues]
1. The expectation is that the getUsableChannelsI should filter 5G channels when STA is connected to DFS 5G and operational mode is Soft AP.
But, getAvailableChannelFreqsForBand returns didn't apply the filter with concurrency limitation.

2. API returns that MCC channels of the band to which the STA is connected are available as SOFTAP
ex) returns that MCC channels(Ch40,Ch44, ..) are available when STA connected to Ch36

[Solution]
Added to check if STA is connected DFS channel. if so, SOFTAP flag will be filtered out in 5G channels.
and fixed to be returned correct SOFTAP concurrency regarding wl_handle_acs_concurrency_cases().

Bug: 236333332
Test: halutil command

Signed-off-by: Dennis Jeon <dennis.jeon@broadcom.corp-partner.google.com>
Change-Id: I9252c544ad12bada5579553478d809512a753d39
1 file changed
tree: 4fc0211f2a0d5ae589160d441b74d976846e94d1
  1. include/
  2. aiutils.c
  3. bcm_app_utils.c
  4. bcm_l2_filter.c
  5. bcmbloom.c
  6. bcmevent.c
  7. bcmsdh.c
  8. bcmsdh_linux.c
  9. bcmsdh_sdmmc.c
  10. bcmsdh_sdmmc_linux.c
  11. bcmsdspi.h
  12. bcmsdspi_linux.c
  13. bcmsdstd.h
  14. bcmspibrcm.c
  15. bcmstdlib_s.c
  16. bcmutils.c
  17. bcmwifi_channels.c
  18. bcmxtlv.c
  19. BUILD.bazel
  20. copyrights.json
  21. dhd.h
  22. dhd_bitpack.h
  23. dhd_bus.h
  24. dhd_buzzz.h
  25. dhd_cdc.c
  26. dhd_cfg80211.c
  27. dhd_cfg80211.h
  28. dhd_common.c
  29. dhd_custom_cis.c
  30. dhd_custom_google.c
  31. dhd_custom_gpio.c
  32. dhd_custom_memprealloc.c
  33. dhd_custom_msm.c
  34. dhd_dbg.h
  35. dhd_dbg_ring.c
  36. dhd_dbg_ring.h
  37. dhd_debug.c
  38. dhd_debug.h
  39. dhd_debug_linux.c
  40. dhd_event_log_filter.c
  41. dhd_event_log_filter.h
  42. dhd_flowring.c
  43. dhd_flowring.h
  44. dhd_ip.c
  45. dhd_ip.h
  46. dhd_linux.c
  47. dhd_linux.h
  48. dhd_linux_exportfs.c
  49. dhd_linux_lb.c
  50. dhd_linux_pktdump.c
  51. dhd_linux_pktdump.h
  52. dhd_linux_platdev.c
  53. dhd_linux_priv.h
  54. dhd_linux_rx.c
  55. dhd_linux_sched.c
  56. dhd_linux_sock_qos.h
  57. dhd_linux_tx.c
  58. dhd_linux_tx.h
  59. dhd_linux_wq.c
  60. dhd_linux_wq.h
  61. dhd_log_dump.c
  62. dhd_log_dump.h
  63. dhd_mschdbg.c
  64. dhd_mschdbg.h
  65. dhd_msgbuf.c
  66. dhd_pcie.c
  67. dhd_pcie.h
  68. dhd_pcie_linux.c
  69. dhd_pktlog.c
  70. dhd_pktlog.h
  71. dhd_plat.h
  72. dhd_pno.c
  73. dhd_pno.h
  74. dhd_proto.h
  75. dhd_rtt.c
  76. dhd_rtt.h
  77. dhd_sdio.c
  78. dhd_statlog.c
  79. dhd_statlog.h
  80. dhd_wlfc.c
  81. dhd_wlfc.h
  82. frag.c
  83. fwpkg_utils.c
  84. hnd_pktpool.c
  85. hnd_pktq.c
  86. hndlhl.c
  87. hndmem.c
  88. hndpmu.c
  89. Kbuild
  90. Kconfig
  91. linux_osl.c
  92. linux_osl_priv.h
  93. linux_pkt.c
  94. Makefile
  95. pcie_core.c
  96. sbutils.c
  97. siutils.c
  98. siutils_priv.h
  99. wb_regon_coordinator.c
  100. wifi_stats.h
  101. wl_android.c
  102. wl_android.h
  103. wl_cfg80211.c
  104. wl_cfg80211.h
  105. wl_cfg_btcoex.c
  106. wl_cfg_cellavoid.c
  107. wl_cfg_cellavoid.h
  108. wl_cfgnan.c
  109. wl_cfgnan.h
  110. wl_cfgp2p.c
  111. wl_cfgp2p.h
  112. wl_cfgscan.c
  113. wl_cfgscan.h
  114. wl_cfgvendor.c
  115. wl_cfgvendor.h
  116. wl_cfgvif.c
  117. wl_cfgvif.h
  118. wl_linux_mon.c
  119. wl_roam.c
  120. wldev_common.c