[Intel-gfx] [PATCH 02/16] drm: Extract drm_debugfs.h
Ville Syrjälä
ville.syrjala at linux.intel.com
Wed Mar 22 13:34:10 UTC 2017
On Wed, Mar 22, 2017 at 09:36:03AM +0100, Daniel Vetter wrote:
> Doc polish will follow in the next patch.
>
> Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> ---
> drivers/gpu/drm/drm_debugfs.c | 5 ++-
> include/drm/drmP.h | 44 +------------------------
> include/drm/drm_debugfs.h | 76 +++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 81 insertions(+), 44 deletions(-)
> create mode 100644 include/drm/drm_debugfs.h
>
> diff --git a/drivers/gpu/drm/drm_debugfs.c b/drivers/gpu/drm/drm_debugfs.c
> index 1d2d18d82d2e..4b02f4230562 100644
> --- a/drivers/gpu/drm/drm_debugfs.c
> +++ b/drivers/gpu/drm/drm_debugfs.c
> @@ -34,9 +34,12 @@
> #include <linux/seq_file.h>
> #include <linux/slab.h>
> #include <linux/export.h>
> -#include <drm/drmP.h>
> +
> +#include <drm/drm_debugfs.h>
> #include <drm/drm_edid.h>
> #include <drm/drm_atomic.h>
> +#include <drm/drmP.h>
> +
> #include "drm_internal.h"
> #include "drm_crtc_internal.h"
>
> diff --git a/include/drm/drmP.h b/include/drm/drmP.h
> index 0e383438f793..60f3255c43a8 100644
> --- a/include/drm/drmP.h
> +++ b/include/drm/drmP.h
> @@ -78,6 +78,7 @@
> #include <drm/drm_prime.h>
> #include <drm/drm_pci.h>
> #include <drm/drm_file.h>
> +#include <drm/drm_debugfs.h>
Why do we need this?
>
> struct module;
>
> @@ -371,27 +372,6 @@ struct drm_ioctl_desc {
> #define DRM_SCANOUTPOS_ACCURATE (1 << 2)
>
> /**
> - * Info file list entry. This structure represents a debugfs or proc file to
> - * be created by the drm core
> - */
> -struct drm_info_list {
> - const char *name; /** file name */
> - int (*show)(struct seq_file*, void*); /** show callback */
> - u32 driver_features; /**< Required driver features for this entry */
> - void *data;
> -};
> -
> -/**
> - * debugfs node structure. This structure represents a debugfs file.
> - */
> -struct drm_info_node {
> - struct list_head list;
> - struct drm_minor *minor;
> - const struct drm_info_list *info_ent;
> - struct dentry *dent;
> -};
> -
> -/**
> * DRM device structure. This structure represent a complete card that
> * may contain multiple heads.
> */
> @@ -592,28 +572,6 @@ int drm_invalid_op(struct drm_device *dev, void *data,
> * DMA quiscent + idle. DMA quiescent usually requires the hardware lock.
> */
>
> - /* Debugfs support */
> -#if defined(CONFIG_DEBUG_FS)
> -extern int drm_debugfs_create_files(const struct drm_info_list *files,
> - int count, struct dentry *root,
> - struct drm_minor *minor);
> -extern int drm_debugfs_remove_files(const struct drm_info_list *files,
> - int count, struct drm_minor *minor);
> -#else
> -static inline int drm_debugfs_create_files(const struct drm_info_list *files,
> - int count, struct dentry *root,
> - struct drm_minor *minor)
> -{
> - return 0;
> -}
> -
> -static inline int drm_debugfs_remove_files(const struct drm_info_list *files,
> - int count, struct drm_minor *minor)
> -{
> - return 0;
> -}
> -#endif
> -
> /* sysfs support (drm_sysfs.c) */
> extern void drm_sysfs_hotplug_event(struct drm_device *dev);
>
> diff --git a/include/drm/drm_debugfs.h b/include/drm/drm_debugfs.h
> new file mode 100644
> index 000000000000..17e47c073fa9
> --- /dev/null
> +++ b/include/drm/drm_debugfs.h
> @@ -0,0 +1,76 @@
> +/*
> + * Internal Header for the Direct Rendering Manager
> + *
> + * Copyright 1999 Precision Insight, Inc., Cedar Park, Texas.
> + * Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California.
> + * Copyright (c) 2009-2010, Code Aurora Forum.
> + * All rights reserved.
> + *
> + * Author: Rickard E. (Rik) Faith <faith at valinux.com>
> + * Author: Gareth Hughes <gareth at valinux.com>
> + *
> + * Permission is hereby granted, free of charge, to any person obtaining a
> + * copy of this software and associated documentation files (the "Software"),
> + * to deal in the Software without restriction, including without limitation
> + * the rights to use, copy, modify, merge, publish, distribute, sublicense,
> + * and/or sell copies of the Software, and to permit persons to whom the
> + * Software is furnished to do so, subject to the following conditions:
> + *
> + * The above copyright notice and this permission notice (including the next
> + * paragraph) shall be included in all copies or substantial portions of the
> + * Software.
> + *
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
> + * VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
> + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
> + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
> + * OTHER DEALINGS IN THE SOFTWARE.
> + */
> +
> +#ifndef _DRM_DEBUGFS_H_
> +#define _DRM_DEBUGFS_H_
> +
Do we want to make headers standalone? If we do then we would need a few
includes and forward declarations.
> +/**
> + * Info file list entry. This structure represents a debugfs or proc file to
> + * be created by the drm core
> + */
> +struct drm_info_list {
> + const char *name; /** file name */
> + int (*show)(struct seq_file*, void*); /** show callback */
> + u32 driver_features; /**< Required driver features for this entry */
> + void *data;
> +};
> +
> +/**
> + * debugfs node structure. This structure represents a debugfs file.
> + */
> +struct drm_info_node {
> + struct list_head list;
> + struct drm_minor *minor;
> + const struct drm_info_list *info_ent;
> + struct dentry *dent;
> +};
> +
> +#endif /* _DRM_DEBUGFS_H_ */
Why is this guy in the middle of the file?
> +#if defined(CONFIG_DEBUG_FS)
> +int drm_debugfs_create_files(const struct drm_info_list *files,
> + int count, struct dentry *root,
> + struct drm_minor *minor);
> +int drm_debugfs_remove_files(const struct drm_info_list *files,
> + int count, struct drm_minor *minor);
> +#else
> +static inline int drm_debugfs_create_files(const struct drm_info_list *files,
> + int count, struct dentry *root,
> + struct drm_minor *minor)
> +{
> + return 0;
> +}
> +
> +static inline int drm_debugfs_remove_files(const struct drm_info_list *files,
> + int count, struct drm_minor *minor)
> +{
> + return 0;
> +}
> +#endif
> --
> 2.11.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
More information about the Intel-gfx
mailing list