Commit 4acd4293 authored by Ben Skeggs's avatar Ben Skeggs

drm/nvd0/disp: make it clearer that the cursor regs are pio evo channels

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 2eac77b7
...@@ -163,6 +163,12 @@ evo_fini_dma(struct drm_device *dev, int ch) ...@@ -163,6 +163,12 @@ evo_fini_dma(struct drm_device *dev, int ch)
nv_mask(dev, 0x6100a0, (1 << ch), 0x00000000); nv_mask(dev, 0x6100a0, (1 << ch), 0x00000000);
} }
static inline void
evo_piow(struct drm_device *dev, int ch, u16 mthd, u32 data)
{
nv_wr32(dev, 0x640000 + (ch * 0x1000) + mthd, data);
}
static int static int
evo_init_pio(struct drm_device *dev, int ch) evo_init_pio(struct drm_device *dev, int ch)
{ {
...@@ -616,10 +622,10 @@ static int ...@@ -616,10 +622,10 @@ static int
nvd0_crtc_cursor_move(struct drm_crtc *crtc, int x, int y) nvd0_crtc_cursor_move(struct drm_crtc *crtc, int x, int y)
{ {
struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc);
const u32 data = (y << 16) | x; int ch = EVO_CURS(nv_crtc->index);
nv_wr32(crtc->dev, 0x64d084 + (nv_crtc->index * 0x1000), data); evo_piow(crtc->dev, ch, 0x0084, (y << 16) | x);
nv_wr32(crtc->dev, 0x64d080 + (nv_crtc->index * 0x1000), 0x00000000); evo_piow(crtc->dev, ch, 0x0080, 0x00000000);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment