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

Commit e77f2952 authored by spuligil's avatar spuligil Committed by Gerrit - the friendly Code Review server
Browse files

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

Add WMI_ROAM_DSM_FILTER_CMD msg def

Change-Id: If5dbc53a16d18bf70e7b54a99716261b7431286d
CRs-Fixed: 2262693
parent 48f2b9b1
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -393,6 +393,7 @@ typedef enum {
    WMI_SERVICE_CHAN_RF_CHARACTERIZATION_INFO = 208, /* FW provides RF scores for chans in the service ready extension msg */
    WMI_SERVICE_FW_IFACE_COMBINATION_SUPPORT = 209, /* FW sends WMI_IFACE_COMBINATION_IND_EVENT msg immediately after WMI_SERVICE_READY_EXT_EVENT msg */
    WMI_SERVICE_TX_COMPL_TSF64 = 210, /* FW supports 64-bit tx TSF in HTT_T2H TX_COMPL_IND msg */
    WMI_SERVICE_DSM_ROAM_FILTER = 211, /* FW supports data stall AP mitigation while roaming */

    /******* ADD NEW SERVICES HERE *******/

+9 −0
Original line number Diff line number Diff line
@@ -981,6 +981,8 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_wlanfw_iface_cmb_ind_event_fixed_param,
    WMITLV_TAG_STRUC_wmi_wlanfw_iface_combination_param,
    WMITLV_TAG_STRUC_wmi_wlanfw_iface_limit_param,
    WMITLV_TAG_STRUC_wmi_roam_dsm_filter_fixed_param,
    WMITLV_TAG_STRUC_wmi_roam_bssid_disallow_list_config_param,
} WMITLV_TAG_ID;

/*
@@ -1379,6 +1381,7 @@ typedef enum {
    OP(WMI_ROAM_DEAUTH_CONFIG_CMDID) \
    OP(WMI_ROAM_IDLE_CONFIG_CMDID) \
    OP(WMI_IDLE_TRIGGER_MONITOR_CMDID) \
    OP(WMI_ROAM_DSM_FILTER_CMDID) \
    /* add new CMD_LIST elements above this line */


@@ -3050,6 +3053,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_IDLE_CONFIG_CMDID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_idle_trigger_monitor_cmd_fixed_param, wmi_idle_trigger_monitor_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_IDLE_TRIGGER_MONITOR_CMDID);

/* DSM roam filter parameters */
#define WMITLV_TABLE_WMI_ROAM_DSM_FILTER_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_dsm_filter_fixed_param, wmi_roam_dsm_filter_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_roam_bssid_disallow_list_config_param, bssid_disallow_list, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_DSM_FILTER_CMDID);

#define WMITLV_TABLE_WMI_ROAM_BLACKLIST_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_blacklist_event_fixed_param, wmi_roam_blacklist_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_roam_blacklist_with_timeout_tlv_param, blacklist_with_timeout, WMITLV_SIZE_VAR)
+59 −1
Original line number Diff line number Diff line
@@ -697,6 +697,8 @@ typedef enum {
    WMI_ROAM_DEAUTH_CONFIG_CMDID,
    /** Configure idle roam trigger parameters */
    WMI_ROAM_IDLE_CONFIG_CMDID,
    /** roaming filter cmd with DSM filters along with existing roam filters */
    WMI_ROAM_DSM_FILTER_CMDID,
    /** offload scan specific commands */
    /** set offload scan AP profile   */
@@ -23889,6 +23891,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
        WMI_RETURN_STRING(WMI_ROAM_DEAUTH_CONFIG_CMDID);
        WMI_RETURN_STRING(WMI_ROAM_IDLE_CONFIG_CMDID);
        WMI_RETURN_STRING(WMI_IDLE_TRIGGER_MONITOR_CMDID);
        WMI_RETURN_STRING(WMI_ROAM_DSM_FILTER_CMDID);
    }
    return "Invalid WMI cmd";
@@ -24786,7 +24789,8 @@ typedef struct {
     *          12 = 10MHz
     *          (13-15 unused)
     * [15:8 ]: Reserved
     * [31:16]: Frequency -  channel frequency of RF characteristic info (MHz)
     * [31:16]: Frequency - Center frequency of the channel for which
     *          the RF characterisation info applies (MHz)
     */
    A_UINT32 freq_info;
} WMI_CHAN_RF_CHARACTERIZATION_INFO;
@@ -25120,6 +25124,60 @@ typedef enum {
    WMI_IDLE_TRIGGER_MONITOR_OFF,
} WMI_SCREEN_STATUS_NOTIFY_ID;
typedef struct {
    /** TLV tag and len; tag equals wmi_roam_dsm_filter_fixed_param */
    A_UINT32 tlv_header;
    /** Unique id identifying the VDEV on which new roaming filter(data stall AP mitigation) is adopted */
    A_UINT32 vdev_id;
    /**
     * TLV (tag length value) parameter's following roam_dsm_filter_cmd are,
     *
     *  wmi_roam_bssid_disallow_list_config_param bssid_disallow_list[]; i.e array containing
     *  all roam filter lists including the new DSM lists(avoidlist/driver_blacklist) and
     *  existing roam lists(supplicant_blacklist/rssi_rejectlist etc.)
     */
} wmi_roam_dsm_filter_fixed_param;
typedef struct {
    /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_bssid_disallow_list_config_param */
    A_UINT32 tlv_header;
    /** bssid type i.e whether bssid falls in avoid list or driver_blacklist etc.
      see WMI_BSSID_DISALLOW_LIST_TYPE **/
    A_UINT32 bssid_type;
    /** mac address of disallow BSSID */
    wmi_mac_addr bssid;
    /** Disallow AP for certain duration, in units of milliseconds */
    A_UINT32 remaining_disallow_duration;
    /** AP will be allowed for candidate, when AP RSSI better than expected RSSI units in dBm */
    A_INT32 expected_rssi;
} wmi_roam_bssid_disallow_list_config_param;
typedef enum {
    /* USER_SPACE_BLACK_LIST
     * Black Listed AP's by host's user space
     */
    WMI_BSSID_DISALLOW_USER_SPACE_BLACK_LIST = 0,
    /* DRIVER_BLACK_LIST
     * Black Listed AP's by host driver
     * used for data stall migitation
     */
    WMI_BSSID_DISALLOW_DRIVER_BLACK_LIST,
    /* USER_SPACE_AVOID_LIST
     * Avoid List AP's by host's user space
     * used for data stall migitation
     */
    WMI_BSSID_DISALLOW_USER_SPACE_AVOID_LIST,
    /* DRIVER_AVOID_LIST
     * Avoid List AP's by host driver
     * used for data stall migitation
     */
    WMI_BSSID_DISALLOW_DRIVER_AVOID_LIST,
    /* RSSI_REJECT_LIST
     * OCE AP's
     */
    WMI_BSSID_DISALLOW_RSSI_REJECT_LIST,
} WMI_BSSID_DISALLOW_LIST_TYPE;
typedef struct {
    /*
     * The timestamp is in units of ticks of a 19.2MHz clock.
+1 −1
Original line number Diff line number Diff line
@@ -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_ 660
#define __WMI_REVISION_ 661

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