332-v4.19-0001-brcmfmac-detect-firmware-support-for-monitor-interfa.patch 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. From 01f69dfafdbe7deff58b58053bc3a4a75c6a570c Mon Sep 17 00:00:00 2001
  2. From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
  3. Date: Sun, 24 Jun 2018 21:44:35 +0200
  4. Subject: [PATCH] brcmfmac: detect firmware support for monitor interface
  5. MIME-Version: 1.0
  6. Content-Type: text/plain; charset=UTF-8
  7. Content-Transfer-Encoding: 8bit
  8. Many/most of firmwares support creating monitor interface but only the
  9. most recent ones explicitly /announce/ it using a "monitor" entry in the
  10. list of capabilities.
  11. Check for that entry and store internally info about monitor mode
  12. support using a new feature flag. Once we sort out all details of
  13. handling monitor interface it will be used when reporting available
  14. interfaces to the cfg80211.
  15. Later some fallback detecion method may be added for older firmwares.
  16. For now just stick to the "monitor" capability which should be 100%
  17. reliable.
  18. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
  19. Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>
  20. Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  21. ---
  22. drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c | 1 +
  23. drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.h | 4 +++-
  24. 2 files changed, 4 insertions(+), 1 deletion(-)
  25. --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c
  26. +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.c
  27. @@ -47,6 +47,7 @@ static const struct brcmf_feat_fwcap brc
  28. { BRCMF_FEAT_MBSS, "mbss" },
  29. { BRCMF_FEAT_MCHAN, "mchan" },
  30. { BRCMF_FEAT_P2P, "p2p" },
  31. + { BRCMF_FEAT_MONITOR, "monitor" },
  32. };
  33. #ifdef DEBUG
  34. --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.h
  35. +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/feature.h
  36. @@ -31,6 +31,7 @@
  37. * WOWL_GTK: (WOWL) GTK rekeying offload
  38. * WOWL_ARP_ND: ARP and Neighbor Discovery offload support during WOWL.
  39. * MFP: 802.11w Management Frame Protection.
  40. + * MONITOR: firmware can pass monitor packets to host.
  41. */
  42. #define BRCMF_FEAT_LIST \
  43. BRCMF_FEAT_DEF(MBSS) \
  44. @@ -44,7 +45,8 @@
  45. BRCMF_FEAT_DEF(WOWL_ND) \
  46. BRCMF_FEAT_DEF(WOWL_GTK) \
  47. BRCMF_FEAT_DEF(WOWL_ARP_ND) \
  48. - BRCMF_FEAT_DEF(MFP)
  49. + BRCMF_FEAT_DEF(MFP) \
  50. + BRCMF_FEAT_DEF(MONITOR)
  51. /*
  52. * Quirks: