summaryrefslogtreecommitdiff
path: root/drivers/video/tegra/host/chip_support.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/tegra/host/chip_support.h')
-rw-r--r--drivers/video/tegra/host/chip_support.h33
1 files changed, 23 insertions, 10 deletions
diff --git a/drivers/video/tegra/host/chip_support.h b/drivers/video/tegra/host/chip_support.h
index 6727e7a69fb4..edc5f6a51574 100644
--- a/drivers/video/tegra/host/chip_support.h
+++ b/drivers/video/tegra/host/chip_support.h
@@ -21,21 +21,26 @@
#define _NVHOST_CHIP_SUPPORT_H_
#include <linux/types.h>
+#include "bus.h"
+
struct output;
+
+struct nvhost_master;
+struct nvhost_intr;
+struct nvhost_syncpt;
struct nvhost_waitchk;
struct nvhost_userctx_timeout;
-struct nvhost_master;
struct nvhost_channel;
struct nvmap_handle;
struct nvmap_client;
struct nvhost_hwctx;
struct nvhost_cdma;
-struct nvhost_intr;
+struct nvhost_job;
struct push_buffer;
struct nvhost_syncpt;
-struct nvhost_master;
struct dentry;
struct nvhost_job;
+struct nvhost_intr_syncpt;
struct nvhost_chip_support {
struct {
@@ -64,11 +69,6 @@ struct nvhost_chip_support {
u32 syncpt_incrs,
u32 syncval,
u32 nr_slots);
- void (*timeout_pb_incr)(struct nvhost_cdma *,
- u32 getptr,
- u32 syncpt_incrs,
- u32 nr_slots,
- bool exec_ctxsave);
} cdma;
struct {
@@ -133,9 +133,22 @@ struct nvhost_chip_support {
} intr;
struct {
- struct nvhost_device *(*get_nvhost_device)(struct nvhost_master *host,
- char *name);
+ struct nvhost_device *(*get_nvhost_device)(char *name);
+ struct nvhost_channel *(*alloc_nvhost_channel)(int chid);
+ void (*free_nvhost_channel)(struct nvhost_channel *ch);
} nvhost_dev;
};
+struct nvhost_chip_support *nvhost_get_chip_ops(void);
+
+#define host_device_op() nvhost_get_chip_ops()->nvhost_dev
+#define channel_cdma_op() nvhost_get_chip_ops()->cdma
+#define channel_op() nvhost_get_chip_ops()->channel
+#define syncpt_op() nvhost_get_chip_ops()->syncpt
+#define intr_op() nvhost_get_chip_ops()->intr
+#define cdma_op() nvhost_get_chip_ops()->cdma
+#define cdma_pb_op() nvhost_get_chip_ops()->push_buffer
+
+int nvhost_init_chip_support(struct nvhost_master *);
+
#endif /* _NVHOST_CHIP_SUPPORT_H_ */