forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-13 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e
kernel/drivers/gpu/drm/nouveau/nv10_fence.c
....@@ -21,20 +21,22 @@
2121 *
2222 * Authors: Ben Skeggs <bskeggs@redhat.com>
2323 */
24
-
2524 #include "nouveau_drv.h"
2625 #include "nouveau_dma.h"
2726 #include "nv10_fence.h"
2827
28
+#include <nvif/push006c.h>
29
+
30
+#include <nvhw/class/cl006e.h>
31
+
2932 int
3033 nv10_fence_emit(struct nouveau_fence *fence)
3134 {
32
- struct nouveau_channel *chan = fence->channel;
33
- int ret = RING_SPACE(chan, 2);
35
+ struct nvif_push *push = fence->channel->chan.push;
36
+ int ret = PUSH_WAIT(push, 2);
3437 if (ret == 0) {
35
- BEGIN_NV04(chan, 0, NV10_SUBCHAN_REF_CNT, 1);
36
- OUT_RING (chan, fence->base.seqno);
37
- FIRE_RING (chan);
38
+ PUSH_MTHD(push, NV06E, SET_REFERENCE, fence->base.seqno);
39
+ PUSH_KICK(push);
3840 }
3941 return ret;
4042 }
....@@ -50,7 +52,7 @@
5052 u32
5153 nv10_fence_read(struct nouveau_channel *chan)
5254 {
53
- return nvif_rd32(&chan->user, 0x0048);
55
+ return NVIF_RD32(&chan->user, NV06E, REFERENCE);
5456 }
5557
5658 void
....@@ -58,7 +60,7 @@
5860 {
5961 struct nv10_fence_chan *fctx = chan->fence;
6062 nouveau_fence_context_del(&fctx->base);
61
- nvif_object_fini(&fctx->sema);
63
+ nvif_object_dtor(&fctx->sema);
6264 chan->fence = NULL;
6365 nouveau_fence_context_free(&fctx->base);
6466 }