qcacmn: Add an API wlan_reg_update_pdev_wireless_modes

Add an API wlan_reg_update_pdev_wireless_modes to update the wireless
modes in regulatory pdev_priv_obj with the wireless modes given as
input to it.

Change-Id: I2388b26da0d4c485b1b73b3ffb8f4b30767c31ee
CRs-Fixed: 2661579
Esse commit está contido em:
Hariharan Basuthkar
2020-04-17 15:08:24 +05:30
commit de nshrivas
commit 529b8588c4
6 arquivos alterados com 49 adições e 0 exclusões

Ver arquivo

@@ -1133,6 +1133,9 @@ struct wlan_lmac_if_reg_rx_ops {
bool dfs_enable);
QDF_STATUS (*reg_modify_pdev_chan_range)(struct
wlan_objmgr_pdev *pdev);
QDF_STATUS
(*reg_update_pdev_wireless_modes)(struct wlan_objmgr_pdev *pdev,
uint32_t wireless_modes);
QDF_STATUS (*reg_disable_chan_coex)(struct wlan_objmgr_pdev *pdev,
uint8_t unii_5g_bitmap);
bool (*reg_ignore_fw_reg_offload_ind)(struct wlan_objmgr_psoc *psoc);

Ver arquivo

@@ -343,6 +343,9 @@ static void wlan_lmac_if_umac_reg_rx_ops_register(
rx_ops->reg_rx_ops.reg_modify_pdev_chan_range =
wlan_reg_modify_pdev_chan_range;
rx_ops->reg_rx_ops.reg_update_pdev_wireless_modes =
wlan_reg_update_pdev_wireless_modes;
rx_ops->reg_rx_ops.reg_ignore_fw_reg_offload_ind =
tgt_reg_ignore_fw_reg_offload_ind;

Ver arquivo

@@ -2758,6 +2758,24 @@ QDF_STATUS reg_modify_pdev_chan_range(struct wlan_objmgr_pdev *pdev)
return status;
}
QDF_STATUS reg_update_pdev_wireless_modes(struct wlan_objmgr_pdev *pdev,
uint32_t wireless_modes)
{
struct wlan_regulatory_pdev_priv_obj *pdev_priv_obj;
pdev_priv_obj = wlan_objmgr_pdev_get_comp_private_obj(pdev,
WLAN_UMAC_COMP_REGULATORY);
if (!pdev_priv_obj) {
reg_err("reg pdev private obj is NULL");
return QDF_STATUS_E_FAULT;
}
pdev_priv_obj->wireless_modes = wireless_modes;
return QDF_STATUS_SUCCESS;
}
#ifdef DISABLE_UNII_SHARED_BANDS
/**
* reg_is_reg_unii_band_1_or_reg_unii_band_2a() - Check the input bitmap

Ver arquivo

@@ -729,6 +729,16 @@ bool reg_is_regdmn_en302502_applicable(struct wlan_objmgr_pdev *pdev);
*/
QDF_STATUS reg_modify_pdev_chan_range(struct wlan_objmgr_pdev *pdev);
/**
* reg_update_pdev_wireless_modes() - Update the wireless_modes in the
* pdev_priv_obj with the input wireless_modes
* @pdev: pointer to wlan_objmgr_pdev.
* @wireless_modes: Wireless modes.
*
* Return : QDF_STATUS
*/
QDF_STATUS reg_update_pdev_wireless_modes(struct wlan_objmgr_pdev *pdev,
uint32_t wireless_modes);
#ifdef DISABLE_UNII_SHARED_BANDS
/**
* reg_disable_chan_coex() - Disable Coexisting channels based on the input

Ver arquivo

@@ -929,6 +929,16 @@ bool wlan_reg_is_regdmn_en302502_applicable(struct wlan_objmgr_pdev *pdev);
*/
QDF_STATUS wlan_reg_modify_pdev_chan_range(struct wlan_objmgr_pdev *pdev);
/**
* wlan_reg_update_pdev_wireless_modes() - Update the wireless_modes in the
* pdev_priv_obj with the input wireless_modes
* @pdev: pointer to wlan_objmgr_pdev.
* @wireless_modes: Wireless modes.
*
* Return : QDF_STATUS
*/
QDF_STATUS wlan_reg_update_pdev_wireless_modes(struct wlan_objmgr_pdev *pdev,
uint32_t wireless_modes);
/**
* wlan_reg_disable_chan_coex() - Disable Coexisting channels based on the input
* bitmask

Ver arquivo

@@ -851,6 +851,11 @@ QDF_STATUS wlan_reg_modify_pdev_chan_range(struct wlan_objmgr_pdev *pdev)
return reg_modify_pdev_chan_range(pdev);
}
QDF_STATUS wlan_reg_update_pdev_wireless_modes(struct wlan_objmgr_pdev *pdev,
uint32_t wireless_modes)
{
return reg_update_pdev_wireless_modes(pdev, wireless_modes);
}
#ifdef DISABLE_UNII_SHARED_BANDS
QDF_STATUS wlan_reg_disable_chan_coex(struct wlan_objmgr_pdev *pdev,
uint8_t unii_5g_bitmap)