qcacmn: Add VDEV MLME support for SR Prohibit
Add VDEV MLME variables, function to support SR prohibit Enable / Disable Change-Id: I9b6128f179880dd407dc042f6bbbbde63135f4ed CRs-Fixed: 3308159
This commit is contained in:

committed by
Madan Koyyalamudi

parent
8f76bf1455
commit
c7964d96d6
@@ -382,8 +382,9 @@ struct vdev_mlme_mgmt_generic {
|
|||||||
uint8_t he_spr_srg_max_pd_offset;
|
uint8_t he_spr_srg_max_pd_offset;
|
||||||
uint8_t he_spr_srg_min_pd_offset;
|
uint8_t he_spr_srg_min_pd_offset;
|
||||||
bool he_spr_enabled;
|
bool he_spr_enabled;
|
||||||
int32_t pd_threshold;
|
|
||||||
bool he_spr_disabled_due_conc;
|
bool he_spr_disabled_due_conc;
|
||||||
|
bool sr_prohibit_enabled;
|
||||||
|
int32_t pd_threshold;
|
||||||
uint64_t srg_bss_color;
|
uint64_t srg_bss_color;
|
||||||
uint64_t srg_partial_bssid;
|
uint64_t srg_partial_bssid;
|
||||||
#endif
|
#endif
|
||||||
@@ -1275,6 +1276,30 @@ bool wlan_vdev_mlme_is_sr_disable_due_conc(struct wlan_objmgr_vdev *vdev)
|
|||||||
return vdev_mlme->mgmt.generic.he_spr_disabled_due_conc;
|
return vdev_mlme->mgmt.generic.he_spr_disabled_due_conc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_vdev_mlme_is_sr_prohibit_en() - spatial reuse PD prohibit enabled
|
||||||
|
* / disabled (HE_SIGA_Val15_Allowed)
|
||||||
|
* @vdev: VDEV object
|
||||||
|
*
|
||||||
|
* API to check whether the spatial reuse PD prohibit is enabled / disabled
|
||||||
|
*
|
||||||
|
* Caller need to acquire lock with wlan_vdev_obj_lock()
|
||||||
|
*
|
||||||
|
* Return:
|
||||||
|
* @sr_prohibit_enabled: Spatial reuse PD prohibit enabled / disabled
|
||||||
|
*/
|
||||||
|
static inline
|
||||||
|
bool wlan_vdev_mlme_is_sr_prohibit_en(struct wlan_objmgr_vdev *vdev)
|
||||||
|
{
|
||||||
|
struct vdev_mlme_obj *vdev_mlme;
|
||||||
|
|
||||||
|
vdev_mlme = wlan_vdev_mlme_get_cmpt_obj(vdev);
|
||||||
|
if (!vdev_mlme)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return vdev_mlme->mgmt.generic.sr_prohibit_enabled;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wlan_vdev_mlme_set_sr_ctrl() - set spatial reuse SR control
|
* wlan_vdev_mlme_set_sr_ctrl() - set spatial reuse SR control
|
||||||
* @vdev: VDEV object
|
* @vdev: VDEV object
|
||||||
@@ -1367,6 +1392,31 @@ void wlan_vdev_mlme_set_sr_disable_due_conc(struct wlan_objmgr_vdev *vdev,
|
|||||||
he_spr_disabled_due_conc;
|
he_spr_disabled_due_conc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wlan_vdev_mlme_set_sr_prohibit_en() - set spatial reuse PD prohibit enabled
|
||||||
|
* / disabled (HE_SIGA_Val15_Allowed)
|
||||||
|
* @vdev: VDEV object
|
||||||
|
* @sr_prohibit_enabled: True / False - PD Prohibit enabled / disabled
|
||||||
|
*
|
||||||
|
* API to set spatial reuse PD prohibit enabled / disabled
|
||||||
|
*
|
||||||
|
* Caller need to acquire lock with wlan_vdev_obj_lock()
|
||||||
|
*
|
||||||
|
* Return: void
|
||||||
|
*/
|
||||||
|
static inline
|
||||||
|
void wlan_vdev_mlme_set_sr_prohibit_en(struct wlan_objmgr_vdev *vdev,
|
||||||
|
bool sr_prohibit_enabled)
|
||||||
|
{
|
||||||
|
struct vdev_mlme_obj *vdev_mlme;
|
||||||
|
|
||||||
|
vdev_mlme = wlan_vdev_mlme_get_cmpt_obj(vdev);
|
||||||
|
if (!vdev_mlme)
|
||||||
|
return;
|
||||||
|
|
||||||
|
vdev_mlme->mgmt.generic.sr_prohibit_enabled = sr_prohibit_enabled;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wlan_vdev_mlme_set_srg_pd_offset() - set spatial reuse SRG pd max/min offset
|
* wlan_vdev_mlme_set_srg_pd_offset() - set spatial reuse SRG pd max/min offset
|
||||||
* @vdev: VDEV object
|
* @vdev: VDEV object
|
||||||
@@ -1544,6 +1594,12 @@ bool wlan_vdev_mlme_is_sr_disable_due_conc(struct wlan_objmgr_vdev *vdev)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline
|
||||||
|
bool wlan_vdev_mlme_is_sr_prohibit_en(struct wlan_objmgr_vdev *vdev)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
static inline void wlan_vdev_mlme_set_sr_ctrl(struct wlan_objmgr_vdev *vdev,
|
static inline void wlan_vdev_mlme_set_sr_ctrl(struct wlan_objmgr_vdev *vdev,
|
||||||
uint8_t sr_ctrl)
|
uint8_t sr_ctrl)
|
||||||
{
|
{
|
||||||
@@ -1565,6 +1621,12 @@ void wlan_vdev_mlme_set_sr_disable_due_conc(struct wlan_objmgr_vdev *vdev,
|
|||||||
bool he_spr_disabled_due_conc)
|
bool he_spr_disabled_due_conc)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline
|
||||||
|
void wlan_vdev_mlme_set_sr_prohibit_en(struct wlan_objmgr_vdev *vdev,
|
||||||
|
bool sr_prohibit_enabled)
|
||||||
|
{
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
static inline void wlan_vdev_mlme_set_he_mcs_12_13_map(
|
static inline void wlan_vdev_mlme_set_he_mcs_12_13_map(
|
||||||
|
@@ -448,6 +448,7 @@ vdev_param_sr_prohibit_send_tlv(struct wmi_unified *wmi_handle,
|
|||||||
cmd->vdev_id = param->vdev_id;
|
cmd->vdev_id = param->vdev_id;
|
||||||
cmd->tidmap = 0;
|
cmd->tidmap = 0;
|
||||||
cmd->prohibit_enable = param->sr_he_siga_val15_allowed;
|
cmd->prohibit_enable = param->sr_he_siga_val15_allowed;
|
||||||
|
wmi_debug("SR Prohibit enabled: %d", cmd->prohibit_enable);
|
||||||
|
|
||||||
wmi_mtrace(WMI_VDEV_PARAM_ENABLE_SR_PROHIBIT_CMDID, cmd->vdev_id, 0);
|
wmi_mtrace(WMI_VDEV_PARAM_ENABLE_SR_PROHIBIT_CMDID, cmd->vdev_id, 0);
|
||||||
if (wmi_unified_cmd_send(wmi_handle, buf, len,
|
if (wmi_unified_cmd_send(wmi_handle, buf, len,
|
||||||
|
Reference in New Issue
Block a user