diff options
| author | Himanshu Agarwal <himanaga@qti.qualcomm.com> | 2016-05-13 12:36:07 +0530 |
|---|---|---|
| committer | Anjaneedevi Kapparapu <akappa@codeaurora.org> | 2016-05-18 17:49:07 +0530 |
| commit | 3b67e97e33e9f45aee97021c1de5db11307960bc (patch) | |
| tree | e1e575d979d941e1f82e4262788263cd5af9a1ac | |
| parent | 955ae4306698371ea2ebc038619286b6f36e881a (diff) | |
qcacld-2.0: CL 1509574 – update fw common interface files
Vdev level rx filter of from-ds / to-ds / no-ds / ta / ra
frames.
Change-Id: I63ee1aeb2eba793e3a06c2632f43ea044ba33422
CRs-Fixed: 865207
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_services.h | 1 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_unified.h | 126 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_version.h | 2 |
3 files changed, 74 insertions, 55 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_services.h b/CORE/SERVICES/COMMON/wmi_services.h index 87398e039489..102c0210972e 100644 --- a/CORE/SERVICES/COMMON/wmi_services.h +++ b/CORE/SERVICES/COMMON/wmi_services.h @@ -159,6 +159,7 @@ typedef enum { WMI_SERVICE_PERIODIC_CHAN_STAT_SUPPORT, /* periodic channel stats service */ WMI_SERVICE_MESH_11S, WMI_SERVICE_HALF_RATE_QUARTER_RATE_SUPPORT, /* FW+HW supports 10 MHz (half rate) and 5 MHz (quarter rate) channel bandwidth */ + WMI_SERVICE_VDEV_RX_FILTER, /* Support per-vdev specs of which rx frames to filter out */ WMI_MAX_SERVICE=128 /* max service */ } WMI_SERVICE; diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h index 7a05132f80fe..1cb14dc6bad2 100644 --- a/CORE/SERVICES/COMMON/wmi_unified.h +++ b/CORE/SERVICES/COMMON/wmi_unified.h @@ -181,60 +181,60 @@ typedef struct { typedef enum { /* 0 to 2 are reserved */ WMI_GRP_START=0x3, - WMI_GRP_SCAN=WMI_GRP_START, - WMI_GRP_PDEV, - WMI_GRP_VDEV, - WMI_GRP_PEER, - WMI_GRP_MGMT, - WMI_GRP_BA_NEG, - WMI_GRP_STA_PS, - WMI_GRP_DFS, - WMI_GRP_ROAM, - WMI_GRP_OFL_SCAN, - WMI_GRP_P2P, - WMI_GRP_AP_PS, - WMI_GRP_RATE_CTRL, - WMI_GRP_PROFILE, - WMI_GRP_SUSPEND, - WMI_GRP_BCN_FILTER, - WMI_GRP_WOW, - WMI_GRP_RTT, - WMI_GRP_SPECTRAL, - WMI_GRP_STATS, - WMI_GRP_ARP_NS_OFL, - WMI_GRP_NLO_OFL, - WMI_GRP_GTK_OFL, - WMI_GRP_CSA_OFL, - WMI_GRP_CHATTER, - WMI_GRP_TID_ADDBA, - WMI_GRP_MISC, - WMI_GRP_GPIO, - WMI_GRP_FWTEST, - WMI_GRP_TDLS, - WMI_GRP_RESMGR, - WMI_GRP_STA_SMPS, - WMI_GRP_WLAN_HB, - WMI_GRP_RMC, - WMI_GRP_MHF_OFL, - WMI_GRP_LOCATION_SCAN, - WMI_GRP_OEM, - WMI_GRP_NAN, - WMI_GRP_COEX, - WMI_GRP_OBSS_OFL, - WMI_GRP_LPI, - WMI_GRP_EXTSCAN, - WMI_GRP_DHCP_OFL, - WMI_GRP_IPA, - WMI_GRP_MDNS_OFL, - WMI_GRP_SAP_OFL, - WMI_GRP_OCB, - WMI_GRP_SOC, - WMI_GRP_PKT_FILTER, - WMI_GRP_MAWC, - WMI_GRP_PMF_OFFLOAD, - WMI_GRP_BPF_OFFLOAD, /* Berkeley Packet Filter */ - WMI_GRP_NAN_DATA, - WMI_GRP_PROTOTYPE, + WMI_GRP_SCAN=WMI_GRP_START, /* 0x3 */ + WMI_GRP_PDEV, /* 0x4 */ + WMI_GRP_VDEV, /* 0x5 */ + WMI_GRP_PEER, /* 0x6 */ + WMI_GRP_MGMT, /* 0x7 */ + WMI_GRP_BA_NEG, /* 0x8 */ + WMI_GRP_STA_PS, /* 0x9 */ + WMI_GRP_DFS, /* 0xa */ + WMI_GRP_ROAM, /* 0xb */ + WMI_GRP_OFL_SCAN, /* 0xc */ + WMI_GRP_P2P, /* 0xd */ + WMI_GRP_AP_PS, /* 0xe */ + WMI_GRP_RATE_CTRL, /* 0xf */ + WMI_GRP_PROFILE, /* 0x10 */ + WMI_GRP_SUSPEND, /* 0x11 */ + WMI_GRP_BCN_FILTER, /* 0x12 */ + WMI_GRP_WOW, /* 0x13 */ + WMI_GRP_RTT, /* 0x14 */ + WMI_GRP_SPECTRAL, /* 0x15 */ + WMI_GRP_STATS, /* 0x16 */ + WMI_GRP_ARP_NS_OFL, /* 0x17 */ + WMI_GRP_NLO_OFL, /* 0x18 */ + WMI_GRP_GTK_OFL, /* 0x19 */ + WMI_GRP_CSA_OFL, /* 0x1a */ + WMI_GRP_CHATTER, /* 0x1b */ + WMI_GRP_TID_ADDBA, /* 0x1c */ + WMI_GRP_MISC, /* 0x1d */ + WMI_GRP_GPIO, /* 0x1e */ + WMI_GRP_FWTEST, /* 0x1f */ + WMI_GRP_TDLS, /* 0x20 */ + WMI_GRP_RESMGR, /* 0x21 */ + WMI_GRP_STA_SMPS, /* 0x22 */ + WMI_GRP_WLAN_HB, /* 0x23 */ + WMI_GRP_RMC, /* 0x24 */ + WMI_GRP_MHF_OFL, /* 0x25 */ + WMI_GRP_LOCATION_SCAN, /* 0x26 */ + WMI_GRP_OEM, /* 0x27 */ + WMI_GRP_NAN, /* 0x28 */ + WMI_GRP_COEX, /* 0x29 */ + WMI_GRP_OBSS_OFL, /* 0x2a */ + WMI_GRP_LPI, /* 0x2b */ + WMI_GRP_EXTSCAN, /* 0x2c */ + WMI_GRP_DHCP_OFL, /* 0x2d */ + WMI_GRP_IPA, /* 0x2e */ + WMI_GRP_MDNS_OFL, /* 0x2f */ + WMI_GRP_SAP_OFL, /* 0x30 */ + WMI_GRP_OCB, /* 0x31 */ + WMI_GRP_SOC, /* 0x32 */ + WMI_GRP_PKT_FILTER, /* 0x33 */ + WMI_GRP_MAWC, /* 0x34 */ + WMI_GRP_PMF_OFFLOAD, /* 0x35 */ + WMI_GRP_BPF_OFFLOAD, /* 0x36 Berkeley Packet Filter */ + WMI_GRP_NAN_DATA, /* 0x37 */ + WMI_GRP_PROTOTYPE, /* 0x38 */ } WMI_GRP_ID; #define WMI_CMD_GRP_START_ID(grp_id) (((grp_id) << 12) | 0x1) @@ -5215,6 +5215,14 @@ typedef enum { * that AC; a value of 1 enables A-MPDU aggregation */ WMI_VDEV_PARAM_AMPDU_PER_AC, + + /* + * Vdev level rx filter of from-ds / to-ds / no-ds / ta / ra frames. + * Used mainly for mesh-vap. + * The parameter value delivered with the RX_FILTER vdev param contains + * a bit-or mask of wmi_vdev_param_filter enum values. + */ + WMI_VDEV_PARAM_RX_FILTER, } WMI_VDEV_PARAM; /* vdev capabilities bit mask */ @@ -5274,6 +5282,16 @@ typedef struct { A_UINT32 txbf_cap; } wmi_vdev_txbf_cap; +/* vdev rx filters (for mesh) */ +typedef enum { + WMI_VDEV_RX_ALLOW_ALL_FRAMES = 0x0, /* Don't drop any frames - Default */ + WMI_VDEV_RX_FILTER_OUT_FROMDS = 0x1, /* Drop FromDS frames */ + WMI_VDEV_RX_FILTER_OUT_TODS = 0x2, /* Drop ToDS frames */ + WMI_VDEV_RX_FILTER_OUT_NODS = 0x4, /* Drop NODS frames */ + WMI_VDEV_RX_FILTER_OUT_RA = 0x8, /* Drop RA frames */ + WMI_VDEV_RX_FILTER_OUT_TA = 0x10, /* Drop TA frames */ +} wmi_vdev_param_filter; + /* Length of ATIM Window in TU */ #define WMI_VDEV_PARAM_ATIM_WINDOW_LENGTH WMI_VDEV_PARAM_ATIM_WINDOW diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h index 775062f56eed..d73d10a8af48 100644 --- a/CORE/SERVICES/COMMON/wmi_version.h +++ b/CORE/SERVICES/COMMON/wmi_version.h @@ -36,7 +36,7 @@ #define __WMI_VER_MINOR_ 0 /** WMI revision number has to be incremented when there is a * change that may or may not break compatibility. */ -#define __WMI_REVISION_ 247 +#define __WMI_REVISION_ 248 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work |
