diff options
| author | Visweswara Tanuku <vtanuku@codeaurora.org> | 2018-09-18 18:04:42 +0530 |
|---|---|---|
| committer | Visweswara Tanuku <vtanuku@codeaurora.org> | 2018-09-18 18:31:57 +0530 |
| commit | e44bfb707d4c7188a8a8fedbb74aefdf9ad8cbb6 (patch) | |
| tree | 0d065699640df41b29e7174d4235b0e4a169f381 | |
| parent | 3fd6b3425f30d8e1c8fbd9b3a69e05e5ea9fd02c (diff) | |
qcacld-2.0: CL 4962465 - Update fw common interface files
WMI: add OBSS_PD_SPATIAL_REUSE_CMD msg def
CRs-fixed: 865207
Change-Id: I6e29d0d3f688ccfc50e3a3d81d1bb7285c3d8fb4
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_services.h | 1 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_tlv_defs.h | 6 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_unified.h | 26 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_version.h | 2 | ||||
| -rw-r--r-- | CORE/SERVICES/WMI/wmi_unified.c | 2 |
5 files changed, 35 insertions, 2 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_services.h b/CORE/SERVICES/COMMON/wmi_services.h index a33fbffaf3f3..1c65aa9ca521 100644 --- a/CORE/SERVICES/COMMON/wmi_services.h +++ b/CORE/SERVICES/COMMON/wmi_services.h @@ -349,6 +349,7 @@ typedef enum { WMI_SERVICE_DUAL_BEACON_ON_SINGLE_MAC_MCC_SUPPORT=159, /* Support dual beacon on different channel on single MAC */ WMI_SERVICE_MOTION_DET=160, /* support for motion detection config */ WMI_SERVICE_INFRA_MBSSID=161, /* support infra multi-BSSID feature */ + WMI_SERVICE_OBSS_SPATIAL_REUSE=162, /* support spatial reuse feature */ /******* ADD NEW SERVICES HERE *******/ diff --git a/CORE/SERVICES/COMMON/wmi_tlv_defs.h b/CORE/SERVICES/COMMON/wmi_tlv_defs.h index 0cc7dfee771e..86ed1abdbb71 100644 --- a/CORE/SERVICES/COMMON/wmi_tlv_defs.h +++ b/CORE/SERVICES/COMMON/wmi_tlv_defs.h @@ -916,6 +916,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_motion_det_event, WMITLV_TAG_STRUC_wmi_motion_det_base_line_event, WMITLV_TAG_STRUC_wmi_ndp_transport_ip_param, + WMITLV_TAG_STRUC_wmi_obss_spatial_reuse_set_cmd_fixed_param, } WMITLV_TAG_ID; /* @@ -1292,6 +1293,7 @@ typedef enum { OP(WMI_MOTION_DET_BASE_LINE_CONFIG_PARAM_CMDID) \ OP(WMI_MOTION_DET_START_STOP_CMDID) \ OP(WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID) \ + OP(WMI_PDEV_OBSS_PD_SPATIAL_REUSE_CMDID) \ /* add new CMD_LIST elements above this line */ /* @@ -2628,6 +2630,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_TWT_RESUME_DIALOG_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_tid_configurations_cmd_fixed_param, wmi_peer_tid_configurations_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_PEER_TID_CONFIGURATIONS_CMDID); +/* OBSS_PD Spatial_Reuse cnmd */ +#define WMITLV_TABLE_WMI_PDEV_OBSS_PD_SPATIAL_REUSE_CMDID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_obss_spatial_reuse_set_cmd_fixed_param, wmi_obss_spatial_reuse_set_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_OBSS_PD_SPATIAL_REUSE_CMDID); WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_DELETE_CMDID); diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h index 77423c84aebe..29f1055b2854 100644 --- a/CORE/SERVICES/COMMON/wmi_unified.h +++ b/CORE/SERVICES/COMMON/wmi_unified.h @@ -245,6 +245,7 @@ typedef enum { WMI_GRP_11K_OFFLOAD, /* 0x3d */ WMI_GRP_TWT, /* 0x3e TWT (Target Wake Time) for STA and AP */ WMI_GRP_MOTION_DET, /* 0x3f */ + WMI_GRP_SPATIAL_REUSE, /* 0x40 */ } WMI_GRP_ID; #define WMI_CMD_GRP_START_ID(grp_id) (((grp_id) << 12) | 0x1) @@ -1140,6 +1141,9 @@ typedef enum { WMI_MOTION_DET_BASE_LINE_CONFIG_PARAM_CMDID, WMI_MOTION_DET_START_STOP_CMDID, WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID, + + /** WMI commands related to OBSS PD Spatial Reuse **/ + WMI_PDEV_OBSS_PD_SPATIAL_REUSE_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_SPATIAL_REUSE), } WMI_CMD_ID; typedef enum { @@ -22927,6 +22931,28 @@ typedef struct { * phase (in %); reserved for future */ } wmi_motion_det_base_line_event; +/* Below structures are related to OBSS_PD_SPATIAL Reuse */ +typedef struct { + /** TLV tag and len; tag equals + * WMITLV_TAG_STRUC_wmi_obss_set_cmd_fixed_param */ + A_UINT32 tlv_header; + /** Enable/Disable Spatial Reuse */ + A_UINT32 enable; + /* + * In the below fields, "OBSS level" refers to the power of the + * signals received from "Other BSS". + * Spatial reuse will only be permitted if the Other BSS's signal power + * is witin the min to max range specified by the below fields. + */ + /** Minimum OBSS level to use */ + A_INT32 obss_min; /* RSSI in dBm */ + /** Maximum OBSS level to use */ + A_INT32 obss_max; /* RSSI in dBm */ + /** Vdev id*/ + A_UINT32 vdev_id; +} wmi_obss_spatial_reuse_set_cmd_fixed_param; + + /* bit 17-31 of flags is reserved for powersave and WAL */ #define WLM_FLAGS_SCAN_IS_SUPPRESS(flag) WMI_GET_BITS(flag, 0, 1) diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h index df72a9e3d086..224f22efcb03 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_ 554 +#define __WMI_REVISION_ 555 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work diff --git a/CORE/SERVICES/WMI/wmi_unified.c b/CORE/SERVICES/WMI/wmi_unified.c index a9cc74616d36..3025f701a545 100644 --- a/CORE/SERVICES/WMI/wmi_unified.c +++ b/CORE/SERVICES/WMI/wmi_unified.c @@ -794,7 +794,7 @@ static u_int8_t* get_wmi_cmd_string(WMI_CMD_ID wmi_command) CASE_RETURN_STRING(WMI_MOTION_DET_START_STOP_CMDID); CASE_RETURN_STRING(WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID); CASE_RETURN_STRING(WMI_MOTION_DET_CONFIG_PARAM_CMDID); - + CASE_RETURN_STRING(WMI_PDEV_OBSS_PD_SPATIAL_REUSE_CMDID); } return "Invalid WMI cmd"; } |
