Lines Matching refs:rptr
293 * There is a rptr (read pointer) that determines where the
360 u32 rptr;
363 rptr = le32_to_cpu(rdev->wb.wb[ring->rptr_offs/4]);
365 rptr = RREG32(ring->rptr_reg);
366 ring->rptr = (rptr & ring->ptr_reg_mask) >> ring->ptr_reg_shift;
368 ring->ring_free_dw = (ring->rptr + (ring->ring_size / 4));
502 * Used for lockup detection to see if the rptr is advancing.
509 if (ring->rptr == ring->wptr) {
523 * Update the last rptr value and timestamp (all asics).
527 ring->last_rptr = ring->rptr;
537 * have CP rptr to a different value of jiffies wrap around which will force
541 * the current CP rptr, even if it's unlikely it might happen. To avoid this
554 uint32_t rptr;
562 rptr = RREG32(ring->rptr_reg);
563 ring->rptr = (rptr & ring->ptr_reg_mask) >> ring->ptr_reg_shift;
564 if (ring->rptr != ring->last_rptr) {
612 /* no way to read back the next rptr */
678 * @rptr_offs: offset of the rptr writeback location in the WB buffer
679 * @rptr_reg: MMIO offset of the rptr register
681 * @ptr_reg_shift: bit offset of the rptr/wptr values
682 * @ptr_reg_mask: bit mask of the rptr/wptr values
801 seq_printf(m, "rptr(0x%04x): 0x%08x [%5d]\n", ring->rptr_reg, tmp, tmp);
803 seq_printf(m, "rptr next(0x%04x): 0x%08x\n", ring->rptr_save_reg,
807 seq_printf(m, "driver's copy of the rptr: 0x%08x [%5d]\n", ring->rptr, ring->rptr);
812 /* print 8 dw before current rptr as often it's the last executed
815 i = (ring->rptr + ring->ptr_mask + 1 - 32) & ring->ptr_mask;