summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephane Marchesin <marchesin@icps.u-strasbg.fr>2007-02-03 06:13:27 +0100
committerStephane Marchesin <marchesin@icps.u-strasbg.fr>2007-02-03 06:13:27 +0100
commit8c663b4e56b45d377a5a0fed4318a129fc1233fa (patch)
tree0fab88ffd80bf4c826fbf04ef9030ca67845308d
parentebf22aed9aa56e8ba00b5d3d1d2ca4600e5f1ec5 (diff)
nouveau: and of course, I was missing the last nv04 piece.
-rw-r--r--shared-core/nouveau_drv.h5
-rw-r--r--shared-core/nouveau_fifo.c1
-rw-r--r--shared-core/nouveau_irq.c2
3 files changed, 8 insertions, 0 deletions
diff --git a/shared-core/nouveau_drv.h b/shared-core/nouveau_drv.h
index 39fe1317..63721650 100644
--- a/shared-core/nouveau_drv.h
+++ b/shared-core/nouveau_drv.h
@@ -204,6 +204,11 @@ extern void nouveau_irq_preinstall(drm_device_t*);
extern void nouveau_irq_postinstall(drm_device_t*);
extern void nouveau_irq_uninstall(drm_device_t*);
+/* nv04_graph.c */
+extern void nouveau_nv04_context_switch(drm_device_t *dev);
+extern int nv04_graph_init(drm_device_t *dev);
+extern int nv04_graph_context_create(drm_device_t *dev, int channel);
+
/* nv10_graph.c */
extern void nouveau_nv10_context_switch(drm_device_t *dev);
extern int nv10_graph_init(drm_device_t *dev);
diff --git a/shared-core/nouveau_fifo.c b/shared-core/nouveau_fifo.c
index d0312a34..ca3b85c1 100644
--- a/shared-core/nouveau_fifo.c
+++ b/shared-core/nouveau_fifo.c
@@ -544,6 +544,7 @@ static int nouveau_fifo_alloc(drm_device_t* dev,drm_nouveau_fifo_alloc_t* init,
{
case NV_04:
case NV_05:
+ nv04_graph_context_create(dev, init->channel);
nouveau_nv04_context_init(dev, init);
break;
case NV_10:
diff --git a/shared-core/nouveau_irq.c b/shared-core/nouveau_irq.c
index 9b3d94f4..51d4bae1 100644
--- a/shared-core/nouveau_irq.c
+++ b/shared-core/nouveau_irq.c
@@ -192,6 +192,7 @@ static void nouveau_fifo_irq_handler(drm_device_t *dev)
NV_WRITE(NV03_PMC_INTR_0, NV_PMC_INTR_0_PFIFO_PENDING);
}
+#if 0
static void nouveau_nv04_context_switch(drm_device_t *dev)
{
drm_nouveau_private_t *dev_priv = dev->dev_private;
@@ -236,6 +237,7 @@ static void nouveau_nv04_context_switch(drm_device_t *dev)
NV_WRITE(NV04_PGRAPH_FIFO,0x1);
}
+#endif
static void nouveau_pgraph_irq_handler(drm_device_t *dev)
{