diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2014-08-10 04:10:25 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2014-08-10 05:28:05 +1000 |
commit | 867920f8c920bcaa5a6fa5ebad4596669b82ba80 (patch) | |
tree | 063aebcdfdeba309f3921d9fe2a8463aec64ff7c /drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c | |
parent | 6c6ae061b61c1fd0d1823765299bcc009ddc21c8 (diff) | |
download | op-kernel-dev-867920f8c920bcaa5a6fa5ebad4596669b82ba80.zip op-kernel-dev-867920f8c920bcaa5a6fa5ebad4596669b82ba80.tar.gz |
drm/nouveau/fifo: implement nvif event source
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c b/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c index ef730b5..d2f0fd3 100644 --- a/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c +++ b/drivers/gpu/drm/nouveau/core/engine/fifo/nve0.c @@ -339,6 +339,7 @@ nve0_fifo_ofuncs = { .map = _nouveau_fifo_channel_map, .rd32 = _nouveau_fifo_channel_rd32, .wr32 = _nouveau_fifo_channel_wr32, + .ntfy = _nouveau_fifo_channel_ntfy }; static struct nouveau_oclass @@ -871,7 +872,7 @@ nve0_fifo_intr_runlist(struct nve0_fifo_priv *priv) static void nve0_fifo_intr_engine(struct nve0_fifo_priv *priv) { - nvkm_event_send(&priv->base.uevent, 1, 0, NULL, 0); + nouveau_fifo_uevent(&priv->base); } static void @@ -977,21 +978,9 @@ nve0_fifo_uevent_fini(struct nvkm_event *event, int type, int index) nv_mask(fifo, 0x002140, 0x80000000, 0x00000000); } -static int -nve0_fifo_uevent_ctor(void *data, u32 size, struct nvkm_notify *notify) -{ - if (size == 0) { - notify->size = 0; - notify->types = 1; - notify->index = 0; - return 0; - } - return -ENOSYS; -} - static const struct nvkm_event_func nve0_fifo_uevent_func = { - .ctor = nve0_fifo_uevent_ctor, + .ctor = nouveau_fifo_uevent_ctor, .init = nve0_fifo_uevent_init, .fini = nve0_fifo_uevent_fini, }; |