summaryrefslogtreecommitdiffstats
path: root/include/drm/drm_panel.h
diff options
context:
space:
mode:
authorDouglas Anderson <dianders@chromium.org>2022-02-04 16:13:41 -0800
committerDouglas Anderson <dianders@chromium.org>2022-02-15 15:25:18 -0800
commit2509969a9862b522d2208e8663057fb227556687 (patch)
treeff52cebcc0aece228591915b6f6840f5cf7ecff9 /include/drm/drm_panel.h
parente283820cbf8092c87a8d6461260d5bc525da72c9 (diff)
downloadlinux-stable-2509969a9862b522d2208e8663057fb227556687.tar.gz
linux-stable-2509969a9862b522d2208e8663057fb227556687.tar.bz2
linux-stable-2509969a9862b522d2208e8663057fb227556687.zip
drm: Plumb debugfs_init through to panels
We'd like panels to be able to add things to debugfs underneath the connector's directory. Let's plumb it through. A panel will be able to put things in a "panel" directory under the connector's directory. Note that debugfs is not ABI and so it's always possible that the location that the panel gets for its debugfs could change in the future. NOTE: this currently only works if you're using a modern architecture. Specifically the plumbing relies on _both_ drm_bridge_connector and drm_panel_bridge. If you're not using one or both of these things then things won't be plumbed through. As a side effect of this change, drm_bridges can also get callbacks to put stuff underneath the connector's debugfs directory. At the moment all bridges in the chain have their debugfs_init() called with the connector's root directory. Signed-off-by: Douglas Anderson <dianders@chromium.org> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220204161245.v2.2.Ib0bd5346135cbb0b63006b69b61d4c8af6484740@changeid
Diffstat (limited to 'include/drm/drm_panel.h')
-rw-r--r--include/drm/drm_panel.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h
index 4602f833eb51..1ba2d424a53f 100644
--- a/include/drm/drm_panel.h
+++ b/include/drm/drm_panel.h
@@ -29,6 +29,7 @@
#include <linux/list.h>
struct backlight_device;
+struct dentry;
struct device_node;
struct drm_connector;
struct drm_device;
@@ -125,6 +126,13 @@ struct drm_panel_funcs {
*/
int (*get_timings)(struct drm_panel *panel, unsigned int num_timings,
struct display_timing *timings);
+
+ /**
+ * @debugfs_init:
+ *
+ * Allows panels to create panels-specific debugfs files.
+ */
+ void (*debugfs_init)(struct drm_panel *panel, struct dentry *root);
};
/**