This patch adds a global header for gk20a.
Change-Id: I1bfc8f4715bf5ec4bda63453bd815ff2101cea87
Signed-off-by: Arto Merilainen <amerilainen@nvidia.com>
Reviewed-on: http://git-master/r/376648
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
struct channel_gk20a_job *job, *n;
int i;
+ wake_up(&c->submit_wq);
+
mutex_lock(&c->jobs_lock);
list_for_each_entry_safe(job, n, &c->jobs, list) {
bool completed = WARN_ON(!c->sync) ||
for (i = 0; i < nr_completed; i++)
gk20a_channel_idle(c->g->dev);
}
+EXPORT_SYMBOL(gk20a_channel_update);
static int gk20a_submit_channel_gpfifo(struct channel_gk20a *c,
struct nvhost_gpfifo *gpfifo,
return !!ch->vm;
}
int channel_gk20a_commit_va(struct channel_gk20a *c);
-
-void gk20a_channel_update(struct channel_gk20a *c, int nr_completed);
int gk20a_init_channel_support(struct gk20a *, u32 chid);
void gk20a_free_channel(struct channel_gk20a *ch, bool finish);
bool gk20a_channel_update_and_check_timeout(struct channel_gk20a *ch,
#include <linux/slab.h>
#include <linux/irq.h>
#include <trace/events/nvhost.h>
+#include <linux/gk20a.h>
+
#include "nvhost_channel.h"
#include "nvhost_hwctx.h"
#include "chip_support.h"
-#include "gk20a/channel_gk20a.h"
/*** Wait list management ***/
static void action_gpfifo_submit_complete(struct nvhost_waitlist *waiter)
{
struct channel_gk20a *ch20a = waiter->data;
-
- wake_up(&ch20a->submit_wq);
-
-#if defined(CONFIG_TEGRA_GK20A)
gk20a_channel_update(ch20a, waiter->count);
-#endif
}
static void action_wakeup(struct nvhost_waitlist *waiter)
--- /dev/null
+/*
+ * gk20a GPU driver
+ *
+ * Copyright (c) 2014, NVIDIA Corporation. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef __GK20A_H
+#define __GK20A_H
+
+struct channel_gk20a;
+
+#ifdef CONFIG_GK20A
+void gk20a_channel_update(struct channel_gk20a *c, int nr_completed);
+#else
+static inline void gk20a_channel_update(struct channel_gk20a *c,
+ int nr_completed)
+{
+}
+#endif
+#endif