Lines Matching refs:wptr
240 ret = ring->wptr & ring->buf_mask;/* this is the offset we need patch later */ in sdma_v5_0_ring_init_cond_exec()
254 cur = (ring->wptr - 1) & ring->buf_mask; in sdma_v5_0_ring_patch_cond_exec()
289 u64 *wptr = NULL; in sdma_v5_0_ring_get_wptr() local
294 wptr = ((u64 *)&adev->wb.wb[ring->wptr_offs]); in sdma_v5_0_ring_get_wptr()
295 DRM_DEBUG("wptr/doorbell before shift == 0x%016llx\n", *wptr); in sdma_v5_0_ring_get_wptr()
296 *wptr = (*wptr) >> 2; in sdma_v5_0_ring_get_wptr()
297 DRM_DEBUG("wptr/doorbell after shift == 0x%016llx\n", *wptr); in sdma_v5_0_ring_get_wptr()
301 wptr = &local_wptr; in sdma_v5_0_ring_get_wptr()
307 *wptr = highbit; in sdma_v5_0_ring_get_wptr()
308 *wptr = (*wptr) << 32; in sdma_v5_0_ring_get_wptr()
309 *wptr |= lowbit; in sdma_v5_0_ring_get_wptr()
312 return *wptr; in sdma_v5_0_ring_get_wptr()
333 lower_32_bits(ring->wptr << 2), in sdma_v5_0_ring_set_wptr()
334 upper_32_bits(ring->wptr << 2)); in sdma_v5_0_ring_set_wptr()
336 adev->wb.wb[ring->wptr_offs] = lower_32_bits(ring->wptr << 2); in sdma_v5_0_ring_set_wptr()
337 adev->wb.wb[ring->wptr_offs + 1] = upper_32_bits(ring->wptr << 2); in sdma_v5_0_ring_set_wptr()
339 ring->doorbell_index, ring->wptr << 2); in sdma_v5_0_ring_set_wptr()
340 WDOORBELL64(ring->doorbell_index, ring->wptr << 2); in sdma_v5_0_ring_set_wptr()
346 lower_32_bits(ring->wptr << 2), in sdma_v5_0_ring_set_wptr()
348 upper_32_bits(ring->wptr << 2)); in sdma_v5_0_ring_set_wptr()
350 lower_32_bits(ring->wptr << 2)); in sdma_v5_0_ring_set_wptr()
352 upper_32_bits(ring->wptr << 2)); in sdma_v5_0_ring_set_wptr()
386 sdma_v5_0_ring_insert_nop(ring, (10 - (lower_32_bits(ring->wptr) & 7)) % 8); in sdma_v5_0_ring_emit_ib()
663 ring->wptr = 0; in sdma_v5_0_gfx_resume()
669 WREG32(sdma_v5_0_get_reg_offset(adev, i, mmSDMA0_GFX_RB_WPTR), lower_32_bits(ring->wptr) << 2); in sdma_v5_0_gfx_resume()
670 … WREG32(sdma_v5_0_get_reg_offset(adev, i, mmSDMA0_GFX_RB_WPTR_HI), upper_32_bits(ring->wptr) << 2); in sdma_v5_0_gfx_resume()