History

drm/nvc0/disp: fix thinko in vblank regression fix..

Kelly Doran committed 14 years ago

Commit 41130141 parent df285501 file · +12 −7Browse files

Unified · Split

drivers/gpu/drm/nouveau/core/engine/disp/nv50.c+12−7
@@ -49,13 +49,7 @@ nv50_disp_intr_vblank(struct nv50_disp_priv *priv, int crtc) · 48 unmodified lines
4949 if (chan->vblank.crtc != crtc)
5050 continue;
5151
52− if (nv_device(priv)->chipset == 0x50) {
53− nv_wr32(priv, 0x001704, chan->vblank.channel);
54− nv_wr32(priv, 0x001710, 0x80000000 | chan->vblank.ctxdma);
55− bar->flush(bar);
56− nv_wr32(priv, 0x001570, chan->vblank.offset);
57− nv_wr32(priv, 0x001574, chan->vblank.value);
58− } else {
52+ if (nv_device(priv)->chipset >= 0xc0) {
5953 nv_wr32(priv, 0x001718, 0x80000000 | chan->vblank.channel);
6054 bar->flush(bar);
6155 nv_wr32(priv, 0x06000c,
@@ -63,6 +57,17 @@ nv50_disp_intr_vblank(struct nv50_disp_priv *priv, int crtc) · 1 unmodified line
6357 nv_wr32(priv, 0x060010,
6458 lower_32_bits(chan->vblank.offset));
6559 nv_wr32(priv, 0x060014, chan->vblank.value);
60+ } else {
61+ nv_wr32(priv, 0x001704, chan->vblank.channel);
62+ nv_wr32(priv, 0x001710, 0x80000000 | chan->vblank.ctxdma);
63+ bar->flush(bar);
64+ if (nv_device(priv)->chipset == 0x50) {
65+ nv_wr32(priv, 0x001570, chan->vblank.offset);
66+ nv_wr32(priv, 0x001574, chan->vblank.value);
67+ } else {
68+ nv_wr32(priv, 0x060010, chan->vblank.offset);
69+ nv_wr32(priv, 0x060014, chan->vblank.value);
70+ }
6671 }
6772
6873 list_del(&chan->vblank.head);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t