Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/hid/hid-mcp2221.c mcp_chk_last_cmd_status_free_bus() -> mcp_cancel_last_cmd()

Type Parameter Key Value
PARAM_VALUE 0 mcp 4096-ptr_max
PARAM_VALUE 0 mcp->hdev 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_bus_lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_bus_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_bus_lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_regmap->cache->cached_rbnode->base_reg 0-4294967295
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_regmap->cache->cached_rbnode->blklen 0-4294967295
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_regmap->cache_dirty 0-1
PARAM_VALUE 0 mcp->hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 mcp->lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mcp->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mcp->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 mcp->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 mcp->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->lock.wait_lock.owner (-1)
PARAM_VALUE 0 mcp->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 mcp->txbuf 4096-ptr_max
PARAM_VALUE 0 mcp->wait_in_report.done 0-4294967293,u32max
PARAM_VALUE 0 mcp->wait_in_report.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->wait_in_report.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 mcp->wait_in_report.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 *mcp->hdev->driver_data->report_buf 0-255
PARAM_VALUE 0 *mcp->txbuf 0-255
BUF_SIZE 0 mcp s32min-(-2),1-s32max
BUF_SIZE 0 mcp s32min-(-2),1-s32max
BUF_SIZE 0 mcp->rxbuf s32min-(-1),1-s32max
DATA_SOURCE 0 mcp $0
STR_LEN 0 mcp (-1)
STR_LEN 0 mcp (-1)
MEM_ZERO 0 mcp->txbuf
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 *mcp->rxbuf 0-255
USER_DATA 0 mcp->rxbuf_size 0-255
USER_DATA 0 *mcp->rxbuf 0-255
UNITS 0 mcp unit_byte
USER_PTR 0 mcp->rxbuf
LOCK2 0 &mcp->lock
TYPE_LOCK (struct mcp2221)->lock

drivers/hid/hid-mcp2221.c mcp_i2c_smbus_read() -> mcp_cancel_last_cmd()

Type Parameter Key Value
PARAM_VALUE 0 mcp 4096-ptr_max
PARAM_VALUE 0 mcp->hdev 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_bus_lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_regmap->cache_dirty 0-1
PARAM_VALUE 0 mcp->hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 mcp->lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mcp->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mcp->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 mcp->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->lock.wait_lock.owner (-1)
PARAM_VALUE 0 mcp->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 mcp->rxbuf_idx 0
PARAM_VALUE 0 mcp->rxbuf_size 0-u16max
PARAM_VALUE 0 mcp->txbuf 4096-ptr_max
PARAM_VALUE 0 mcp->wait_in_report.done 0-4294967293,u32max
PARAM_VALUE 0 mcp->wait_in_report.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->wait_in_report.wait.lock.owner (-1)
PARAM_VALUE 0 mcp->wait_in_report.wait.lock.owner_cpu u32max
PARAM_VALUE 0 mcp->wait_in_report.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 mcp->wait_in_report.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 *mcp->hdev->driver_data->report_buf 0-255
BUF_SIZE 0 mcp s32min-(-2),1-s32max
BUF_SIZE 0 mcp s32min-(-2),1-s32max
BUF_SIZE 0 mcp->rxbuf s32min-(-1),1-s32max
DATA_SOURCE 0 mcp $0
STR_LEN 0 mcp (-1)
STR_LEN 0 mcp (-1)
MEM_ZERO 0 mcp->txbuf
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 *mcp->rxbuf 0-255
USER_DATA 0 mcp->rxbuf_size 0-255
USER_DATA 0 *mcp->rxbuf 0-255
UNITS 0 mcp unit_byte
USER_PTR 0 mcp->rxbuf
LOCK2 0 &mcp->lock
TYPE_LOCK (struct mcp2221)->lock

drivers/hid/hid-mcp2221.c mcp_set_i2c_speed() -> mcp_cancel_last_cmd()

Type Parameter Key Value
PARAM_VALUE 0 mcp 4096-ptr_max
PARAM_VALUE 0 mcp->cur_i2c_clk_div 27,237
PARAM_VALUE 0 mcp->hdev 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->batteries.prev 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->bpf_rdesc 1-u64max
PARAM_VALUE 0 mcp->hdev->collection 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->collection_size 16
PARAM_VALUE 0 mcp->hdev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 mcp->hdev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 mcp->hdev->dev.devres_head.prev 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->dev.driver 0,4096-ptr_max
PARAM_VALUE 0 mcp->hdev->dev.driver_data 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->devres_group_id 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->driver 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_bus_lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->hdev->driver_data->thc_hw->thc_regmap->cache_dirty 0-1
PARAM_VALUE 0 mcp->hdev->hiddev 0,4096-ptr_max
PARAM_VALUE 0 mcp->hdev->hidraw 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 mcp->hdev->ll_open_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 mcp->hdev->rdesc 1-u64max
PARAM_VALUE 0 mcp->lock.dep_map->name 0-255
PARAM_VALUE 0 mcp->lock.first_waiter 0
PARAM_VALUE 0 mcp->lock.magic 4096-ptr_max
PARAM_VALUE 0 mcp->lock.osq.tail.counter 0
PARAM_VALUE 0 mcp->lock.owner.counter 0
PARAM_VALUE 0 mcp->wait_in_report.done 0-4294967293,u32max
PARAM_VALUE 0 mcp->wait_in_report.wait.lock.owner (-1)
PARAM_VALUE 0 mcp->wait_in_report.wait.lock.owner_cpu u32max
PARAM_VALUE 0 mcp->wait_in_report.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 mcp->wait_in_report.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 *mcp->hdev->driver_data->report_buf 0-255
BUF_SIZE 0 mcp 3376
DATA_SOURCE 0 mcp $0
FUZZY_MAX 0 mcp->cur_i2c_clk_div 237
HARD_MAX 0 mcp->cur_i2c_clk_div 237
MEM_ZERO 0 mcp
MEM_ZERO 0 mcp->txbuf
MEM_ZERO 0 mcp->wait_in_report.wait.lock.dep_map.key
MEM_ZERO 0 mcp->wait_in_report.wait.lock.dep_map.name
MEM_ZERO 0 mcp->wait_in_report.wait.task_list.next
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL