Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/input/keyboard/adp5588-keys.c adp5588_gpio_direction_input() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 1 reg 35-37
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 _T->flags

drivers/input/keyboard/adp5588-keys.c adp5588_gpio_direction_output() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 1 reg 23-25
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock

drivers/input/keyboard/adp5588-keys.c adp5588_gpio_direction_output() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 1 reg 35-37
CAPPED_DATA 0 client->adapter->retries 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock

drivers/input/keyboard/adp5588-keys.c adp5588_gpio_set_config() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 1 reg 44-46
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock

drivers/input/keyboard/adp5588-keys.c adp5588_gpio_set_value() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 1 reg 23-25
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock

drivers/input/keyboard/adp5588-keys.c adp5588_irq_bus_sync_unlock() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 1 reg 32-34
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/input/keyboard/adp5588-keys.c adp5588_remove() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 1 reg 1
PARAM_VALUE 2 val 0
DATA_SOURCE 0 client $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mutex

drivers/input/keyboard/adp5588-keys.c adp5588_setup() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter 0
PARAM_VALUE 0 client->debugfs 0
PARAM_VALUE 0 client->dev.devres_head.prev 0
PARAM_VALUE 0 client->devres_group_id 0
PARAM_VALUE 1 reg 29
CAPPED_DATA 0 client->irq 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 client->irq

drivers/input/keyboard/adp5588-keys.c adp5588_setup() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 0 client->debugfs 0
PARAM_VALUE 0 client->dev.devres_head.prev 0
PARAM_VALUE 0 client->devres_group_id 0
PARAM_VALUE 1 reg 30
CAPPED_DATA 0 client->adapter->retries 1
CAPPED_DATA 0 client->irq 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 client->irq

drivers/input/keyboard/adp5588-keys.c adp5588_setup() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 0 client->debugfs 0
PARAM_VALUE 0 client->dev.devres_head.prev 0
PARAM_VALUE 0 client->devres_group_id 0
PARAM_VALUE 1 reg 31
CAPPED_DATA 0 client->adapter->retries 1
CAPPED_DATA 0 client->irq 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 client->irq

drivers/input/keyboard/adp5588-keys.c adp5588_setup() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 0 client->debugfs 0
PARAM_VALUE 0 client->dev.devres_head.prev 0
PARAM_VALUE 0 client->devres_group_id 0
PARAM_VALUE 1 reg 15-16
CAPPED_DATA 0 client->adapter->retries 1
CAPPED_DATA 0 client->irq 1
CAPPED_DATA 1 reg 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 client->irq

drivers/input/keyboard/adp5588-keys.c adp5588_setup() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 0 client->debugfs 0
PARAM_VALUE 0 client->dev.devres_head.prev 0
PARAM_VALUE 0 client->devres_group_id 0
PARAM_VALUE 1 reg 3
PARAM_VALUE 2 val 64
CAPPED_DATA 0 client->adapter->retries 1
CAPPED_DATA 0 client->irq 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 client->irq

drivers/input/keyboard/adp5588-keys.c adp5588_setup() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 0 client->debugfs 0
PARAM_VALUE 0 client->dev.devres_head.prev 0
PARAM_VALUE 0 client->devres_group_id 0
PARAM_VALUE 1 reg 2
PARAM_VALUE 2 val 63
CAPPED_DATA 0 client->adapter->retries 1
CAPPED_DATA 0 client->irq 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 client->irq

drivers/input/keyboard/adp5588-keys.c adp5588_setup() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 0 client->debugfs 0
PARAM_VALUE 0 client->dev.devres_head.prev 0
PARAM_VALUE 0 client->devres_group_id 0
PARAM_VALUE 1 reg 1
PARAM_VALUE 2 val 25
CAPPED_DATA 0 client->adapter->retries 1
CAPPED_DATA 0 client->irq 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 client->irq

drivers/input/keyboard/adp5588-keys.c adp5588_thread_irq() -> adp5588_write()

Type Parameter Key Value
PARAM_VALUE 0 client 4096-ptr_max
PARAM_VALUE 0 client->adapter 4096-ptr_max
PARAM_VALUE 0 client->adapter->bus_lock.rtmutex.waiters.rb_leftmost->rb_right 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 client->adapter->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 client->adapter->lock_ops 4096-ptr_max
PARAM_VALUE 1 reg 2
DATA_SOURCE 2 val r adp5588_read
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL