lkml.org 
[lkml]   [2023]   [Jan]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH 3/9] drm/arm/hdlcd: use new debugfs device-centered functions
    From
    On 12/26/22 12:50, Maíra Canal wrote:
    > Replace the use of drm_debugfs_create_files() with the new
    > drm_debugfs_add_files() function, which center the debugfs files
    > management on the drm_device instead of drm_minor. Moreover, remove the
    > debugfs_init hook and add the debugfs files directly on hdlcd_drm_bind(),
    > before drm_dev_register().
    >
    > Signed-off-by: Maíra Canal <mcanal@igalia.com>

    Applied to drm/drm-misc (drm-misc-next).

    Best Regards,
    - Maíra Canal

    > ---
    > drivers/gpu/drm/arm/hdlcd_drv.c | 24 +++++++++---------------
    > 1 file changed, 9 insertions(+), 15 deletions(-)
    >
    > diff --git a/drivers/gpu/drm/arm/hdlcd_drv.c b/drivers/gpu/drm/arm/hdlcd_drv.c
    > index 7043d1c9ed8f..e3507dd6f82a 100644
    > --- a/drivers/gpu/drm/arm/hdlcd_drv.c
    > +++ b/drivers/gpu/drm/arm/hdlcd_drv.c
    > @@ -195,8 +195,8 @@ static int hdlcd_setup_mode_config(struct drm_device *drm)
    > #ifdef CONFIG_DEBUG_FS
    > static int hdlcd_show_underrun_count(struct seq_file *m, void *arg)
    > {
    > - struct drm_info_node *node = (struct drm_info_node *)m->private;
    > - struct drm_device *drm = node->minor->dev;
    > + struct drm_debugfs_entry *entry = m->private;
    > + struct drm_device *drm = entry->dev;
    > struct hdlcd_drm_private *hdlcd = drm_to_hdlcd_priv(drm);
    >
    > seq_printf(m, "underrun : %d\n", atomic_read(&hdlcd->buffer_underrun_count));
    > @@ -208,8 +208,8 @@ static int hdlcd_show_underrun_count(struct seq_file *m, void *arg)
    >
    > static int hdlcd_show_pxlclock(struct seq_file *m, void *arg)
    > {
    > - struct drm_info_node *node = (struct drm_info_node *)m->private;
    > - struct drm_device *drm = node->minor->dev;
    > + struct drm_debugfs_entry *entry = m->private;
    > + struct drm_device *drm = entry->dev;
    > struct hdlcd_drm_private *hdlcd = drm_to_hdlcd_priv(drm);
    > unsigned long clkrate = clk_get_rate(hdlcd->clk);
    > unsigned long mode_clock = hdlcd->crtc.mode.crtc_clock * 1000;
    > @@ -219,17 +219,10 @@ static int hdlcd_show_pxlclock(struct seq_file *m, void *arg)
    > return 0;
    > }
    >
    > -static struct drm_info_list hdlcd_debugfs_list[] = {
    > +static struct drm_debugfs_info hdlcd_debugfs_list[] = {
    > { "interrupt_count", hdlcd_show_underrun_count, 0 },
    > { "clocks", hdlcd_show_pxlclock, 0 },
    > };
    > -
    > -static void hdlcd_debugfs_init(struct drm_minor *minor)
    > -{
    > - drm_debugfs_create_files(hdlcd_debugfs_list,
    > - ARRAY_SIZE(hdlcd_debugfs_list),
    > - minor->debugfs_root, minor);
    > -}
    > #endif
    >
    > DEFINE_DRM_GEM_DMA_FOPS(fops);
    > @@ -237,9 +230,6 @@ DEFINE_DRM_GEM_DMA_FOPS(fops);
    > static const struct drm_driver hdlcd_driver = {
    > .driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_ATOMIC,
    > DRM_GEM_DMA_DRIVER_OPS,
    > -#ifdef CONFIG_DEBUG_FS
    > - .debugfs_init = hdlcd_debugfs_init,
    > -#endif
    > .fops = &fops,
    > .name = "hdlcd",
    > .desc = "ARM HDLCD Controller DRM",
    > @@ -303,6 +293,10 @@ static int hdlcd_drm_bind(struct device *dev)
    > drm_mode_config_reset(drm);
    > drm_kms_helper_poll_init(drm);
    >
    > +#ifdef CONFIG_DEBUG_FS
    > + drm_debugfs_add_files(drm, hdlcd_debugfs_list, ARRAY_SIZE(hdlcd_debugfs_list));
    > +#endif
    > +
    > ret = drm_dev_register(drm, 0);
    > if (ret)
    > goto err_register;

    \
     
     \ /
      Last update: 2023-03-26 23:31    [W:4.331 / U:0.100 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site