Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/mt7615/mcu.c mt76_mcu_send_firmware() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 3084305845377191936,4189819964035870720,7301314734503608320
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 2 *data 0-255
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 cmd $1
DATA_SOURCE 2 data $2
DATA_SOURCE 3 len $3
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
UNITS 2 data unit_byte
UNITS 3 len unit_byte
UNITS 4 max_len unit_byte
LOCK2 &pool->lock

drivers/net/wireless/mediatek/mt76/mt7996/mcu.c mt7996_load_patch() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 4 max_len 4096
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
UNITS 2 data unit_byte
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/mt7996/mcu.c mt7996_mcu_send_ram_firmware() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->queue_ops 4096-ptr_max
PARAM_VALUE 0 dev->usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 2 data 4096-ptr_max
PARAM_VALUE 2 *data 0-255
PARAM_VALUE 4 max_len 4096
RX_PATH
TASK_NOT_RUNNING
UNITS 2 data unit_byte
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/mt7603/mcu.c mt76_mcu_send_firmware() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 0,4096-ptr_max
PARAM_VALUE 0 dev->eeprom.data 4096-ptr_max
PARAM_VALUE 0 dev->eeprom.size 1024
PARAM_VALUE 0 dev->mcu_ops 6153724107652546560
PARAM_VALUE 0 dev->mmio.wed_reset.wait.lock.magic 3735899821
PARAM_VALUE 0 dev->mmio.wed_reset.wait.lock.owner (-1)
PARAM_VALUE 0 dev->mmio.wed_reset.wait.lock.owner_cpu u32max
PARAM_VALUE 0 dev->mmio.wed_reset.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 dev->mmio.wed_reset.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 dev->mmio.wed_reset_complete.wait.lock.magic 3735899821
PARAM_VALUE 0 dev->mmio.wed_reset_complete.wait.lock.owner (-1)
PARAM_VALUE 0 dev->mmio.wed_reset_complete.wait.lock.owner_cpu u32max
PARAM_VALUE 0 dev->mmio.wed_reset_complete.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 dev->mmio.wed_reset_complete.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 dev->napi_dev 4096-ptr_max
PARAM_VALUE 0 dev->otp.data 1-u64max
PARAM_VALUE 0 dev->otp.size 1024
PARAM_VALUE 0 dev->pre_tbtt_tasklet.use_callback 1
PARAM_VALUE 0 dev->queue_ops 2083956260039860224
PARAM_VALUE 0 dev->tx_napi.dev 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.dev_list.next 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.dev_list.prev 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.gro.rx_list.next 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.gro.rx_list.prev 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.irq (-1)
PARAM_VALUE 0 dev->tx_napi.list_owner (-1)
PARAM_VALUE 0 dev->tx_napi.napi_hash_node.pprev 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.poll 8324646106727436288
PARAM_VALUE 0 dev->tx_napi.poll_list.next 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.poll_list.prev 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.poll_owner (-1)
PARAM_VALUE 0 dev->tx_napi.timer.base 4096-ptr_max
PARAM_VALUE 0 dev->tx_napi.timer.function 1-u64max
PARAM_VALUE 0 dev->tx_napi.weight 64
PARAM_VALUE 0 dev->tx_napi_dev 4096-ptr_max
PARAM_VALUE 0 dev->usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 1 cmd (-238)
PARAM_VALUE 2 data 1-u64max
PARAM_VALUE 4 max_len 4064
BUF_SIZE 2 data 1-s32max
BUF_SIZE 2 data 1-s32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 cmd $1
DATA_SOURCE 2 data $2
DATA_SOURCE 3 len $3
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
UNITS 2 data unit_byte
UNITS 4 max_len unit_byte

drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.c mt76_connac2_load_patch() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->class 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->driver 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 4 max_len 2048,4096
DATA_SOURCE 0 dev $0
FUZZY_MAX 4 max_len 4096
BIT_INFO 4 max_len 0x0,0x1800
HARD_MAX 4 max_len 4096
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
UNITS 2 data unit_byte
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.c mt76_connac3_load_cb_patch() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->class 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->driver 0,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.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 2 data 4096-ptr_max
PARAM_VALUE 4 max_len 2048,4096
BUF_SIZE 2 data 4
DATA_SOURCE 0 dev $0
FUZZY_MAX 4 max_len 4096
BIT_INFO 4 max_len 0x0,0x1800
HARD_MAX 4 max_len 4096
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
UNITS 3 len unit_byte
LOCK2 &pool->lock
HALF_LOCKED2 &dev->mt76.mutex

drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.c mt76_connac3_load_cb_patch() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->class 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->driver 0,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.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 0 dev->usb.usb_ctrl_mtx.osq.tail.counter 0-s32max
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 4 max_len 2048,4096
DATA_SOURCE 0 dev $0
FUZZY_MAX 4 max_len 4096
BIT_INFO 4 max_len 0x0,0x1800
HARD_MAX 4 max_len 4096
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
UNITS 2 data unit_byte
UNITS 3 len unit_byte
LOCK2 &pool->lock
HALF_LOCKED2 &dev->mt76.mutex

drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.c mt76_connac_mcu_send_phy_ram_firmware() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->class 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->driver 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 2 data 4096-ptr_max
PARAM_VALUE 2 *data 0-255
PARAM_VALUE 4 max_len 2048,4096
DATA_SOURCE 0 dev $0
FUZZY_MAX 4 max_len 4096
BIT_INFO 4 max_len 0x0,0x1800
HARD_MAX 4 max_len 4096
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
UNITS 2 data unit_byte
LOCK2 &pool->lock
HALF_LOCKED2 &dev->mt76.mutex

drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.c mt76_connac_mcu_send_ram_firmware() -> __mt76_mcu_send_firmware()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->bus 4096-ptr_max
PARAM_VALUE 0 dev->dev 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->class 0,4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 dev->dev->driver 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->mcu.mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->mcu.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->mcu_ops 4096-ptr_max
PARAM_VALUE 1 cmd 0-255
PARAM_VALUE 2 data 4096-ptr_max
PARAM_VALUE 2 *data 0-255
PARAM_VALUE 4 max_len 2048,4096
DATA_SOURCE 0 dev $0
FUZZY_MAX 4 max_len 4096
STR_LEN 0 dev (-1),22
STR_LEN 0 dev (-1),22
STR_LEN 0 dev->hw->wiphy->fw_version (-1),31
BIT_INFO 4 max_len 0x0,0x1800
HARD_MAX 4 max_len 4096
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
UNITS 2 data unit_byte
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock