]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915/debugfs: add dedicated intel_display_caps debugfs for display
authorJani Nikula <jani.nikula@intel.com>
Fri, 13 Sep 2024 12:51:55 +0000 (15:51 +0300)
committerJani Nikula <jani.nikula@intel.com>
Thu, 19 Sep 2024 09:43:13 +0000 (12:43 +0300)
Add dedicated intel_display_caps for display, with device info and
params. Intentionally prefix the file intel_ instead of i915_. Going
forward, we should do the same for all debugfs files, making them
independent of i915 and xe.

Remove display param dumping from i915 specific i915_capabilities
debugfs.

Note that we don't add node_to_intel_display() functionality in
to_intel_display(). It's too specific for that.

Reviewed-by: Luca Coelho <luciano.coelho@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1b825b893dd2d423da167a7b6b21d05e8cd0182c.1726231866.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/display/intel_display_debugfs.c
drivers/gpu/drm/i915/i915_debugfs.c

index 86403a9318b0364957b54e7008bbca026994abd8..1b68be92e9e0182e4e80e4bea8e1a03527137357 100644 (file)
 #include "intel_vdsc.h"
 #include "intel_wm.h"
 
+static struct intel_display *node_to_intel_display(struct drm_info_node *node)
+{
+       return to_intel_display(node->minor->dev);
+}
+
 static inline struct drm_i915_private *node_to_i915(struct drm_info_node *node)
 {
        return to_i915(node->minor->dev);
 }
 
+static int intel_display_caps(struct seq_file *m, void *data)
+{
+       struct intel_display *display = node_to_intel_display(m->private);
+       struct drm_printer p = drm_seq_file_printer(m);
+
+       intel_display_device_info_print(DISPLAY_INFO(display),
+                                       DISPLAY_RUNTIME_INFO(display), &p);
+       intel_display_params_dump(&display->params, display->drm->driver->name, &p);
+
+       return 0;
+}
+
 static int i915_frontbuffer_tracking(struct seq_file *m, void *unused)
 {
        struct drm_i915_private *dev_priv = node_to_i915(m->private);
@@ -1027,6 +1044,7 @@ static const struct file_operations i915_fifo_underrun_reset_ops = {
 };
 
 static const struct drm_info_list intel_display_debugfs_list[] = {
+       {"intel_display_caps", intel_display_caps, 0},
        {"i915_frontbuffer_tracking", i915_frontbuffer_tracking, 0},
        {"i915_sr_status", i915_sr_status, 0},
        {"i915_gem_framebuffer", i915_gem_framebuffer_info, 0},
index b5fc7cc8020a544683d45e339a705279e3717130..1c2a97f593c77b44600bd7c69bd67896b59d3795 100644 (file)
@@ -33,8 +33,6 @@
 #include <linux/debugfs.h>
 #include <drm/drm_debugfs.h>
 
-#include "display/intel_display_params.h"
-
 #include "gem/i915_gem_context.h"
 #include "gt/intel_gt.h"
 #include "gt/intel_gt_buffer_pool.h"
@@ -66,7 +64,6 @@ static inline struct drm_i915_private *node_to_i915(struct drm_info_node *node)
 static int i915_capabilities(struct seq_file *m, void *data)
 {
        struct drm_i915_private *i915 = node_to_i915(m->private);
-       struct intel_display *display = &i915->display;
        struct drm_printer p = drm_seq_file_printer(m);
 
        seq_printf(m, "pch: %d\n", INTEL_PCH_TYPE(i915));
@@ -77,7 +74,6 @@ static int i915_capabilities(struct seq_file *m, void *data)
        intel_driver_caps_print(&i915->caps, &p);
 
        i915_params_dump(&i915->params, &p);
-       intel_display_params_dump(&display->params, display->drm->driver->name, &p);
 
        return 0;
 }