Commit 790f27e0 authored by Christian König's avatar Christian König
Browse files

drm/etnaviv: use dma_resv_describe

parent f19ee2f3
Loading
Loading
Loading
Loading
+7 −19
Original line number Diff line number Diff line
@@ -424,36 +424,24 @@ int etnaviv_gem_wait_bo(struct etnaviv_gpu *gpu, struct drm_gem_object *obj,
}

#ifdef CONFIG_DEBUG_FS
static void etnaviv_gem_describe_fence(struct dma_fence *fence,
	const char *type, struct seq_file *m)
{
	seq_printf(m, "\t%9s: %s %s seq %llu\n", type,
		   fence->ops->get_driver_name(fence),
		   fence->ops->get_timeline_name(fence),
		   fence->seqno);
}

static void etnaviv_gem_describe(struct drm_gem_object *obj, struct seq_file *m)
{
	struct etnaviv_gem_object *etnaviv_obj = to_etnaviv_bo(obj);
	struct dma_resv *robj = obj->resv;
	struct dma_resv_iter cursor;
	struct dma_fence *fence;
	unsigned long off = drm_vma_node_start(&obj->vma_node);
	int r;

	seq_printf(m, "%08x: %c %2d (%2d) %08lx %p %zd\n",
			etnaviv_obj->flags, is_active(etnaviv_obj) ? 'A' : 'I',
			obj->name, kref_read(&obj->refcount),
			off, etnaviv_obj->vaddr, obj->size);

	dma_resv_iter_begin(&cursor, robj, true);
	dma_resv_for_each_fence_unlocked(&cursor, fence) {
		if (dma_resv_iter_is_exclusive(&cursor))
			etnaviv_gem_describe_fence(fence, "Exclusive", m);
		else
			etnaviv_gem_describe_fence(fence, "Shared", m);
	}
	dma_resv_iter_end(&cursor);
	r = dma_resv_lock(robj, NULL);
	if (r)
		return;

	dma_resv_describe(robj, m);
	dma_resv_unlock(robj);
}

void etnaviv_gem_describe_objects(struct etnaviv_drm_private *priv,