Defined in 1 files as a function:

Referenced in 8 files:

Smatch caller information:

drivers/net/wireless/intel/iwlwifi/mvm/ops.c iwl_mvm_get_phy_config() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 0,4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &trans_pcie->mutex
HALF_LOCKED2 &mvm->mutex
HALF_LOCKED2 &priv->mutex
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct iwl_trans_pcie)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/ops.c iwl_mvm_toggle_tx_ant() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 4096-ptr_max
BUF_SIZE 0 mvm->debugfs_dir s32min-(-1),1-s32max
BUF_SIZE 0 mvm->hw (-1),208
BUF_SIZE 0 mvm->phy_db (-1),72
BUF_SIZE 0 mvm->scan_cmd (-1),1256-s32max
CAPPED_DATA 0 mvm->fwrt.trans->dev->cma_area->nranges 1
CAPPED_DATA 0 mvm->fwrt.trans->mac_cfg->base->ucode_api_min 1
DATA_SOURCE 0 mvm $0
STR_LEN 0 mvm->hw->wiphy->fw_version (-1),31
NO_OVERFLOW_SIMPLE 0 mvm->fw->pnvm_size
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->governor->bind_to_tz
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->num_trips
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &iwlwifi_opmode_table_mtx

drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c iwl_mvm_toggle_tx_ant() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &local->tim_lock
HALF_LOCKED2 bh
HALF_LOCKED2 0 &mvm->mutex

drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c iwl_dbgfs_rs_data_read() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
DATA_SOURCE 0 mvm $2
LOCK2 0 &mvm->mutex
TYPE_LOCK (struct iwl_mvm)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c iwl_dbgfs_rs_data_read() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
DATA_SOURCE 0 mvm $2
LOCK2 0 &mvm->mutex
TYPE_LOCK (struct iwl_mvm)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/tx.c iwl_mvm_toggle_tx_ant() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex

drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c iwl_mvm_rs_fw_rate_init() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 0,4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex

drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c rs_fw_get_config_flags() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex

drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c iwl_mvm_mac_setup_register() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 4096-ptr_max
BUF_SIZE 0 mvm->debugfs_dir s32min-(-1),1-s32max
BUF_SIZE 0 mvm->hw (-1),208
BUF_SIZE 0 mvm->phy_db (-1),72
BUF_SIZE 0 mvm->scan_cmd (-1),1256-s32max
CAPPED_DATA 0 mvm->fw->ucode_capa.n_cmd_versions 1
CAPPED_DATA 0 mvm->fwrt.trans->dev->cma_area->nranges 1
CAPPED_DATA 0 mvm->fwrt.trans->mac_cfg->base->ucode_api_min 1
DATA_SOURCE 0 mvm $0
STR_LEN 0 mvm->hw->wiphy->fw_version (-1),31
BIT_INFO 0 mvm->max_scans 0x0,0x5
MEM_ZERO 0 mvm->phy_ctxts
NO_OVERFLOW_SIMPLE 0 mvm->fw->pnvm_size
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->governor->bind_to_tz
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->num_trips
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &iwlwifi_opmode_table_mtx

drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c iwl_mvm_op_get_antenna() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &rdev->wiphy.mtx
HALF_LOCKED2 global &rtnl_mutex

drivers/net/wireless/intel/iwlwifi/mvm/fw.c iwl_mvm_get_phy_config() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 0,4096-ptr_max
BUF_SIZE 0 mvm->debugfs_dir s32min-(-1),1-s32max
BUF_SIZE 0 mvm->hw (-1),208
BUF_SIZE 0 mvm->phy_db (-1),72
BUF_SIZE 0 mvm->scan_cmd (-1),1256-s32max
CAPPED_DATA 0 mvm->fwrt.trans->dev->iommu_group->default_domain 1
CAPPED_DATA 0 mvm->phy_db->n_group_papd 1
CAPPED_DATA 0 mvm->phy_db->n_group_txp 1
CAPPED_DATA 0 mvm->trans->mac_cfg->base->ucode_api_min 1
DATA_SOURCE 0 mvm $0
STR_LEN 0 mvm->hw->wiphy->fw_version (-1),31
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 mvm->fw_product_reset 0[c]
NO_OVERFLOW_SIMPLE 0 mvm->fwrt.dump.conf
NO_OVERFLOW_SIMPLE 0 mvm->ptp_data.ptp_clock->info->n_pins
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->governor->bind_to_tz
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->num_trips
LOCK2 0 &mvm->mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 0 &mvm->hw->wiphy->mtx
TYPE_LOCK (struct iwl_mvm)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/fw.c iwl_mvm_load_d3_fw() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
CAPPED_DATA 0 mvm->trans->cfg->nvm_ver 1
CAPPED_DATA 0 mvm->trans->dev->cma_area->nranges 1
CAPPED_DATA 0 mvm->trans->dev->iommu_group->default_domain 1
DATA_SOURCE 0 mvm $0
MEM_ZERO 0 mvm->fw_key_table
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 mvm->trans->trans_specific->ltr_enabled 0
LOCK2 global &rtnl_mutex
LOCK2 0 &mvm->mutex
HALF_LOCKED2 &local->hw.wiphy->mtx
HALF_LOCKED2 &rdev->wiphy.mtx
TYPE_LOCK (struct iwl_mvm)->mutex
TYPE_LOCK (struct wiphy)->mtx

drivers/net/wireless/intel/iwlwifi/mvm/fw.c iwl_mvm_up() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
CAPPED_DATA 0 mvm->fwrt.trans->mac_cfg->base->num_of_queues 1
CAPPED_DATA 0 mvm->trans->mac_cfg->base->ucode_api_max 1
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->cooling_dev.cur_state
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 0 &mvm->mutex
TYPE_LOCK (struct iwl_mvm)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/fw.c iwl_run_init_mvm_ucode() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 4096-ptr_max
BUF_SIZE 0 mvm->debugfs_dir s32min-(-1),1-s32max
BUF_SIZE 0 mvm->hw (-1),208
BUF_SIZE 0 mvm->phy_db (-1),72
BUF_SIZE 0 mvm->scan_cmd (-1),1256-s32max
CAPPED_DATA 0 mvm->fwrt.trans->mac_cfg->base->num_of_queues 1
CAPPED_DATA 0 mvm->fwrt.trans->mac_cfg->base->ucode_api_max 1
CAPPED_DATA 0 mvm->trans->cfg->nvm_ver 1
CAPPED_DATA 0 mvm->trans->dev->iommu_group->default_domain 1
DATA_SOURCE 0 mvm $0
STR_LEN 0 mvm->hw->wiphy->fw_version (-1),31
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 mvm->trans->trans_specific->ltr_enabled 0
NO_OVERFLOW_SIMPLE 0 mvm->fw->pnvm_size
NO_OVERFLOW_SIMPLE 0 mvm->fwrt.dump.conf
NO_OVERFLOW_SIMPLE 0 mvm->ptp_data.ptp_clock->info->n_pins
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->governor->bind_to_tz
NO_OVERFLOW_SIMPLE 0 mvm->tz_device.tzone->num_trips
LOCK2 0 &mvm->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 0 &mvm->hw->wiphy->mtx
TYPE_LOCK (struct iwl_mvm)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/sta.c iwl_mvm_toggle_tx_ant() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 0 &mvm->mutex
TYPE_LOCK (struct iwl_mvm)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/phy-ctxt.c iwl_mvm_phy_ctxt_cmd_data_v1() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 0,4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 mvm->dbgfs_rx_phyinfo 0-u16max
NO_OVERFLOW_SIMPLE 0 mvm->dbgfs_rx_phyinfo
LOCK2 0 &mvm->mutex
TYPE_LOCK (struct iwl_mvm)->mutex

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_build_rates_table() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
CAPPED_DATA 0 mvm->trans->mac_cfg->base->ucode_api_min 1
DATA_SOURCE 0 mvm $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_drv_rate_init() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 0,4096-ptr_max
DATA_SOURCE 0 mvm $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_get_initial_rate() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 0,4096-ptr_max
DATA_SOURCE 0 mvm $0
MEM_ZERO 0 &mvm->drv_rx_stats
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_get_lower_rate_down_column() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &mvm->mutex
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_get_next_column() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_ht_init() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
DATA_SOURCE 0 mvm $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_mimo_allow() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
DATA_SOURCE 0 mvm $0

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_sta_dbgfs_scale_table_read() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_sta_dbgfs_scale_table_read() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_vht_init() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
DATA_SOURCE 0 mvm $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/rs.c rs_vht_init() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 0,4096-ptr_max
DATA_SOURCE 0 mvm $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
LOCK2 &mvmsta->deflink.lq_sta.rs_drv.pers.lock
LOCK2 bh
HALF_LOCKED2 &sta->rate_ctrl_lock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &mvm->mutex
TYPE_LOCK (struct lq_sta_pers)->lock

drivers/net/wireless/intel/iwlwifi/mvm/scan.c iwl_mvm_config_scan() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
BUF_SIZE 0 mvm s32min-(-1),1-s32max
BUF_SIZE 0 mvm s32min-(-1),1-s32max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->fwrt.dump.conf
NO_OVERFLOW_SIMPLE 0 mvm->trans->info.num_rxqs
HALF_LOCKED2 0 &mvm->mutex

drivers/net/wireless/intel/iwlwifi/mvm/scan.c iwl_mvm_fill_scan_config_v1() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 4096-ptr_max
BUF_SIZE 0 mvm s32min-(-1),1-s32max
BUF_SIZE 0 mvm s32min-(-1),1-s32max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->cooling_dev.cur_state
NO_OVERFLOW_SIMPLE 0 mvm->fwrt.dump.conf
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &mvm->mutex

drivers/net/wireless/intel/iwlwifi/mvm/scan.c iwl_mvm_fill_scan_config_v2() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 4096-ptr_max
BUF_SIZE 0 mvm s32min-(-1),1-s32max
BUF_SIZE 0 mvm s32min-(-1),1-s32max
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->cooling_dev.cur_state
NO_OVERFLOW_SIMPLE 0 mvm->fwrt.dump.conf
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &mvm->mutex

drivers/net/wireless/intel/iwlwifi/mvm/scan.c iwl_mvm_toggle_tx_ant() -> iwl_mvm_get_valid_tx_ant()

Type Parameter Key Value
PARAM_VALUE 0 mvm 4096-ptr_max
PARAM_VALUE 0 mvm->fw 4096-ptr_max
PARAM_VALUE 0 mvm->nvm_data 4096-ptr_max
CAPPED_DATA 0 mvm->csme_conn_info 1
DATA_SOURCE 0 mvm $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 mvm->trans->mac_cfg->base->num_of_queues
LOCK2 0 &mvm->mutex
TYPE_LOCK (struct iwl_mvm)->mutex