drm/radeon: rework UVD writeback & [rw]ptr handling