drm/nv50: remove execution engine context saves on suspend

Now triggered automagically by the GPU on PFIFO takedown.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
Ben Skeggs 2012-05-01 16:39:08 +10:00
parent 03bd6efa14
commit 7f2062e9de
3 changed files with 0 additions and 14 deletions

View File

@ -210,12 +210,6 @@ nv50_graph_init(struct drm_device *dev, int engine)
static int static int
nv50_graph_fini(struct drm_device *dev, int engine, bool suspend) nv50_graph_fini(struct drm_device *dev, int engine, bool suspend)
{ {
nv_mask(dev, 0x400500, 0x00010001, 0x00000000);
if (!nv_wait(dev, 0x400700, ~0, 0) && suspend) {
nv_mask(dev, 0x400500, 0x00010001, 0x00010001);
return -EBUSY;
}
nv50_graph_unload_context(dev);
nv_wr32(dev, 0x40013c, 0x00000000); nv_wr32(dev, 0x40013c, 0x00000000);
return 0; return 0;
} }

View File

@ -162,7 +162,6 @@ nv50_mpeg_init(struct drm_device *dev, int engine)
static int static int
nv50_mpeg_fini(struct drm_device *dev, int engine, bool suspend) nv50_mpeg_fini(struct drm_device *dev, int engine, bool suspend)
{ {
/*XXX: context save for s/r */
nv_mask(dev, 0x00b32c, 0x00000001, 0x00000000); nv_mask(dev, 0x00b32c, 0x00000001, 0x00000000);
nv_wr32(dev, 0x00b140, 0x00000000); nv_wr32(dev, 0x00b140, 0x00000000);
return 0; return 0;

View File

@ -143,13 +143,6 @@ static int
nva3_copy_fini(struct drm_device *dev, int engine, bool suspend) nva3_copy_fini(struct drm_device *dev, int engine, bool suspend)
{ {
nv_mask(dev, 0x104048, 0x00000003, 0x00000000); nv_mask(dev, 0x104048, 0x00000003, 0x00000000);
/* trigger fuc context unload */
nv_wait(dev, 0x104008, 0x0000000c, 0x00000000);
nv_mask(dev, 0x104054, 0x40000000, 0x00000000);
nv_wr32(dev, 0x104000, 0x00000008);
nv_wait(dev, 0x104008, 0x00000008, 0x00000000);
nv_wr32(dev, 0x104014, 0xffffffff); nv_wr32(dev, 0x104014, 0xffffffff);
return 0; return 0;
} }