add drm_debugfs_node stuct, drm_debugfs_root, debugfs entries to drm_minor. Also add debugfs function declarations --- include/drm/drmP.h | 36 ++++++++++++++++++++++++++++++++++++ 1 files changed, 36 insertions(+), 0 deletions(-)
diff --git a/include/drm/drmP.h b/include/drm/drmP.h index efa7935..8933f9d 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h @@ -800,6 +800,27 @@ struct drm_driver { #define DRM_MINOR_CONTROL 2 #define DRM_MINOR_RENDER 3 + +/** + * debugfs node list. This structure represents a debugfs file to + * be created by the drm core + */ +struct drm_debugfs_list { + const char *name; /** file name */ + int (*show)(struct seq_file*, void*); /** show callback*/ + u32 driver_features; /**< Required driver features for this entry */ +}; + +/** + * debugfs node structure. This structure represents a debugfs file. + */ +struct drm_debugfs_node { + struct list_head list; + struct drm_minor *minor; + struct drm_debugfs_list *debugfs_ent; + struct dentry *dent; +}; + /** * proc node list. This structure represents a debugfs file to * be created by the drm core @@ -831,6 +852,8 @@ struct drm_minor { struct proc_dir_entry *proc_root; /**< proc directory entry */ struct drm_proc_node proc_nodes; + struct dentry *debugfs_root; + struct drm_debugfs_node debugfs_nodes; struct drm_master *master; /* currently active master for this node */ struct list_head master_list; @@ -1289,6 +1312,7 @@ extern unsigned int drm_debug; extern struct class *drm_class; extern struct proc_dir_entry *drm_proc_root; +extern struct dentry *drm_debugfs_root; extern struct idr drm_minors_idr; @@ -1299,6 +1323,18 @@ extern int drm_proc_init(struct drm_minor *minor, int minor_id, struct proc_dir_entry *root); extern int drm_proc_cleanup(struct drm_minor *minor, struct proc_dir_entry *root); + /* Debugfs support */ +#if defined(CONFIG_DRM_DEBUGFS) +extern int drm_debugfs_init(struct drm_minor *minor, int minor_id, + struct dentry *root); +extern int drm_debugfs_create_files(struct drm_debugfs_list *files, int count, + struct dentry *root, + struct drm_minor *minor); +extern int drm_debugfs_remove_files(struct drm_debugfs_list *files, int count, + struct drm_minor *minor); +extern int drm_debugfs_cleanup(struct drm_minor *minor); +#endif + /* Scatter Gather Support (drm_scatter.h) */ extern void drm_sg_cleanup(struct drm_sg_mem * entry); extern int drm_sg_alloc_ioctl(struct drm_device *dev, void *data, -- 1.6.0.6 ------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel