Defined in 2 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/ufs/core/ufshcd.c ufshcd_clock_scaling_unprepare() -> ufshcd_wb_toggle()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->caps 4096-u32max
PARAM_VALUE 0 hba->clk_gating.gate_work->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->next 1-u64max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.prev->prev 1-u64max
PARAM_VALUE 0 hba->clk_gating.ungate_work.lockdep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling.is_allowed 1
PARAM_VALUE 0 hba->clk_scaling_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->clk_scaling_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hba->clk_scaling_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.wait_lock.owner (-1)
PARAM_VALUE 0 hba->clk_scaling_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 hba->host 4096-ptr_max
PARAM_VALUE 0 hba->host->host_lock->rlock.dep_map->name 0-255
PARAM_VALUE 0 hba->host->scan_mutex.dep_map->name 0-255
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hba->host->scan_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hba->host->scan_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hba->host->scan_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->host->scan_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 hba->host->scan_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup 4096-ptr_max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->lock.owner 0,(-1)
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->lock.owner_cpu 0,u32max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->sda_is_static 1
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_barrier_mutex.magic 4096-ptr_max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_cb_mutex.magic 4096-ptr_max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_gp_mutex.magic 4096-ptr_max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_gp_seq 18446744073709551216
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_gp_seq_needed 0,4-u64max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_gp_seq_needed_exp 0,18446744073709551216
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_size_state 0-1,8
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_ssp->sda 1-u64max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->srcu_ssp->srcu_sup 4096-ptr_max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->work.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 hba->host->tag_set.srcu->srcu_sup->work.work.entry.prev->prev 2076614606316732416
PARAM_VALUE 0 hba->host_sem.first_waiter->up 0-1
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->vops 0,4096-ptr_max
PARAM_VALUE 0 hba->wb_mutex.dep_map->name 0-255
PARAM_VALUE 0 hba->wb_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hba->wb_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hba->wb_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hba->wb_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->wb_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hba->wb_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hba->wb_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hba->wb_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hba->wb_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hba->wb_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->wb_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 hba->wb_mutex.wait_lock.owner_cpu u32max
BUF_SIZE 0 hba s32min-(-2),1-s32max
BUF_SIZE 0 hba s32min-(-2),1-s32max
CAPPED_DATA 0 hba->clk_scaling.wb_gear 1
CAPPED_DATA 0 &hba->clk_scaling_lock 1
CAPPED_DATA 0 &hba->host->scan_mutex 1
CAPPED_DATA 0 &hba->wb_mutex 1
DATA_SOURCE 0 hba $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 hba->clk_scaling.is_enabled 0
USER_DATA 0 hba->pm_qos_req.node.prio 0-s32max
UNITS 0 hba unit_byte
HALF_LOCKED2 &devfreq->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 0 &hba->host_sem

drivers/ufs/core/ufshcd.c ufshcd_configure_wb() -> ufshcd_wb_toggle()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->caps 128-u32max
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 hba->crypto_profile.lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->host_sem.first_waiter->up 0-1
PARAM_VALUE 1 enable 1
DATA_SOURCE 0 hba $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 0 &hba->host_sem

drivers/ufs/core/ufshcd.c ufshcd_wb_force_disable() -> ufshcd_wb_toggle()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->caps 128-u32max
PARAM_VALUE 0 hba->clk_gating.gate_work->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.gate_work.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 hba->clk_gating.state 2
PARAM_VALUE 0 hba->clk_gating.ungate_work.lockdep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 hba->clk_scaling_lock.first_waiter->type 0-1
PARAM_VALUE 0 hba->dev 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->class 0,4096-ptr_max
PARAM_VALUE 0 hba->dev->driver 0,4096-ptr_max
PARAM_VALUE 0 hba->dev_cmd.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 hba->dev_cmd.lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hba->dev_cmd.type 1
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hba->host->pseudo_sdev->request_queue->q_lockdep_map->name 0-255
PARAM_VALUE 0 hba->ufs_stats.last_hibern8_exit_tstamp 0
PARAM_VALUE 1 enable 0
DATA_SOURCE 0 hba $0
NOCHECK_CALL

drivers/ufs/core/ufs-sysfs.c wb_on_store() -> ufshcd_wb_toggle()

Type Parameter Key Value
PARAM_VALUE 0 hba 4096-ptr_max
PARAM_VALUE 0 hba->caps 128-u32max
PARAM_VALUE 0 hba->host_sem.first_waiter->list.next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->list.prev->next 5349227543279349760
PARAM_VALUE 0 hba->host_sem.first_waiter->up 0
PARAM_VALUE 0 hba->host_sem.lock.dep_map->name 0-255
PARAM_VALUE 0 hba->host_sem.lock.owner (-1)
PARAM_VALUE 0 hba->host_sem.lock.owner_cpu u32max
PARAM_VALUE 0 hba->shutting_down 0
PARAM_VALUE 0 hba->ufs_device_wlun 4096-ptr_max
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.request 0-4
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 hba->ufs_device_wlun->sdev_gendev.power.wakeirq->status 0-4294967295
BUF_SIZE 0 hba s32min-(-2),1-s32max
BUF_SIZE 0 hba s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 enable
UNITS 0 hba unit_byte
LOCK2 &of->mutex
LOCK2 0 &hba->host_sem
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct ufs_hba)->host_sem