video: tegra: host: Move device data to nvhost_device
[linux-2.6.git] / drivers / video / tegra / host / host1x / host1x_channel.h
1 /*
2  * drivers/video/tegra/host/host1x/host1x_channel.h
3  *
4  * Tegra Graphics Host Channel
5  *
6  * Copyright (c) 2011, NVIDIA Corporation.
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful, but WITHOUT
14  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
15  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
16  * more details.
17  *
18  * You should have received a copy of the GNU General Public License along
19  * with this program; if not, write to the Free Software Foundation, Inc.,
20  * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21  */
22
23 #ifndef __NVHOST_HOST1X_CHANNEL_H
24 #define __NVHOST_HOST1X_CHANNEL_H
25
26 struct nvhost_job;
27 struct nvhost_channel;
28 struct nvhost_hwctx;
29 struct nvhost_device;
30
31 /*  Submit job to a host1x client */
32 int host1x_channel_submit(struct nvhost_job *job);
33
34 /*  Read 3d register via FIFO */
35 int host1x_channel_read_3d_reg(
36         struct nvhost_channel *channel,
37         struct nvhost_hwctx *hwctx,
38         u32 offset,
39         u32 *value);
40
41 /* Reads words from FIFO */
42 int host1x_drain_read_fifo(void __iomem *chan_regs,
43                 u32 *ptr, unsigned int count, unsigned int *pending);
44
45 int host1x_save_context(struct nvhost_device *dev, u32 syncpt_id);
46
47 #endif