qcacmn: Add wmi changes to send the T2LM command to FW
Add WMI changes to send preferred link to FW Change-Id: I8b8d7354d979705b1a938e9792de334c4faf65b6 CRs-Fixed: 3393604
此提交包含在:
@@ -23,6 +23,9 @@
|
||||
|
||||
#include <wlan_cmn_ieee80211.h>
|
||||
#include <wlan_mlo_mgr_public_structs.h>
|
||||
#ifdef WMI_AP_SUPPORT
|
||||
#include <wlan_cmn.h>
|
||||
#endif
|
||||
|
||||
struct mlo_vdev_host_tid_to_link_map_resp;
|
||||
struct wlan_mlo_dev_context;
|
||||
@@ -30,6 +33,11 @@ struct wlan_mlo_dev_context;
|
||||
/* Max T2LM TIDS count */
|
||||
#define T2LM_MAX_NUM_TIDS 8
|
||||
|
||||
#ifdef WMI_AP_SUPPORT
|
||||
/* Max no. of Preferred links */
|
||||
#define MAX_PREFERRED_LINKS 4
|
||||
#endif
|
||||
|
||||
/* Max T2LM callback handlers */
|
||||
#define MAX_T2LM_HANDLERS 50
|
||||
|
||||
@@ -64,6 +72,45 @@ enum wlan_t2lm_direction {
|
||||
WLAN_T2LM_INVALID_DIRECTION,
|
||||
};
|
||||
|
||||
#ifdef WMI_AP_SUPPORT
|
||||
/**
|
||||
* enum wlan_link_band_caps - Represents the band capability of
|
||||
* a link.
|
||||
*
|
||||
* @WLAN_LINK_BAND_INVALID: Invalid band
|
||||
* @WLAN_LINK_BAND_2GHZ: 2GHz link
|
||||
* @WLAN_LINK_BAND_5GHZ: 5GHz link
|
||||
* @WLAN_LINK_BAND_5GHZ_LOW: 5GHz Low band link
|
||||
* @WLAN_LINK_BAND_5GHZ_HIGH: 5GHz High band link
|
||||
* @WLAN_LINK_BAND_6GHZ: 6GHz link
|
||||
* @WLAN_LINK_BAND_6GHZ_LOW: 6GHz Low band link
|
||||
* @WLAN_LINK_BAND_6GHZ_HIGH: 6GHz High band link
|
||||
*/
|
||||
enum wlan_link_band_caps {
|
||||
WLAN_LINK_BAND_INVALID = 0,
|
||||
WLAN_LINK_BAND_2GHZ = 1,
|
||||
WLAN_LINK_BAND_5GHZ = 2,
|
||||
WLAN_LINK_BAND_5GHZ_LOW = 3,
|
||||
WLAN_LINK_BAND_5GHZ_HIGH = 4,
|
||||
WLAN_LINK_BAND_6GHZ = 5,
|
||||
WLAN_LINK_BAND_6GHZ_LOW = 6,
|
||||
WLAN_LINK_BAND_6GHZ_HIGH = 7,
|
||||
};
|
||||
|
||||
/**
|
||||
* struct wlan_link_preference - Preferred link structure
|
||||
* @num_pref_links: non-zero values indicate that preferred link order
|
||||
* is present.
|
||||
* @pref_order: Preferred links in order.it is in form of hardware link id.
|
||||
* @timeout: timeout values for all the access categories.
|
||||
*/
|
||||
struct wlan_link_preference {
|
||||
uint8_t num_pref_links;
|
||||
uint8_t pref_order[MAX_PREFERRED_LINKS];
|
||||
uint32_t timeout[WIFI_AC_MAX];
|
||||
};
|
||||
#endif
|
||||
|
||||
/**
|
||||
* struct wlan_t2lm_info - TID-to-Link mapping information for the frames
|
||||
* transmitted on the uplink, downlink and bidirectional.
|
||||
@@ -173,10 +220,14 @@ enum wlan_t2lm_enable {
|
||||
*
|
||||
* @dialog_token: Save the dialog token used in T2LM request and response frame.
|
||||
* @t2lm_info: Provides the TID to LINK mapping information
|
||||
* @link_preference: Provides the preferred link information
|
||||
*/
|
||||
struct wlan_prev_t2lm_negotiated_info {
|
||||
uint16_t dialog_token;
|
||||
struct wlan_t2lm_info t2lm_info[WLAN_T2LM_MAX_DIRECTION];
|
||||
#ifdef WMI_AP_SUPPORT
|
||||
struct wlan_link_preference link_preference;
|
||||
#endif
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -188,6 +239,10 @@ struct wlan_prev_t2lm_negotiated_info {
|
||||
* @t2lm_info: Provides the TID-to-link mapping info for UL/DL/BiDi
|
||||
* @t2lm_tx_status: Status code corresponds to the transmitted T2LM frames
|
||||
* @t2lm_resp_type: T2LM status corresponds to T2LM response frame.
|
||||
* @link_preference: Provides the preferred link information
|
||||
* @t2lm_info_present: It will show the t2lm_info present or not
|
||||
* @pref_link_present: It will show the preference link is present or not
|
||||
* @ml_grp_id: MLO Group id which it belongs to
|
||||
*/
|
||||
struct wlan_t2lm_onging_negotiation_info {
|
||||
enum wlan_t2lm_category category;
|
||||
@@ -195,6 +250,12 @@ struct wlan_t2lm_onging_negotiation_info {
|
||||
struct wlan_t2lm_info t2lm_info[WLAN_T2LM_MAX_DIRECTION];
|
||||
enum wlan_t2lm_tx_status t2lm_tx_status;
|
||||
enum wlan_t2lm_resp_frm_type t2lm_resp_type;
|
||||
#ifdef WMI_AP_SUPPORT
|
||||
struct wlan_link_preference link_preference;
|
||||
bool t2lm_info_present;
|
||||
bool pref_link_present;
|
||||
uint8_t ml_grp_id;
|
||||
#endif
|
||||
};
|
||||
|
||||
/**
|
||||
|
新增問題並參考
封鎖使用者