summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2013-09-24 15:35:40 +0200
committerThierry Reding <treding@nvidia.com>2013-10-31 09:20:10 +0100
commit53fa7f7204c97dc0c86b99ff8365ad6a7b2ebd78 (patch)
treedbcbfc81863faa444f29de276f4a6a8e3303b42e /include
parente1e906448d2fc6f5a69e1967e00868f0cbfbb566 (diff)
downloadlinux-53fa7f7204c97dc0c86b99ff8365ad6a7b2ebd78.tar.bz2
drm/tegra: Introduce tegra_drm_client structure
This structure derives from host1x_client. DRM-specific fields are moved from host1x_client to this structure, so that host1x_client can remain agnostic of DRM. Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/host1x.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/linux/host1x.h b/include/linux/host1x.h
index fe09939800bc..d429a938ba13 100644
--- a/include/linux/host1x.h
+++ b/include/linux/host1x.h
@@ -25,4 +25,24 @@ enum host1x_class {
HOST1X_CLASS_GR2D_SB = 0x52,
};
+struct host1x_client;
+
+struct host1x_client_ops {
+ int (*init)(struct host1x_client *client);
+ int (*exit)(struct host1x_client *client);
+};
+
+struct host1x_client {
+ struct list_head list;
+ struct device *dev;
+
+ const struct host1x_client_ops *ops;
+
+ enum host1x_class class;
+ struct host1x_channel *channel;
+
+ struct host1x_syncpt **syncpts;
+ unsigned int num_syncpts;
+};
+
#endif