[PATCH] nouveau: Fix nv20/30 context loading
authorStuart Bennett <sb476@cam.ac.uk>
Thu, 27 Dec 2007 01:10:52 +0000 (01:10 +0000)
committerStephane Marchesin <marchesin@icps.u-strasbg.fr>
Fri, 4 Jan 2008 04:07:35 +0000 (05:07 +0100)
Don't set the context as valid until it has been loaded

shared-core/nv20_graph.c

index a21fde7..37a147b 100644 (file)
@@ -642,6 +642,7 @@ int nv20_graph_load_context(struct nouveau_channel *chan)
        NV_WRITE(NV20_PGRAPH_CHANNEL_CTX_POINTER, inst);
        NV_WRITE(NV20_PGRAPH_CHANNEL_CTX_XFER,
                 NV20_PGRAPH_CHANNEL_CTX_XFER_LOAD);
+       NV_WRITE(NV10_PGRAPH_CTX_CONTROL, 0x10010100);
 
        nouveau_wait_for_idle(dev);
        return 0;
@@ -759,7 +760,7 @@ int nv20_graph_init(struct drm_device *dev) {
        NV_WRITE(NV10_PGRAPH_RDI_INDEX, 0x00EA000C);
        NV_WRITE(NV10_PGRAPH_RDI_DATA, NV_READ(0x100324));
 
-       NV_WRITE(NV10_PGRAPH_CTX_CONTROL, 0x10010100);
+       NV_WRITE(NV10_PGRAPH_CTX_CONTROL, 0x10000100);
        NV_WRITE(NV10_PGRAPH_STATE      , 0xFFFFFFFF);
        NV_WRITE(NV04_PGRAPH_FIFO       , 0x00000001);
 
@@ -854,7 +855,7 @@ int nv30_graph_init(struct drm_device *dev)
                NV_WRITE(NV10_PGRAPH_TSTATUS(i), NV_READ(NV10_PFB_TSTATUS(i)));
        }
 
-       NV_WRITE(NV10_PGRAPH_CTX_CONTROL, 0x10010100);
+       NV_WRITE(NV10_PGRAPH_CTX_CONTROL, 0x10000100);
        NV_WRITE(NV10_PGRAPH_STATE      , 0xFFFFFFFF);
        NV_WRITE(NV04_PGRAPH_FIFO       , 0x00000001);