[PATCH v3 0/6] Introduce debugfs device-centered functions

From: Maíra Canal
Date: Wed Dec 07 2022 - 08:25:04 EST


This series introduces the initial structure to make DRM debugfs more
device-centered and it is the first step to drop the
drm_driver->debugfs_init hooks in the future [1].

Currently, DRM debugfs files are created using drm_debugfs_create_files()
on request. The first patch of this series makes it possible for DRM devices
for creating debugfs files during drm_dev_register(). For it, it introduces
two new functions that can be used by the drivers: drm_debugfs_add_files()
and drm_debugfs_add_file(). The requests are added to a list and are created
all at once during drm_dev_register(). Moreover, the first patch was based on
this RFC series [2].

The main difference between the RFC series and the current series is the
creation of a new fops structure to accommodate the new structs and, also,
the creation of a new drm_debugfs_open. Moreover, the new series uses
device-managed allocation, returns memory allocation errors, and converts
more drivers to the new structure.

Apart from the first patch, the following patches are converting some drivers
to the new DRM debugfs structure and the last patch update the TODO task
related to it.

[1] https://cgit.freedesktop.org/drm/drm/tree/Documentation/gpu/todo.rst#n506
[2] https://lore.kernel.org/dri-devel/20200513114130.28641-2-wambui.karugax@xxxxxxxxx/

Best Regards,
- Maíra Canal

---

v1 -> v2: https://lore.kernel.org/dri-devel/20221122190314.185015-1-mcanal@xxxxxxxxxx/T/#t

- Fix compilation errors in the second patch (kernel test robot).
- Drop debugfs_init hook from vkms (Maíra Canal).
- Remove return values and error handling to debugfs related
functions (Jani Nikula).
- Remove entry from list after the file is created, so that drm_debugfs_init
can be called more than once (Maíra Canal).

v2 -> v3: https://lore.kernel.org/dri-devel/20221123220725.1272155-1-mcanal@xxxxxxxxxx/

- Rebase on top of drm-misc-next

---

Maíra Canal (6):
drm/debugfs: create device-centered debugfs functions
drm: use new debugfs device-centered functions on DRM core files
drm/vc4: use new debugfs device-centered functions
drm/v3d: use new debugfs device-centered functions
drm/vkms: use new debugfs device-centered functions
drm/todo: update the debugfs clean up task

Documentation/gpu/todo.rst | 9 +--
drivers/gpu/drm/drm_atomic.c | 11 ++--
drivers/gpu/drm/drm_client.c | 11 ++--
drivers/gpu/drm/drm_debugfs.c | 88 ++++++++++++++++++++++++---
drivers/gpu/drm/drm_drv.c | 3 +
drivers/gpu/drm/drm_framebuffer.c | 11 ++--
drivers/gpu/drm/drm_gem_vram_helper.c | 11 ++--
drivers/gpu/drm/v3d/v3d_debugfs.c | 22 +++----
drivers/gpu/drm/vc4/vc4_bo.c | 10 +--
drivers/gpu/drm/vc4/vc4_crtc.c | 7 +--
drivers/gpu/drm/vc4/vc4_debugfs.c | 36 +++--------
drivers/gpu/drm/vc4/vc4_dpi.c | 5 +-
drivers/gpu/drm/vc4/vc4_drv.c | 1 -
drivers/gpu/drm/vc4/vc4_drv.h | 32 +++-------
drivers/gpu/drm/vc4/vc4_dsi.c | 6 +-
drivers/gpu/drm/vc4/vc4_hdmi.c | 12 ++--
drivers/gpu/drm/vc4/vc4_hvs.c | 24 +++-----
drivers/gpu/drm/vc4/vc4_v3d.c | 14 ++---
drivers/gpu/drm/vc4/vc4_vec.c | 6 +-
drivers/gpu/drm/vkms/vkms_drv.c | 17 ++----
include/drm/drm_debugfs.h | 41 +++++++++++++
include/drm/drm_device.h | 15 +++++
22 files changed, 212 insertions(+), 180 deletions(-)

--
2.38.1