Home
last modified time | relevance | path

Searched refs:a5xx_gpu (Results 1 – 6 of 6) sorted by relevance

/Linux-v4.19/drivers/gpu/drm/msm/adreno/
Da5xx_preempt.c21 static inline bool try_preempt_state(struct a5xx_gpu *a5xx_gpu, in try_preempt_state() argument
24 enum preempt_state cur = atomic_cmpxchg(&a5xx_gpu->preempt_state, in try_preempt_state()
34 static inline void set_preempt_state(struct a5xx_gpu *gpu, in set_preempt_state()
87 struct a5xx_gpu *a5xx_gpu = from_timer(a5xx_gpu, t, preempt_timer); in a5xx_preempt_timer() local
88 struct msm_gpu *gpu = &a5xx_gpu->base.base; in a5xx_preempt_timer()
92 if (!try_preempt_state(a5xx_gpu, PREEMPT_TRIGGERED, PREEMPT_FAULTED)) in a5xx_preempt_timer()
103 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_preempt_trigger() local
114 if (!try_preempt_state(a5xx_gpu, PREEMPT_NONE, PREEMPT_START)) in a5xx_preempt_trigger()
124 if (!ring || (a5xx_gpu->cur_ring == ring)) { in a5xx_preempt_trigger()
137 set_preempt_state(a5xx_gpu, PREEMPT_ABORT); in a5xx_preempt_trigger()
[all …]
Da5xx_power.c122 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_lm_setup() local
138 gpu_write(gpu, REG_A5XX_GPMU_BASE_LEAKAGE, a5xx_gpu->lm_leakage); in a5xx_lm_setup()
181 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_gpmu_init() local
184 if (!a5xx_gpu->gpmu_dwords) in a5xx_gpmu_init()
193 OUT_RING(ring, lower_32_bits(a5xx_gpu->gpmu_iova)); in a5xx_gpmu_init()
194 OUT_RING(ring, upper_32_bits(a5xx_gpu->gpmu_iova)); in a5xx_gpmu_init()
195 OUT_RING(ring, a5xx_gpu->gpmu_dwords); in a5xx_gpmu_init()
262 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_gpmu_ucode_init() local
268 if (a5xx_gpu->gpmu_bo) in a5xx_gpmu_ucode_init()
299 &a5xx_gpu->gpmu_bo, &a5xx_gpu->gpmu_iova); in a5xx_gpmu_ucode_init()
[all …]
Da5xx_debugfs.c113 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in reset_set() local
132 if (a5xx_gpu->pm4_bo) { in reset_set()
133 if (a5xx_gpu->pm4_iova) in reset_set()
134 msm_gem_put_iova(a5xx_gpu->pm4_bo, gpu->aspace); in reset_set()
135 drm_gem_object_unreference(a5xx_gpu->pm4_bo); in reset_set()
136 a5xx_gpu->pm4_bo = NULL; in reset_set()
139 if (a5xx_gpu->pfp_bo) { in reset_set()
140 if (a5xx_gpu->pfp_iova) in reset_set()
141 msm_gem_put_iova(a5xx_gpu->pfp_bo, gpu->aspace); in reset_set()
142 drm_gem_object_unreference(a5xx_gpu->pfp_bo); in reset_set()
[all …]
Da5xx_gpu.c125 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_flush() local
143 if (a5xx_gpu->cur_ring == ring && !a5xx_in_preempt(a5xx_gpu)) in a5xx_flush()
210 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_submit() local
230 OUT_RING(ring, lower_32_bits(a5xx_gpu->preempt_iova[submit->ring->id])); in a5xx_submit()
231 OUT_RING(ring, upper_32_bits(a5xx_gpu->preempt_iova[submit->ring->id])); in a5xx_submit()
464 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_preempt_start() local
476 OUT_RING(ring, lower_32_bits(a5xx_gpu->preempt_iova[ring->id])); in a5xx_preempt_start()
477 OUT_RING(ring, upper_32_bits(a5xx_gpu->preempt_iova[ring->id])); in a5xx_preempt_start()
507 struct a5xx_gpu *a5xx_gpu = to_a5xx_gpu(adreno_gpu); in a5xx_ucode_init() local
510 if (!a5xx_gpu->pm4_bo) { in a5xx_ucode_init()
[all …]
Da5xx_gpu.h24 struct a5xx_gpu { struct
50 #define to_a5xx_gpu(x) container_of(x, struct a5xx_gpu, base) argument
162 static inline bool a5xx_in_preempt(struct a5xx_gpu *a5xx_gpu) in a5xx_in_preempt() argument
164 int preempt_state = atomic_read(&a5xx_gpu->preempt_state); in a5xx_in_preempt()
/Linux-v4.19/drivers/gpu/drm/msm/
DMakefile11 adreno/a5xx_gpu.o \