Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/mt76_connac_mac.c mt76_connac2_mac_fill_rx_rate() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 sband $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 idx 0-s32max[c]
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mt76_connac_mac.c mt76_connac2_mac_fill_txs() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 idx 0-255[c]
UNITS 2 idx unit_array_size
LOCK2 rcu_read
HALF_LOCKED2 &dev->status_lock
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mt7603/mac.c mt7603_fill_txs() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 sband 4096-ptr_max
PARAM_VALUE 2 idx 0-63
BUF_SIZE 1 sband 104
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &mdev->status_lock
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mt7603/mac.c mt7603_mac_fill_rx() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
CAPPED_DATA 1 sband->n_channels 1
RX_PATH
TASK_NOT_RUNNING
UNITS 2 idx unit_array_size
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mt7925/mac.c mt7925_mac_add_txs_skb() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 idx 0-255[c]
UNITS 2 idx unit_array_size
LOCK2 &mdev->status_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct mt76_dev)->status_lock

drivers/net/wireless/mediatek/mt76/mt7925/mac.c mt7925_mac_fill_rx_rate() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
DATA_SOURCE 1 sband $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 idx 0-s32max[c]
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mt7925/mac.c mt7928_mac_add_txs_skb_msg() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 idx 0-255[c]
UNITS 2 idx unit_array_size
LOCK2 &mdev->status_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct mt76_dev)->status_lock

drivers/net/wireless/mediatek/mt76/mt7915/mcu.c mt7915_mcu_get_rx_rate() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 idx 0-255[u]
UNITS 2 idx unit_array_size
HALF_LOCKED2 &local->hw.wiphy->mtx
HALF_LOCKED2 &rdev->wiphy.mtx

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_mac_add_txs_skb() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 2 idx unit_array_size
LOCK2 &mdev->status_lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct mt76_dev)->status_lock

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_mac_fill_rx_rate() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
DATA_SOURCE 1 sband $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 idx 0-s32max[c]
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mt7615/mac.c mt7615_fill_txs() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 sband 4096-ptr_max
PARAM_VALUE 2 idx 0-63
BUF_SIZE 1 sband 104
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &mdev->status_lock
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mt7615/mac.c mt7615_mac_fill_rx() -> mt76_get_rate()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 sband 4096-ptr_max
BUF_SIZE 1 sband 104
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh