drm/nv50-nvc0: fix ramht entries for multiple evo channels
authorBen Skeggs <bskeggs@redhat.com>
Tue, 1 Feb 2011 00:41:01 +0000 (10:41 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Thu, 24 Feb 2011 20:44:48 +0000 (06:44 +1000)
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nouveau_ramht.c

index bef3e69..a24a81f 100644 (file)
@@ -114,7 +114,9 @@ nouveau_ramht_insert(struct nouveau_channel *chan, u32 handle,
                      (gpuobj->engine << NV40_RAMHT_CONTEXT_ENGINE_SHIFT);
        } else {
                if (gpuobj->engine == NVOBJ_ENGINE_DISPLAY) {
-                       ctx = (gpuobj->cinst << 10) | chan->id;
+                       ctx = (gpuobj->cinst << 10) |
+                             (chan->id << 28) |
+                             chan->id; /* HASH_TAG */
                } else {
                        ctx = (gpuobj->cinst >> 4) |
                              ((gpuobj->engine <<