mirror of
https://github.com/torvalds/linux.git
synced 2024-12-22 02:52:56 +00:00
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:
parent
03bd6efa14
commit
7f2062e9de
@ -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;
|
||||||
}
|
}
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user