Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8004f23e authored by spuligil's avatar spuligil Committed by Ravindra Konda
Browse files

fw-api: CL 25663374 - update fw common interface files

Add OBSS interference info in DCS_INTERFERENCE_EVENT msg

Change-Id: I157d83ca5083e5fa14ff978d73e943a046d19f9f
CRs-Fixed: 2262693
parent c068c23f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -652,6 +652,7 @@ typedef enum {
    WMI_SERVICE_VDEV_DCS_STATS_SUPPORT = 399, /* FW supports VDEV level DCS stats reporting */
    WMI_SERVICE_WIFI_RADAR_SUPPORT = 400, /* FW supports wifi radar */
    WMI_SERVICE_P2P_DEVICE_UPDATE_MAC_ADDR_SUPPORT = 401, /* indicate FW support dynamic update mac address for P2P device */
    WMI_SERVICE_DCS_OBSS_INT_SUPPORT = 402, /* Indicates FW supports OBSS Interference detection */


    WMI_MAX_EXT2_SERVICE
+3 −1
Original line number Diff line number Diff line
@@ -1425,6 +1425,7 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_pdev_enable_wifi_radar_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_dma_buf_release_wifi_radar_meta_data,
    WMITLV_TAG_STRUC_wmi_mlo_link_info,
    WMITLV_TAG_STRUC_wmi_dcs_obss_int_t,
} WMITLV_TAG_ID;
/*
 * IMPORTANT: Please add _ALL_ WMI Commands Here.
@@ -6059,7 +6060,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_GTK_OFFLOAD_STATUS_EVENTID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_dcs_interference_event_fixed_param, wmi_dcs_interference_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wlan_dcs_cw_int, cw_int, WMITLV_SIZE_VAR) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wlan_dcs_im_tgt_stats_t, wlan_stat, WMITLV_SIZE_VAR) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dcs_awgn_int_t, awgn_int, WMITLV_SIZE_VAR)
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dcs_awgn_int_t, awgn_int, WMITLV_SIZE_VAR) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dcs_obss_int_t, obss_int, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_DCS_INTERFERENCE_EVENTID);

/* Profile data Event */
+32 −3
Original line number Diff line number Diff line
@@ -21300,6 +21300,32 @@ typedef struct wlan_dcs_awgn_info {
    A_UINT32 chan_bw_interference_bitmap;
} wmi_dcs_awgn_int_t;
typedef struct wlan_dcs_obss_info {
    /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_dcs_obss_int_t */
    A_UINT32 tlv_header;
    /** Channel width (20, 40, 80, 80+80, 160, 320) enum wmi_channel_width */
    A_UINT32 channel_width;
    /** Primary channel frequency (MHz) */
    A_UINT32 chan_freq;
    /** center frequency (MHz) first segment */
    A_UINT32 center_freq0;
    /** center frequency (MHz) second segment */
    A_UINT32 center_freq1;
    /* chan_bw_interference_bitmap:
     * Indicates which 20MHz segments contain interference
     *  320 MHz: bits 0-15
     *  160 MHz: bits 0-7
     *   80 MHz: bits 0-3
     * Within the bitmap, Bit-0 represents lowest 20Mhz, Bit-1 represents
     * second lowest 20Mhz and so on.
     * Each bit position will indicate 20MHz in which interference is seen.
     * (Valid 16 bits out of 32 bit integer)
     * Note: for 11be, the interference present 20MHz can be punctured
     * for better channel utilization.
     */
    A_UINT32 chan_bw_interference_bitmap;
} wmi_dcs_obss_int_t;
/**
 *  wmi_dcs_interference_event_t
 *
@@ -21316,6 +21342,8 @@ typedef struct {
     *  ATH_CAP_DCS_CWIM   0x01
     *  ATH_CAP_DCS_WLANIM 0x02
     *  ATH_CAP_DCS_AGWNIM 0x04
     *  reserved (AFC)     0x08
     *  ATH_CAP_DCS_OBSSIM 0x10
     */
    A_UINT32 interference_type; /* type of interference, wlan, cw, or AWGN */
    /** pdev_id for identifying the MAC
@@ -21336,7 +21364,8 @@ typedef struct {
 *
 *       wlan_dcs_cw_int            cw_int[];   <-- cw_interference event
 *       wlan_dcs_im_tgt_stats_t   wlan_stat[]; <-- wlan im interference stats
 *       wmi_dcs_awgn_int_t        awgn_int[];  <-- Additive white Gaussian noise (awgn) interference
 *       wmi_dcs_awgn_int_t        awgn_int[];  <-- Additive white Gaussian noise (AWGN) interference
 *       wmi_dcs_obss_int_t        obss_int[];  <-- Overlapping Basic Service Set (OBSS) interference
 */
} wmi_dcs_interference_event_fixed_param;
@@ -37699,8 +37728,8 @@ typedef struct {
 * This fixed_param TLV is followed by the following TLVs:
 *   - wmi_regulatory_rule_ext reg_rule_array[] struct TLV array.
 *     Within the reg rule ext TLV array, the 2G elements occur first,
 *     then the 5G elements, then the 6G elements (AP SG, AP LPI, AP VLP,
 *     client SP x4, client LPI x4, client vlp x4).
 *     then the 5G elements, then the 6G elements (AP LPI, AP SP, AP VLP,
 *     client LPI x4, client SP x4, client VLP x4).
 *   - wmi_regulatory_chan_priority_struct reg_chan_priority[]
 *   - wmi_regulatory_fcc_rule_struct reg_fcc_rule[]
 */
+1 −1
Original line number Diff line number Diff line
@@ -37,7 +37,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_ 1432
#define __WMI_REVISION_ 1433

/** The Version Namespace should not be normally changed. Only
 *  host and firmware of the same WMI namespace will work