Commit 17a298e9 authored by Mikko Perttunen's avatar Mikko Perttunen Committed by Thierry Reding
Browse files

gpu: host1x: Add job release callback



Add a callback field to the job structure, to be called just before
the job is to be freed. This allows the job's submitter to clean
up any of its own state, like decrement runtime PM refcounts.

Signed-off-by: default avatarMikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent c78f837a
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -79,6 +79,9 @@ static void job_free(struct kref *ref)
{
	struct host1x_job *job = container_of(ref, struct host1x_job, ref);

	if (job->release)
		job->release(job);

	if (job->waiter)
		host1x_intr_put_ref(job->syncpt->host, job->syncpt->id,
				    job->waiter, false);
+4 −0
Original line number Diff line number Diff line
@@ -268,6 +268,10 @@ struct host1x_job {

	/* Fast-forward syncpoint increments on job timeout */
	bool syncpt_recovery;

	/* Callback called when job is freed */
	void (*release)(struct host1x_job *job);
	void *user_data;
};

struct host1x_job *host1x_job_alloc(struct host1x_channel *ch,