Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc3b0c7a authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau: remove unused sysmem fence code



Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent e75c091b
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -474,8 +474,6 @@ nouveau_fence_new(struct nouveau_channel *chan, bool sysmem,
	if (!fence)
		return -ENOMEM;

	fence->sysmem = sysmem;

	ret = nouveau_fence_emit(fence, chan);
	if (ret)
		nouveau_fence_unref(&fence);
+0 −4
Original line number Diff line number Diff line
@@ -12,8 +12,6 @@ struct nouveau_fence {

	struct list_head head;

	bool sysmem;

	struct nouveau_channel __rcu *channel;
	unsigned long timeout;
};
@@ -91,13 +89,11 @@ int nouveau_flip_complete(struct nvif_notify *);
struct nv84_fence_chan {
	struct nouveau_fence_chan base;
	struct nvkm_vma vma;
	struct nvkm_vma vma_gart;
};

struct nv84_fence_priv {
	struct nouveau_fence_priv base;
	struct nouveau_bo *bo;
	struct nouveau_bo *bo_gart;
	u32 *suspend;
	struct mutex mutex;
};
+2 −36
Original line number Diff line number Diff line
@@ -68,12 +68,7 @@ nv84_fence_emit(struct nouveau_fence *fence)
{
	struct nouveau_channel *chan = fence->channel;
	struct nv84_fence_chan *fctx = chan->fence;
	u64 addr = chan->chid * 16;

	if (fence->sysmem)
		addr += fctx->vma_gart.offset;
	else
		addr += fctx->vma.offset;
	u64 addr = fctx->vma.offset + chan->chid * 16;

	return fctx->base.emit32(chan, addr, fence->base.seqno);
}
@@ -83,12 +78,7 @@ nv84_fence_sync(struct nouveau_fence *fence,
		struct nouveau_channel *prev, struct nouveau_channel *chan)
{
	struct nv84_fence_chan *fctx = chan->fence;
	u64 addr = prev->chid * 16;

	if (fence->sysmem)
		addr += fctx->vma_gart.offset;
	else
		addr += fctx->vma.offset;
	u64 addr = fctx->vma.offset + prev->chid * 16;

	return fctx->base.sync32(chan, addr, fence->base.seqno);
}
@@ -108,7 +98,6 @@ nv84_fence_context_del(struct nouveau_channel *chan)

	nouveau_bo_wr32(priv->bo, chan->chid * 16 / 4, fctx->base.sequence);
	mutex_lock(&priv->mutex);
	nouveau_bo_vma_del(priv->bo, &fctx->vma_gart);
	nouveau_bo_vma_del(priv->bo, &fctx->vma);
	mutex_unlock(&priv->mutex);
	nouveau_fence_context_del(&fctx->base);
@@ -138,10 +127,6 @@ nv84_fence_context_new(struct nouveau_channel *chan)

	mutex_lock(&priv->mutex);
	ret = nouveau_bo_vma_add(priv->bo, cli->vm, &fctx->vma);
	if (ret == 0) {
		ret = nouveau_bo_vma_add(priv->bo_gart, cli->vm,
					&fctx->vma_gart);
	}
	mutex_unlock(&priv->mutex);

	if (ret)
@@ -182,10 +167,6 @@ static void
nv84_fence_destroy(struct nouveau_drm *drm)
{
	struct nv84_fence_priv *priv = drm->fence;
	nouveau_bo_unmap(priv->bo_gart);
	if (priv->bo_gart)
		nouveau_bo_unpin(priv->bo_gart);
	nouveau_bo_ref(NULL, &priv->bo_gart);
	nouveau_bo_unmap(priv->bo);
	if (priv->bo)
		nouveau_bo_unpin(priv->bo);
@@ -238,21 +219,6 @@ nv84_fence_create(struct nouveau_drm *drm)
			nouveau_bo_ref(NULL, &priv->bo);
	}

	if (ret == 0)
		ret = nouveau_bo_new(&drm->client, 16 * priv->base.contexts, 0,
				     TTM_PL_FLAG_TT | TTM_PL_FLAG_UNCACHED, 0,
				     0, NULL, NULL, &priv->bo_gart);
	if (ret == 0) {
		ret = nouveau_bo_pin(priv->bo_gart, TTM_PL_FLAG_TT, false);
		if (ret == 0) {
			ret = nouveau_bo_map(priv->bo_gart);
			if (ret)
				nouveau_bo_unpin(priv->bo_gart);
		}
		if (ret)
			nouveau_bo_ref(NULL, &priv->bo_gart);
	}

	if (ret)
		nv84_fence_destroy(drm);
	return ret;