Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/mt7996/debugfs.c mt7996_fw_debug_wa_set() -> mt7996_mcu_wa_cmd()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->fw_debug_wa 0,2
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.mcu_ops 4096-ptr_max
PARAM_VALUE 1 cmd 0-1048575
PARAM_VALUE 2 a1 4
PARAM_VALUE 3 a2 0-1
PARAM_VALUE 4 a3 0
BUF_SIZE 0 dev s32min-(-2),1-s32max
BUF_SIZE 0 dev s32min-(-2),1-s32max
DATA_SOURCE 0 dev $0
FUZZY_MAX 0 dev->fw_debug_wa 2
FUZZY_MAX 3 a2 1
BIT_INFO 0 dev->fw_debug_wa 0x0,0x2
BIT_INFO 1 cmd 0x80000,0x8ffff
HARD_MAX 0 dev->fw_debug_wa 2
HARD_MAX 3 a2 1
LOCK2 &attr->mutex
TYPE_LOCK (struct simple_attr)->mutex

drivers/net/wireless/mediatek/mt76/mt7996/debugfs.c mt7996_fw_util_wa_show() -> mt7996_mcu_wa_cmd()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->fw_debug_wa 1-255
PARAM_VALUE 1 cmd 0-1048575
PARAM_VALUE 2 a1 11
PARAM_VALUE 3 a2 0
PARAM_VALUE 4 a3 0
BUF_SIZE 0 dev s32min-(-2),1-s32max
BUF_SIZE 0 dev s32min-(-2),1-s32max
BIT_INFO 1 cmd 0x80000,0x8ffff
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
LOCK2 &file->lock
TYPE_LOCK (struct seq_file)->lock

drivers/net/wireless/mediatek/mt76/mt7996/init.c mt7996_mac_init() -> mt7996_mcu_wa_cmd()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->mt76->sdio.func->card->host->fail_mmc_request.ratelimit_state.lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 dev->mt76->sdio.func->card->host->ongoing_mrq->cmd_completion.wait.lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 dev->mt76->sdio.func->tmpbuf 0-255
PARAM_VALUE 0 dev->mt76.bus 4096-ptr_max
PARAM_VALUE 0 dev->mt76.bus->rmw 4096-ptr_max
PARAM_VALUE 0 dev->mt76.bus->rr 4096-ptr_max
PARAM_VALUE 0 dev->mt76.drv->rx_check 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.drv->sta_ps 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.mcu.mutex->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.queue_ops->reset_q 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.queue_ops->tx_cleanup 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->claim_cnt s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->cqe_on 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->doing_retune 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.ratelimit_state.flags 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.ratelimit_state.missed.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.space.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.times.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->hold_retune s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->led->brightness 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->need_retune s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->ongoing_mrq->cmd_completion.wait.lock.owner (-1)
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->ongoing_mrq->cmd_completion.wait.lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.flags 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_hard 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_lazy 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_queued 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_soft 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_uses_io_tlb 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.flags 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.is_hard 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.is_lazy 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.is_soft 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->pcr->pcr_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->ucr->dev_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->retune_now 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->uhs2_app_cmd 0-1
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->reg.offs_rev 4096-ptr_max
PARAM_VALUE 0 *dev->mt76.eeprom.data 0-255
PARAM_VALUE 0 *dev->mt76.hw->wiphy->fw_version 0-255
PARAM_VALUE 1 cmd 0-1048575
PARAM_VALUE 2 a1 47
PARAM_VALUE 3 a2 33
PARAM_VALUE 4 a3 0
DATA_SOURCE 0 dev $0
BIT_INFO 1 cmd 0x80000,0x8ffff
NOCHECK_CALL
HOST_DATA 0 dev->mt76->sdio.func->tmpbuf 0-255
HOST_DATA 0 dev->mt76.mmio.irqmask 0-u32max[c]
HOST_DATA 0 dev->mt76.rx_token.idr_rt.xa_flags 0-u32max
HOST_DATA 0 dev->mt76.rxfilter 0-u32max
HOST_DATA 0 dev->mt76.token.idr_rt.xa_flags 0,67108864-u32max
NO_OVERFLOW_SIMPLE 0 dev->mt76.scan.vif->active_links
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &dev->mt76.mutex

drivers/net/wireless/mediatek/mt76/mt7996/mcu.c mt7996_mcu_init_firmware() -> mt7996_mcu_wa_cmd()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->mt76->sdio.func->card->host->fail_mmc_request.ratelimit_state.lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 dev->mt76->sdio.func->card->host->ongoing_mrq->cmd_completion.wait.lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 dev->mt76->sdio.func->card->host->private->regmap->cache->data 0-4294967295
PARAM_VALUE 0 dev->mt76->sdio.func->card->host->private->ucr->cmd_buf 0-255
PARAM_VALUE 0 dev->mt76->sdio.func->tmpbuf 0-255
PARAM_VALUE 0 dev->mt76.bus 4096-ptr_max
PARAM_VALUE 0 dev->mt76.bus->rr 4096-ptr_max
PARAM_VALUE 0 dev->mt76.bus->wr 4096-ptr_max
PARAM_VALUE 0 dev->mt76.dev 4096-ptr_max
PARAM_VALUE 0 dev->mt76.dev->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.dev->class 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.dev->devres_head.prev 4096-ptr_max
PARAM_VALUE 0 dev->mt76.dev->devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev->mt76.dev->devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 dev->mt76.dev->driver 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.drv->sta_ps 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.mcu.mutex->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 dev->mt76.mcu.mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.mcu.mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mt76.mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->mt76.mcu_ops->headroom 0,4,32,64,68
PARAM_VALUE 0 dev->mt76.mcu_ops->max_retry 0-1
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_parse_response 396022216663597056,1798297417732042752,2682928937033089024,4676644736942673920,5981939223276920832,6365575011737792512,8498055563972861952
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_rd_rp 0,7340797154514407424
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_restart 0,8319246928040382464
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_rr 0,1597358527731208192
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_send_msg 0,4543376461987549184,5414446649499410432
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_skb_prepare_msg 0,4460907326358106112
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_skb_send_msg 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_wr 0,7192196457011240960
PARAM_VALUE 0 dev->mt76.mcu_ops->mcu_wr_rp 0,4234968410858758144
PARAM_VALUE 0 dev->mt76.mcu_ops->tailroom 0,4,8
PARAM_VALUE 0 dev->mt76.queue_ops->reset_q 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.queue_ops->tx_cleanup 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->claim_cnt s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->cqe_on 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->doing_retune 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.ratelimit_state.flags 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.ratelimit_state.missed.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.space.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->fail_mmc_request.times.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->hold_retune s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->led->brightness 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->need_retune s32min-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->ongoing_mrq->cmd_completion.wait.lock.owner (-1)
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->ongoing_mrq->cmd_completion.wait.lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.flags 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_hard 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_lazy 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_queued 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_io_tlb_mem->dyn_alloc.is_soft 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->dma_uses_io_tlb 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->parent->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.flags 0-4294967295
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.is_hard 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.is_lazy 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->dma_io_tlb_mem->dyn_alloc.is_soft 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->iommu->attach_deferred 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->pcr->pci->dev.dma_uses_io_tlb 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->pcr->pcr_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->pdev->dev.iommu->attach_deferred 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->pdev->dev.iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->private->ucr->dev_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->retune_now 0-1
PARAM_VALUE 0 dev->mt76.sdio.func->card->host->uhs2_app_cmd 0-1
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->blocked_lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 dev->mt76.usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 0 *dev->mt76.hw->wiphy->fw_version 0-255
PARAM_VALUE 1 cmd 0-1048575
PARAM_VALUE 2 a1 14
PARAM_VALUE 3 a2 0
PARAM_VALUE 4 a3 0
BUF_SIZE 0 dev->mt76.mcu_ops (-1),88
BUF_SIZE 0 dev->mt76.phy.priv (-1),13440
BUF_SIZE 0 dev->phy.mt76 (-1),2952
DATA_SOURCE 0 dev $0
BIT_INFO 1 cmd 0x80000,0x8ffff
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->mt76.mmio.irqmask 0-u32max[c]
HOST_DATA 0 dev->mt76.rx_token.idr_rt.xa_flags 0-u32max
HOST_DATA 0 dev->mt76.rxfilter 0-u32max
HOST_DATA 0 dev->mt76.token.idr_rt.xa_flags 0,67108864-u32max
HOST_DATA 0 dev->phy.dev->mt76.mmio.irqmask 0-u32max[c]
HOST_DATA 0 dev->phy.dev->mt76.rx_token.idr_rt.xa_flags 0,4-u32max
HOST_DATA 0 dev->phy.dev->mt76.rxfilter 0-u32max
HOST_DATA 0 dev->phy.dev->mt76.token.idr_rt.xa_flags 0,67108864-u32max
NO_OVERFLOW_SIMPLE 0 dev->mt76.scan.vif->active_links
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &dev->mt76.mutex