On Fri, Oct 14, 2016 at 7:55 PM, Rob Clark <robdclark@xxxxxxxxx> wrote: > I'll want to print things in a similar way in a later patch. This will > make it easier. > Reviewed-by: Sean Paul <seanpaul@xxxxxxxxxxxx> > TODO drm_rect_debug_print() doesn't have many call sites, and is kind of > unnecessary now. Should we just drop it? > yeah, seems like you could get the same info from the state dumps. > Signed-off-by: Rob Clark <robdclark@xxxxxxxxx> > --- > drivers/gpu/drm/drm_modes.c | 8 +------- > drivers/gpu/drm/drm_rect.c | 11 ++--------- > include/drm/drmP.h | 21 +++++++++++++++++++++ > 3 files changed, 24 insertions(+), 16 deletions(-) > > diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c > index fc5040a..77b0301 100644 > --- a/drivers/gpu/drm/drm_modes.c > +++ b/drivers/gpu/drm/drm_modes.c > @@ -49,13 +49,7 @@ > */ > void drm_mode_debug_printmodeline(const struct drm_display_mode *mode) > { > - DRM_DEBUG_KMS("Modeline %d:\"%s\" %d %d %d %d %d %d %d %d %d %d " > - "0x%x 0x%x\n", > - mode->base.id, mode->name, mode->vrefresh, mode->clock, > - mode->hdisplay, mode->hsync_start, > - mode->hsync_end, mode->htotal, > - mode->vdisplay, mode->vsync_start, > - mode->vsync_end, mode->vtotal, mode->type, mode->flags); > + DRM_DEBUG_KMS("Modeline " DRM_MODE_FMT "\n", DRM_MODE_ARG(mode)); > } > EXPORT_SYMBOL(drm_mode_debug_printmodeline); > > diff --git a/drivers/gpu/drm/drm_rect.c b/drivers/gpu/drm/drm_rect.c > index a8e2c86..d451112 100644 > --- a/drivers/gpu/drm/drm_rect.c > +++ b/drivers/gpu/drm/drm_rect.c > @@ -281,17 +281,10 @@ EXPORT_SYMBOL(drm_rect_calc_vscale_relaxed); > */ > void drm_rect_debug_print(const char *prefix, const struct drm_rect *r, bool fixed_point) > { > - int w = drm_rect_width(r); > - int h = drm_rect_height(r); > - > if (fixed_point) > - DRM_DEBUG_KMS("%s%d.%06ux%d.%06u%+d.%06u%+d.%06u\n", prefix, > - w >> 16, ((w & 0xffff) * 15625) >> 10, > - h >> 16, ((h & 0xffff) * 15625) >> 10, > - r->x1 >> 16, ((r->x1 & 0xffff) * 15625) >> 10, > - r->y1 >> 16, ((r->y1 & 0xffff) * 15625) >> 10); > + DRM_DEBUG_KMS("%s" DRM_RECT_FP_FMT "\n", prefix, DRM_RECT_FP_ARG(r)); > else > - DRM_DEBUG_KMS("%s%dx%d%+d%+d\n", prefix, w, h, r->x1, r->y1); > + DRM_DEBUG_KMS("%s" DRM_RECT_FMT "\n", prefix, DRM_RECT_ARG(r)); > } > EXPORT_SYMBOL(drm_rect_debug_print); > > diff --git a/include/drm/drmP.h b/include/drm/drmP.h > index 28d341a..7ffaa35 100644 > --- a/include/drm/drmP.h > +++ b/include/drm/drmP.h > @@ -231,6 +231,27 @@ void drm_err(const char *format, ...); > drm_ut_debug_printk(__func__, fmt, ##args); \ > } while (0) > > +/* Format strings and argument splitters to simplify printing > + * various "complex" objects > + */ > +#define DRM_MODE_FMT "%d:\"%s\" %d %d %d %d %d %d %d %d %d %d 0x%x 0x%x" > +#define DRM_MODE_ARG(m) \ > + (m)->base.id, (m)->name, (m)->vrefresh, (m)->clock, \ > + (m)->hdisplay, (m)->hsync_start, (m)->hsync_end, (m)->htotal, \ > + (m)->vdisplay, (m)->vsync_start, (m)->vsync_end, (m)->vtotal, \ > + (m)->type, (m)->flags > + > +#define DRM_RECT_FMT "%dx%d%+d%+d" > +#define DRM_RECT_ARG(r) drm_rect_width(r), drm_rect_height(r), (r)->x1, (r)->y1 > + > +/* for rect's in fixed-point format: */ > +#define DRM_RECT_FP_FMT "%d.%06ux%d.%06u%+d.%06u%+d.%06u" > +#define DRM_RECT_FP_ARG(r) \ > + drm_rect_width(r) >> 16, ((drm_rect_width(r) & 0xffff) * 15625) >> 10, \ > + drm_rect_height(r) >> 16, ((drm_rect_height(r) & 0xffff) * 15625) >> 10, \ > + (r)->x1 >> 16, (((r)->x1 & 0xffff) * 15625) >> 10, \ > + (r)->y1 >> 16, (((r)->y1 & 0xffff) * 15625) >> 10 > + > /*@}*/ > > /***********************************************************************/ > -- > 2.7.4 > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel