qcacmn: Make RX path changes for Agile Spectral
Change Spectral report processing logic to handle Agile Spectral reports. 160 MHz state machine is not affected by Agile Spectral reports. CRs-Fixed: 2458359 Change-Id: Iead6427f57edddd61f7d64a961cc6d936d54ab9e
Cette révision appartient à :

révisé par
nshrivas

Parent
cff882eb52
révision
cd6f190963
@@ -132,6 +132,34 @@
|
||||
/* End of section for values needing fine tuning. */
|
||||
/* End of temporary section for hard-coded values */
|
||||
|
||||
/**
|
||||
* enum spectral_msg_buf_type - Spectral message buffer type
|
||||
* @SPECTRAL_MSG_BUF_NEW: Allocate new buffer
|
||||
* @SPECTRAL_MSG_BUF_SAVED: Reuse last buffer, used for secondary segment report
|
||||
* in case of 160 MHz.
|
||||
*/
|
||||
enum spectral_msg_buf_type {
|
||||
SPECTRAL_MSG_BUF_NEW,
|
||||
SPECTRAL_MSG_BUF_SAVED,
|
||||
SPECTRAL_MSG_BUF_TYPE_MAX,
|
||||
};
|
||||
|
||||
/**
|
||||
* enum spectral_msg_type - Spectral SAMP message type
|
||||
* @SPECTRAL_MSG_NORMAL_MODE: Normal mode Spectral SAMP message
|
||||
* @SPECTRAL_MSG_AGILE_MODE: Agile mode Spectral SAMP message
|
||||
* @SPECTRAL_MSG_INTERFERENCE_NOTIFICATION: Interference notification to
|
||||
* external auto channel selection
|
||||
* entity
|
||||
* @SPECTRAL_MSG_TYPE_MAX: Spectral SAMP message type max
|
||||
*/
|
||||
enum spectral_msg_type {
|
||||
SPECTRAL_MSG_NORMAL_MODE,
|
||||
SPECTRAL_MSG_AGILE_MODE,
|
||||
SPECTRAL_MSG_INTERFERENCE_NOTIFICATION,
|
||||
SPECTRAL_MSG_TYPE_MAX,
|
||||
};
|
||||
|
||||
/**
|
||||
* enum wlan_cfg80211_spectral_vendorcmd_handler_idx - Indices to cfg80211
|
||||
* spectral vendor command handlers
|
||||
@@ -260,15 +288,21 @@ struct wlan_objmgr_pdev;
|
||||
|
||||
/**
|
||||
* struct spectral_nl_cb - Spectral Netlink callbacks
|
||||
* @get_nbuff: Get the socket buffer to send the data to the application
|
||||
* @get_sbuff: Get the socket buffer to send the data to the application
|
||||
* @send_nl_bcast: Send data to the application using netlink broadcast
|
||||
* @send_nl_unicast: Send data to the application using netlink unicast
|
||||
* @free_sbuff: Free the socket buffer for a particular message type
|
||||
*/
|
||||
struct spectral_nl_cb {
|
||||
void *(*get_nbuff)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*send_nl_bcast)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*send_nl_unicast)(struct wlan_objmgr_pdev *pdev);
|
||||
void (*free_nbuff)(struct wlan_objmgr_pdev *pdev);
|
||||
void *(*get_sbuff)(struct wlan_objmgr_pdev *pdev,
|
||||
enum spectral_msg_type smsg_type,
|
||||
enum spectral_msg_buf_type buf_type);
|
||||
int (*send_nl_bcast)(struct wlan_objmgr_pdev *pdev,
|
||||
enum spectral_msg_type smsg_type);
|
||||
int (*send_nl_unicast)(struct wlan_objmgr_pdev *pdev,
|
||||
enum spectral_msg_type smsg_type);
|
||||
void (*free_sbuff)(struct wlan_objmgr_pdev *pdev,
|
||||
enum spectral_msg_type smsg_type);
|
||||
};
|
||||
|
||||
/**
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur