Define ring structure to access the cpu/gpu address of rptr/wptr/fence
instead of dynamic calculation.
Signed-off-by: Jack Xiao <Jack.Xiao@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
        struct amdgpu_bo        *ring_obj;
        volatile uint32_t       *ring;
        unsigned                rptr_offs;
+       u64                     rptr_gpu_addr;
+       volatile u32            *rptr_cpu_addr;
        u64                     wptr;
        u64                     wptr_old;
        unsigned                ring_size;
        bool                    use_doorbell;
        bool                    use_pollmem;
        unsigned                wptr_offs;
+       u64                     wptr_gpu_addr;
+       volatile u32            *wptr_cpu_addr;
        unsigned                fence_offs;
+       u64                     fence_gpu_addr;
+       volatile u32            *fence_cpu_addr;
        uint64_t                current_ctx;
        char                    name[16];
        u32                     trail_seq;