Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c mt76x02u_mcu_rd_rp() -> __mt76x02u_mcu_send_msg()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->usb.mcu.base 2147483648
PARAM_VALUE 0 dev->usb.mcu.rp 745153515384229888
PARAM_VALUE 0 dev->usb.mcu.rp->reg 4,22,24,28,30-32,66-67,73,458825
PARAM_VALUE 0 dev->usb.mcu.rp->value 0
PARAM_VALUE 0 dev->usb.mcu.rp_len 1
PARAM_VALUE 1 skb 4096-ptr_max
PARAM_VALUE 1 skb->data 4096-ptr_max
PARAM_VALUE 1 skb->data_len 0
PARAM_VALUE 2 cmd 10
PARAM_VALUE 3 wait_resp 1
BUF_SIZE 1 skb 16
BUF_SIZE 1 skb 16
CAPPED_DATA 0 &dev->mcu.mutex 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 skb r alloc_skb
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
LOCK2 0 &dev->mcu.mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mt76_mcu)->mutex

drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c mt76x02u_mcu_send_msg() -> __mt76x02u_mcu_send_msg()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->mcu_ops->headroom 0,4,32,64,68
PARAM_VALUE 0 dev->mcu_ops->mcu_send_msg 4543376461987549184,5414446649499410432
PARAM_VALUE 1 skb 4096-ptr_max
BUF_SIZE 1 skb 0-s32max
BUF_SIZE 1 skb 0-s32max
CAPPED_DATA 0 &dev->mcu.mutex 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 skb r mt76_mcu_msg_alloc
DATA_SOURCE 2 cmd $1
DATA_SOURCE 3 wait_resp $4
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
LOCK2 0 &dev->mcu.mutex
HALF_LOCKED2 &(phy->dev)->mt76.mutex
HALF_LOCKED2 &attr->mutex
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &mdev->mt76.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &rdev->wiphy.mtx
HALF_LOCKED2 &s->lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct mt76_mcu)->mutex

drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c mt76x02u_mcu_wr_rp() -> __mt76x02u_mcu_send_msg()

Type Parameter Key Value
PARAM_VALUE 0 dev->mcu.mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.owner (-1)
PARAM_VALUE 0 dev->mcu.mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 skb 4096-ptr_max
PARAM_VALUE 1 skb->data 4096-ptr_max
PARAM_VALUE 1 skb->data_len 0
PARAM_VALUE 2 cmd 12
BUF_SIZE 1 skb 16-200
BUF_SIZE 1 skb 16-200
CAPPED_DATA 0 &dev->mcu.mutex 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 skb r alloc_skb
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->dma_dev->cma_area->available_count
NO_OVERFLOW_SIMPLE 0 dev->hw->wiphy->fw_version
NO_OVERFLOW_SIMPLE 0 dev->mmio.wed.hw->regs->cache_word_size
NO_OVERFLOW_SIMPLE 0 dev->napi_dev->_rx
NO_OVERFLOW_SIMPLE 0 dev->napi_dev->_tx
NO_OVERFLOW_SIMPLE 0 dev->napi_dev->cfg
NO_OVERFLOW_SIMPLE 0 dev->napi_dev->ethtool
NO_OVERFLOW_SIMPLE 0 dev->napi_dev->name
NO_OVERFLOW_SIMPLE 0 dev->napi_dev->napi_config
NO_OVERFLOW_SIMPLE 0 dev->tx_napi.skb->extensions
NO_OVERFLOW_SIMPLE 0 dev->tx_napi.thread->dl.dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->usb.rx_worker.task->dl.dl_runtime
NO_OVERFLOW_SIMPLE 0 dev->usb.rx_worker.task->dl.pi_se->dl_runtime
LOCK2 0 &dev->mcu.mutex
TYPE_LOCK (struct mt76_mcu)->mutex