Loading fw/wmi_tlv_defs.h +10 −0 Original line number Diff line number Diff line Loading @@ -1051,6 +1051,8 @@ typedef enum { WMITLV_TAG_STRUC_wmi_nan_dmesg_event_fixed_param, WMITLV_TAG_STRUC_wmi_frame_inject_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_smartant_event_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_sync_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_rnr_bss_tbtt_info, } WMITLV_TAG_ID; /* Loading Loading @@ -1481,6 +1483,7 @@ typedef enum { OP(WMI_ROAM_GET_SCAN_CHANNEL_LIST_CMDID) \ OP(WMI_VDEV_GET_BIG_DATA_CMDID) \ OP(WMI_PDEV_FRAME_INJECT_CMDID) \ OP(WMI_PDEV_TBTT_OFFSET_SYNC_CMDID) \ /* add new CMD_LIST elements above this line */ Loading Loading @@ -4302,6 +4305,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_BIG_DATA_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, bufp, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_FRAME_INJECT_CMDID); /* Get / Set RNR TBTT offset info */ #define WMITLV_TABLE_WMI_PDEV_TBTT_OFFSET_SYNC_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_sync_cmd_fixed_param, wmi_pdev_tbtt_offset_sync_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pdev_rnr_bss_tbtt_info, rnr_tbtt_info, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_TBTT_OFFSET_SYNC_CMDID); /************************** TLV definitions of WMI events *******************************/ Loading Loading @@ -5797,6 +5806,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SEND_BIG_DATA_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, msg, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_NAN_DMESG_EVENTID); #ifdef __cplusplus } #endif Loading fw/wmi_unified.h +61 −0 Original line number Diff line number Diff line Loading @@ -414,6 +414,14 @@ typedef enum { WMI_PDEV_DSM_FILTER_CMDID, /** enable/disable periodic frame injection */ WMI_PDEV_FRAME_INJECT_CMDID, /* * Pdev level command to: * a) solicit @WMI_TBTTOFFSET_EXT_UPDATE_EVENTID having TBTT in qtime * domain for all active vdevs or * b) update one pdevs tbtt offset to another pdev for use in * RNR TBTT offset calculation. */ WMI_PDEV_TBTT_OFFSET_SYNC_CMDID, /* VDEV (virtual device) specific commands */ /** vdev create */ Loading Loading @@ -3518,6 +3526,14 @@ typedef struct { * Bits 31:1 - Reserved */ A_UINT32 host_service_flags; /** @brief max_rnr_neighbours - * The Maximum number of neighbour RNR's from other SoC. * This limits the field @num_bss in @wmi_pdev_tbtt_offset_sync_cmd_fixed_param. * Value of 0 means crosss SoC TBTT offset syncronization not required and * @PDEV_TBTT_OFFSET_SYNC_CMD wouldn't be used. */ A_UINT32 max_rnr_neighbours; } wmi_resource_config; #define WMI_MSDU_FLOW_AST_ENABLE_GET(msdu_flow_config0, ast_x) \ Loading Loading @@ -11722,6 +11738,7 @@ typedef struct { */ } wmi_tbtt_offset_event_fixed_param; #define WMI_TBTT_OFFSET_INVALID 0xffffffff /* tbttoffset is not updated by FW */ typedef struct { A_UINT32 tlv_header;/* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_tbtt_offset_info */ /** unique id identifying the VDEV */ Loading Loading @@ -24211,6 +24228,49 @@ typedef struct { **/ } wmi_vdev_set_pcl_cmd_fixed_param; /** command type for WMI_PDEV_TBTT_OFFSET_SYNC_CMDID */ enum pdev_tbtt_offset_cmd_type { WMI_PDEV_GET_TBTT_OFFSET, WMI_PDEV_SET_TBTT_OFFSET, }; /** Per neighbour TBTT offset information */ typedef struct { /** TLV tag and len, tag equals WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_info */ A_UINT32 tlv_header; /* neighbour bss mac address */ wmi_mac_addr bss_mac; /* neighbour bss beacon interval in TU */ A_UINT32 beacon_intval; /* neighbour bss operating class as defined in Annex E, IEEE80211 standard */ A_UINT32 opclass; /* neighbour bss operating channel index */ A_UINT32 chan_idx; /* neighbour bss next QTIME TBTT high 32 bit value */ A_UINT32 next_qtime_tbtt_high; /* neighbour bss next QTIME TBTT low 32 bit value */ A_UINT32 next_qtime_tbtt_low; } wmi_pdev_rnr_bss_tbtt_info; typedef struct { /** TLV tag and len; tag equals * WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_sync_cmd_fixed_param */ A_UINT32 tlv_header; /* * PDEV identifier. Value WMI_PDEV_ID_SOC implies applicable to all pdevs * on SoC else applicable only to specified pdev */ A_UINT32 pdev_id; /* command_type from enum pdev_tbtt_offset_cmd_type */ A_UINT32 cmd_type; /* * Following this structure is the TLV: * struct wmi_pdev_rnr_bss_tbtt_info rnr_tbtt_info[num_rnr_tbtt_info]; */ } wmi_pdev_tbtt_offset_sync_cmd_fixed_param; typedef enum { WLAN_2G_CAPABILITY = 0x1, WLAN_5G_CAPABILITY = 0x2, Loading Loading @@ -25484,6 +25544,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_ROAM_GET_SCAN_CHANNEL_LIST_CMDID); WMI_RETURN_STRING(WMI_VDEV_GET_BIG_DATA_CMDID); WMI_RETURN_STRING(WMI_PDEV_FRAME_INJECT_CMDID); WMI_RETURN_STRING(WMI_PDEV_TBTT_OFFSET_SYNC_CMDID); } return "Invalid WMI cmd"; fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -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_ 793 #define __WMI_REVISION_ 794 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading Loading
fw/wmi_tlv_defs.h +10 −0 Original line number Diff line number Diff line Loading @@ -1051,6 +1051,8 @@ typedef enum { WMITLV_TAG_STRUC_wmi_nan_dmesg_event_fixed_param, WMITLV_TAG_STRUC_wmi_frame_inject_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_smartant_event_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_sync_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_rnr_bss_tbtt_info, } WMITLV_TAG_ID; /* Loading Loading @@ -1481,6 +1483,7 @@ typedef enum { OP(WMI_ROAM_GET_SCAN_CHANNEL_LIST_CMDID) \ OP(WMI_VDEV_GET_BIG_DATA_CMDID) \ OP(WMI_PDEV_FRAME_INJECT_CMDID) \ OP(WMI_PDEV_TBTT_OFFSET_SYNC_CMDID) \ /* add new CMD_LIST elements above this line */ Loading Loading @@ -4302,6 +4305,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_BIG_DATA_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, bufp, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_FRAME_INJECT_CMDID); /* Get / Set RNR TBTT offset info */ #define WMITLV_TABLE_WMI_PDEV_TBTT_OFFSET_SYNC_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_sync_cmd_fixed_param, wmi_pdev_tbtt_offset_sync_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pdev_rnr_bss_tbtt_info, rnr_tbtt_info, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_TBTT_OFFSET_SYNC_CMDID); /************************** TLV definitions of WMI events *******************************/ Loading Loading @@ -5797,6 +5806,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SEND_BIG_DATA_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, msg, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_NAN_DMESG_EVENTID); #ifdef __cplusplus } #endif Loading
fw/wmi_unified.h +61 −0 Original line number Diff line number Diff line Loading @@ -414,6 +414,14 @@ typedef enum { WMI_PDEV_DSM_FILTER_CMDID, /** enable/disable periodic frame injection */ WMI_PDEV_FRAME_INJECT_CMDID, /* * Pdev level command to: * a) solicit @WMI_TBTTOFFSET_EXT_UPDATE_EVENTID having TBTT in qtime * domain for all active vdevs or * b) update one pdevs tbtt offset to another pdev for use in * RNR TBTT offset calculation. */ WMI_PDEV_TBTT_OFFSET_SYNC_CMDID, /* VDEV (virtual device) specific commands */ /** vdev create */ Loading Loading @@ -3518,6 +3526,14 @@ typedef struct { * Bits 31:1 - Reserved */ A_UINT32 host_service_flags; /** @brief max_rnr_neighbours - * The Maximum number of neighbour RNR's from other SoC. * This limits the field @num_bss in @wmi_pdev_tbtt_offset_sync_cmd_fixed_param. * Value of 0 means crosss SoC TBTT offset syncronization not required and * @PDEV_TBTT_OFFSET_SYNC_CMD wouldn't be used. */ A_UINT32 max_rnr_neighbours; } wmi_resource_config; #define WMI_MSDU_FLOW_AST_ENABLE_GET(msdu_flow_config0, ast_x) \ Loading Loading @@ -11722,6 +11738,7 @@ typedef struct { */ } wmi_tbtt_offset_event_fixed_param; #define WMI_TBTT_OFFSET_INVALID 0xffffffff /* tbttoffset is not updated by FW */ typedef struct { A_UINT32 tlv_header;/* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_tbtt_offset_info */ /** unique id identifying the VDEV */ Loading Loading @@ -24211,6 +24228,49 @@ typedef struct { **/ } wmi_vdev_set_pcl_cmd_fixed_param; /** command type for WMI_PDEV_TBTT_OFFSET_SYNC_CMDID */ enum pdev_tbtt_offset_cmd_type { WMI_PDEV_GET_TBTT_OFFSET, WMI_PDEV_SET_TBTT_OFFSET, }; /** Per neighbour TBTT offset information */ typedef struct { /** TLV tag and len, tag equals WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_info */ A_UINT32 tlv_header; /* neighbour bss mac address */ wmi_mac_addr bss_mac; /* neighbour bss beacon interval in TU */ A_UINT32 beacon_intval; /* neighbour bss operating class as defined in Annex E, IEEE80211 standard */ A_UINT32 opclass; /* neighbour bss operating channel index */ A_UINT32 chan_idx; /* neighbour bss next QTIME TBTT high 32 bit value */ A_UINT32 next_qtime_tbtt_high; /* neighbour bss next QTIME TBTT low 32 bit value */ A_UINT32 next_qtime_tbtt_low; } wmi_pdev_rnr_bss_tbtt_info; typedef struct { /** TLV tag and len; tag equals * WMITLV_TAG_STRUC_wmi_pdev_tbtt_offset_sync_cmd_fixed_param */ A_UINT32 tlv_header; /* * PDEV identifier. Value WMI_PDEV_ID_SOC implies applicable to all pdevs * on SoC else applicable only to specified pdev */ A_UINT32 pdev_id; /* command_type from enum pdev_tbtt_offset_cmd_type */ A_UINT32 cmd_type; /* * Following this structure is the TLV: * struct wmi_pdev_rnr_bss_tbtt_info rnr_tbtt_info[num_rnr_tbtt_info]; */ } wmi_pdev_tbtt_offset_sync_cmd_fixed_param; typedef enum { WLAN_2G_CAPABILITY = 0x1, WLAN_5G_CAPABILITY = 0x2, Loading Loading @@ -25484,6 +25544,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_ROAM_GET_SCAN_CHANNEL_LIST_CMDID); WMI_RETURN_STRING(WMI_VDEV_GET_BIG_DATA_CMDID); WMI_RETURN_STRING(WMI_PDEV_FRAME_INJECT_CMDID); WMI_RETURN_STRING(WMI_PDEV_TBTT_OFFSET_SYNC_CMDID); } return "Invalid WMI cmd";
fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -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_ 793 #define __WMI_REVISION_ 794 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading