diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2014-01-08 21:30:43 -0500 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2014-01-22 22:38:44 -0500 |
commit | 649ec925ae32eaca304589bafb1cb0fef285bbfe (patch) | |
tree | a4026254f5bfa4b74016d9f318c3b24837014d3c | |
parent | e1b6b14ad5e955c85bdaa8a375554ec1669eed21 (diff) |
drm/nve0/fifo: keep mmu fault interrupts enabled at all times
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r-- | drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c b/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c index c4860e3d522d..3bf5ba8804e9 100644 --- a/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c +++ b/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c | |||
@@ -754,6 +754,21 @@ nve0_fifo_uevent_disable(struct nouveau_event *event, int index) | |||
754 | } | 754 | } |
755 | 755 | ||
756 | int | 756 | int |
757 | nve0_fifo_fini(struct nouveau_object *object, bool suspend) | ||
758 | { | ||
759 | struct nve0_fifo_priv *priv = (void *)object; | ||
760 | int ret; | ||
761 | |||
762 | ret = nouveau_fifo_fini(&priv->base, suspend); | ||
763 | if (ret) | ||
764 | return ret; | ||
765 | |||
766 | /* allow mmu fault interrupts, even when we're not using fifo */ | ||
767 | nv_mask(priv, 0x002140, 0x10000000, 0x10000000); | ||
768 | return 0; | ||
769 | } | ||
770 | |||
771 | int | ||
757 | nve0_fifo_init(struct nouveau_object *object) | 772 | nve0_fifo_init(struct nouveau_object *object) |
758 | { | 773 | { |
759 | struct nve0_fifo_priv *priv = (void *)object; | 774 | struct nve0_fifo_priv *priv = (void *)object; |
@@ -855,7 +870,7 @@ nve0_fifo_oclass = &(struct nve0_fifo_impl) { | |||
855 | .ctor = nve0_fifo_ctor, | 870 | .ctor = nve0_fifo_ctor, |
856 | .dtor = nve0_fifo_dtor, | 871 | .dtor = nve0_fifo_dtor, |
857 | .init = nve0_fifo_init, | 872 | .init = nve0_fifo_init, |
858 | .fini = _nouveau_fifo_fini, | 873 | .fini = nve0_fifo_fini, |
859 | }, | 874 | }, |
860 | .channels = 4096, | 875 | .channels = 4096, |
861 | }.base; | 876 | }.base; |