Documented in 1 files:
Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
drivers/i3c/master.c dev_nack_retry_count_store() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | bus->lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | bus->lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | bus->lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| BUF_SIZE | 0 | bus | (-1),296 |
| BUF_SIZE | 0 | bus | (-1),296 |
| DATA_SOURCE | 0 | bus | r dev_to_i3cbus |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &of->mutex | ||
| LOCK2 | 0 | &bus->lock | |
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct i3c_bus)->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/i3c/master.c i3c_i2c_notifier_call() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| NOCHECK_CALL | |||
| LOCK2 | &master->bus.lock | ||
| TYPE_LOCK | (struct i3c_bus)->lock |
drivers/i3c/master.c i3c_master_do_daa_ext() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->devs.i3c.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 0 | bus->id | s32min-s32max |
| HOST_DATA | 0 | bus->lock.count.counter | s64min-s64max |
| HOST_DATA | 0 | bus->lock.osq.tail.counter | 0-s32max |
| HOST_DATA | 0 | bus->lock.owner.counter | s64min-s64max |
| HOST_DATA | 0 | bus->mode | 0-u32max |
| HOST_DATA | 0 | bus->scl_rate.i2c | 0-u64max |
| HOST_DATA | 0 | bus->scl_rate.i3c | 0-u64max |
| LOCK2 | &master->bus.lock | ||
| TYPE_LOCK | (struct i3c_bus)->lock |
drivers/i3c/master.c i3c_master_register_new_i3c_devs() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| NOCHECK_CALL | |||
| LOCK2 | &master->bus.lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct i3c_bus)->lock |
drivers/i3c/master.c i3c_master_register_new_i3c_devs() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| NOCHECK_CALL | |||
| LOCK2 | &master->bus.lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct i3c_bus)->lock |
drivers/i3c/master.c i3c_master_register_new_i3c_devs() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| NOCHECK_CALL | |||
| LOCK2 | &master->bus.lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct i3c_bus)->lock |
drivers/i3c/master.c i3c_master_shutdown() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &master->bus.lock | ||
| HALF_LOCKED2 | &dev->mutex | ||
| TYPE_LOCK | (struct i3c_bus)->lock |
drivers/i3c/master.c i3c_set_hotjoin() -> i3c_bus_maintenance_unlock()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | bus | 4096-ptr_max |
| PARAM_VALUE | 0 | bus->lock.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &master->bus.lock | ||
| HALF_LOCKED2 | &of->mutex | ||
| TYPE_LOCK | (struct i3c_bus)->lock |