Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/dma.c mt76_phy_hw() -> mt76_dev_phy()

Type Parameter Key Value
PARAM_VALUE 1 phy_idx 0-3
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 phy_idx $1
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->ps_lock
HALF_LOCKED2 &q->lock
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/tx.c mt76_phy_hw() -> mt76_dev_phy()

Type Parameter Key Value
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev->bus (-1),64
BUF_SIZE 0 dev->mcu_ops (-1),88
BUF_SIZE 0 dev->phy.priv (-1),13440,13480
BUF_SIZE 0 dev->test_ops (-1),24
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 phy_idx $1
STR_LEN 0 dev (-1),22
STR_LEN 0 dev (-1),22
STR_LEN 0 dev->hw->wiphy->fw_version (-1),31
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->mmio.irqmask 0-u32max[c]
HOST_DATA 0 dev->rx_token.idr_rt.xa_flags 0-u32max
HOST_DATA 0 dev->rxfilter 0-u32max
HOST_DATA 0 dev->token.idr_rt.xa_flags 0,67108864-u32max
NO_OVERFLOW_SIMPLE 0 dev->phy.leds.cdev.blink_brightness
NO_OVERFLOW_SIMPLE 0 dev->phy.leds.cdev.blink_delay_off
NO_OVERFLOW_SIMPLE 0 dev->phy.leds.cdev.blink_delay_on
NO_OVERFLOW_SIMPLE 0 dev->scan.vif->active_links
NO_OVERFLOW_SIMPLE 0 dev->sdio.net_worker.task->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->sdio.stat_worker.task->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->sdio.status_worker.task->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->sdio.txrx_worker.task->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->tx_napi.skb->extensions
NO_OVERFLOW_SIMPLE 0 dev->tx_napi.thread->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->tx_worker.task->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->usb.rx_worker.task->dl.pi_se->dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->usb.status_worker.task->dl.pi_se->dl_runtime
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &dev->mutex
HALF_LOCKED2 0 &dev->token_lock

drivers/net/wireless/mediatek/mt76/tx.c mt76_token_consume() -> mt76_dev_phy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev->token_start 1
DATA_SOURCE 0 dev $0
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 0 &dev->token_lock
HALF_LOCKED2 &dev->ps_lock
HALF_LOCKED2 &q->lock
TYPE_LOCK (struct mt76_dev)->token_lock

drivers/net/wireless/mediatek/mt76/tx.c mt76_token_release() -> mt76_dev_phy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1),53736
BUF_SIZE 0 dev (-1),53736
DATA_SOURCE 0 dev $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 0 &dev->token_lock
TYPE_LOCK (struct mt76_dev)->token_lock

drivers/net/wireless/mediatek/mt76/tx.c mt76_txq_schedule_list() -> mt76_dev_phy()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/mac80211.c mt76_phy_hw() -> mt76_dev_phy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev->phy.priv (-1),13480
BUF_SIZE 0 dev->test_ops (-1),24
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 phy_idx $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &dev->mutex
HALF_LOCKED2 0 &dev->rx_lock

drivers/net/wireless/mediatek/mt76/mac80211.c mt76_rx() -> mt76_dev_phy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/mac80211.c mt76_wcid_cleanup() -> mt76_dev_phy()

Type Parameter Key Value
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev s32min-(-1),1-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->mmio.irqmask 0-u32max[c]
HOST_DATA 0 dev->rx_token.idr_rt.xa_flags 0-u32max
HOST_DATA 0 dev->rxfilter 0-u32max
UNITS 0 dev unit_byte
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &dev->mutex

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

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev 53736
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 rcu_read
LOCK2 0 &dev->status_lock
TYPE_LOCK (struct mt76_dev)->status_lock

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

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev 53736
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 rcu_read
LOCK2 0 &dev->status_lock
TYPE_LOCK (struct mt76_dev)->status_lock

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

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev 53736
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 rcu_read
LOCK2 0 &dev->status_lock
TYPE_LOCK (struct mt76_dev)->status_lock