qcacld-3.0: Set direct link when its vdev is up
When Vdev for direct link is up, set packets for this vdev to route to firmware and only enter d0 WOW. If the AP profile is HOST_CONCURRENT_AP_POLICY_GAMING_AUDIO, prevent link to go to low power states to reduce latency. Change-Id: I9fa2ab06983db8767d8b48b74e30602e07294fe2 CRs-Fixed: 3330207
Esse commit está contido em:

commit de
Madan Koyyalamudi

pai
bff1e3aa36
commit
a3e72a6e91
@@ -1395,6 +1395,18 @@ QDF_STATUS ucfg_dp_wfds_new_server(void);
|
||||
* Return: None
|
||||
*/
|
||||
void ucfg_dp_wfds_del_server(void);
|
||||
|
||||
/**
|
||||
* ucfg_dp_config_direct_link() - Set direct link config for vdev
|
||||
* @vdev: objmgr Vdev handle
|
||||
* @config_direct_link: Flag to enable direct link path
|
||||
* @enable_low_latency: Flag to enable low link latency
|
||||
*
|
||||
* Return: QDF Status
|
||||
*/
|
||||
QDF_STATUS ucfg_dp_config_direct_link(struct wlan_objmgr_vdev *vdev,
|
||||
bool config_direct_link,
|
||||
bool enable_low_latency);
|
||||
#else
|
||||
static inline
|
||||
QDF_STATUS ucfg_dp_direct_link_init(struct wlan_objmgr_psoc *psoc)
|
||||
@@ -1427,5 +1439,13 @@ static inline void ucfg_dp_wfds_del_server(void)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
static inline
|
||||
QDF_STATUS ucfg_dp_config_direct_link(struct wlan_objmgr_vdev *vdev,
|
||||
bool enable_direct_link,
|
||||
bool enable_low_latency)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif
|
||||
#endif /* _WLAN_DP_UCFG_API_H_ */
|
||||
|
@@ -122,6 +122,9 @@ ucfg_dp_destroy_intf(struct wlan_objmgr_psoc *psoc,
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
if (dp_intf->device_mode == QDF_SAP_MODE)
|
||||
dp_config_direct_link(dp_intf, false, false);
|
||||
|
||||
dp_periodic_sta_stats_mutex_destroy(dp_intf);
|
||||
dp_nud_deinit_tracking(dp_intf);
|
||||
dp_mic_deinit_work(dp_intf);
|
||||
@@ -2372,4 +2375,19 @@ void ucfg_dp_wfds_del_server(void)
|
||||
{
|
||||
dp_wfds_del_server();
|
||||
}
|
||||
|
||||
QDF_STATUS ucfg_dp_config_direct_link(struct wlan_objmgr_vdev *vdev,
|
||||
bool config_direct_link,
|
||||
bool enable_low_latency)
|
||||
{
|
||||
struct wlan_dp_intf *dp_intf = dp_get_vdev_priv_obj(vdev);
|
||||
|
||||
if (!dp_intf) {
|
||||
dp_err("Unable to get DP interface");
|
||||
return QDF_STATUS_E_INVAL;
|
||||
}
|
||||
|
||||
return dp_config_direct_link(dp_intf, config_direct_link,
|
||||
enable_low_latency);
|
||||
}
|
||||
#endif
|
||||
|
Referência em uma nova issue
Block a user