Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 5 files:
- drivers/gpu/drm/msm/adreno/a6xx_gpu.c, line 182
- drivers/gpu/drm/msm/adreno/a6xx_preempt.c
- drivers/gpu/drm/msm/adreno/a6xx_preempt.h, line 49
- drivers/gpu/drm/msm/adreno/a8xx_gpu.c, line 186
- drivers/gpu/drm/msm/adreno/a8xx_preempt.c
Smatch caller information:
drivers/gpu/drm/msm/adreno/a8xx_preempt.c a8xx_preempt_trigger() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->eval_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 0-s32max |
| PARAM_VALUE | 1 | offset | 2241 |
| PARAM_VALUE | 2 | value | 1-u64max |
| PARAM_VALUE | 3 | mask | 2 |
| PARAM_VALUE | 4 | is_64b | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &gpu->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/msm/adreno/a8xx_preempt.c a8xx_preempt_trigger() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->eval_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 0-s32max |
| PARAM_VALUE | 1 | offset | 2243 |
| PARAM_VALUE | 2 | value | 1-u64max |
| PARAM_VALUE | 3 | mask | 2 |
| PARAM_VALUE | 4 | is_64b | 1 |
| CAPPED_DATA | 0 | a6xx_gpu->cur_ring | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &gpu->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/msm/adreno/a8xx_preempt.c a8xx_preempt_trigger() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->eval_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | a6xx_gpu->next_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->next_ring->memptrs | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->next_ring->restore_wptr | 0 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 3 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_timer.entry->pprev | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_timer.entry.pprev | 0,4096-ptr_max |
| PARAM_VALUE | 1 | offset | 2240 |
| PARAM_VALUE | 2 | value | 1-961 |
| PARAM_VALUE | 3 | mask | 2 |
| PARAM_VALUE | 4 | is_64b | 0 |
| CAPPED_DATA | 0 | a6xx_gpu->cur_ring | 1 |
| CAPPED_DATA | 0 | &a6xx_gpu->preempt_timer | 1 |
| BIT_INFO | 2 | value | 0x1,0x3ff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &gpu->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/msm/adreno/a8xx_preempt.c update_wptr() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 2 |
| PARAM_VALUE | 1 | offset | 2055 |
| PARAM_VALUE | 3 | mask | 1 |
| PARAM_VALUE | 4 | is_64b | 0 |
| DATA_SOURCE | 0 | a6xx_gpu | $0 |
| DATA_SOURCE | 2 | value | r get_wptr |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ring->preempt_lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | 0 | &a6xx_gpu->eval_lock | |
| TYPE_LOCK | (struct msm_ringbuffer)->preempt_lock |
drivers/gpu/drm/msm/adreno/a6xx_preempt.c a6xx_preempt_trigger() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->eval_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 0-s32max |
| PARAM_VALUE | 1 | offset | 2209 |
| PARAM_VALUE | 2 | value | 1-u64max |
| PARAM_VALUE | 3 | mask | 2 |
| PARAM_VALUE | 4 | is_64b | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &gpu->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/msm/adreno/a6xx_preempt.c a6xx_preempt_trigger() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->eval_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 0-s32max |
| PARAM_VALUE | 1 | offset | 2211 |
| PARAM_VALUE | 2 | value | 1-u64max |
| PARAM_VALUE | 3 | mask | 2 |
| PARAM_VALUE | 4 | is_64b | 1 |
| CAPPED_DATA | 0 | a6xx_gpu->cur_ring | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &gpu->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/msm/adreno/a6xx_preempt.c a6xx_preempt_trigger() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->eval_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | a6xx_gpu->next_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->next_ring->memptrs | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->next_ring->restore_wptr | 0 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_smmu_iova | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 3 |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_timer.entry->pprev | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_timer.entry.pprev | 0,4096-ptr_max |
| PARAM_VALUE | 1 | offset | 2208 |
| PARAM_VALUE | 2 | value | 1-961 |
| PARAM_VALUE | 3 | mask | 2 |
| PARAM_VALUE | 4 | is_64b | 0 |
| CAPPED_DATA | 0 | a6xx_gpu->cur_ring | 1 |
| CAPPED_DATA | 0 | &a6xx_gpu->preempt_timer | 1 |
| BIT_INFO | 2 | value | 0x1,0x3ff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &gpu->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/msm/adreno/a6xx_preempt.c update_wptr() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 2 |
| PARAM_VALUE | 1 | offset | 2055 |
| PARAM_VALUE | 3 | mask | 1 |
| PARAM_VALUE | 4 | is_64b | 0 |
| DATA_SOURCE | 0 | a6xx_gpu | $0 |
| DATA_SOURCE | 2 | value | r get_wptr |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ring->preempt_lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | 0 | &a6xx_gpu->eval_lock | |
| TYPE_LOCK | (struct msm_ringbuffer)->preempt_lock |
drivers/gpu/drm/msm/adreno/a8xx_gpu.c a8xx_flush() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 0,2 |
| PARAM_VALUE | 1 | offset | 2055 |
| PARAM_VALUE | 3 | mask | 1 |
| PARAM_VALUE | 4 | is_64b | 0 |
| CAPPED_DATA | 0 | a6xx_gpu->cur_ring | 1 |
| DATA_SOURCE | 2 | value | r get_wptr |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | &ring->preempt_lock | ||
| LOCK2 | flags | ||
| TYPE_LOCK | (struct msm_ringbuffer)->preempt_lock |
drivers/gpu/drm/msm/adreno/a6xx_gpu.c a6xx_flush() -> a6xx_fenced_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | a6xx_gpu | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->cur_ring | 4096-ptr_max |
| PARAM_VALUE | 0 | a6xx_gpu->preempt_state.counter | 0,2 |
| PARAM_VALUE | 1 | offset | 2055 |
| PARAM_VALUE | 3 | mask | 1 |
| PARAM_VALUE | 4 | is_64b | 0 |
| CAPPED_DATA | 0 | a6xx_gpu->cur_ring | 1 |
| DATA_SOURCE | 2 | value | r get_wptr |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &ring->preempt_lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &a6xx_gpu->gmu.lock | ||
| HALF_LOCKED2 | &gpu->lock | ||
| TYPE_LOCK | (struct msm_ringbuffer)->preempt_lock |