On Mon, Feb 15, 2021 at 01:40:30PM +0200, Sakari Ailus wrote:
> Switch DRM drivers from drm_get_format_name() to %p4cc. This gets rid of a
> large number of temporary variables at the same time.

What a nice clean up!
Reviewed-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
after addressing nit-picks below.

Side note (no need to implement esp. right now): it seems often it's coupled
with modifier, would be nice to have them together that %p4ccM or so can do it
in one go.

> Signed-off-by: Sakari Ailus <sakari.ai...@linux.intel.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/dce_v10_0.c        |  5 ++--
>  drivers/gpu/drm/amd/amdgpu/dce_v11_0.c        |  5 ++--
>  drivers/gpu/drm/amd/amdgpu/dce_v6_0.c         |  5 ++--
>  drivers/gpu/drm/amd/amdgpu/dce_v8_0.c         |  5 ++--
>  .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |  5 ++--
>  .../arm/display/komeda/komeda_format_caps.h   | 11 --------
>  .../arm/display/komeda/komeda_framebuffer.c   |  4 +--
>  .../gpu/drm/arm/display/komeda/komeda_plane.c |  6 ++---
>  drivers/gpu/drm/arm/malidp_mw.c               |  7 ++----
>  drivers/gpu/drm/drm_atomic.c                  |  8 ++----
>  drivers/gpu/drm/drm_crtc.c                    |  7 ++----
>  drivers/gpu/drm/drm_fourcc.c                  | 25 -------------------
>  drivers/gpu/drm/drm_framebuffer.c             | 11 +++-----
>  drivers/gpu/drm/drm_mipi_dbi.c                |  5 ++--
>  drivers/gpu/drm/drm_plane.c                   |  8 ++----
>  .../gpu/drm/hisilicon/kirin/kirin_drm_ade.c   |  5 ++--
>  drivers/gpu/drm/i915/display/intel_display.c  | 14 +++--------
>  .../drm/i915/display/intel_display_debugfs.c  | 19 ++++++--------
>  drivers/gpu/drm/i915/display/intel_sprite.c   |  6 ++---
>  drivers/gpu/drm/mcde/mcde_display.c           |  6 ++---
>  drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c      |  6 ++---
>  drivers/gpu/drm/nouveau/nouveau_display.c     |  9 +++----
>  drivers/gpu/drm/radeon/atombios_crtc.c        | 10 +++-----
>  drivers/gpu/drm/sun4i/sun4i_backend.c         |  6 ++---
>  drivers/gpu/drm/vkms/vkms_writeback.c         |  7 ++----
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c           | 15 +++++------
>  include/drm/drm_fourcc.h                      |  1 -
>  27 files changed, 64 insertions(+), 157 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c 
> b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
> index 7944781e1086..ea825b4f8ee8 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
> @@ -1862,7 +1862,6 @@ static int dce_v10_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>       u32 tmp, viewport_w, viewport_h;
>       int r;
>       bool bypass_lut = false;
> -     struct drm_format_name_buf format_name;
>  
>       /* no fb bound */
>       if (!atomic && !crtc->primary->fb) {
> @@ -1981,8 +1980,8 @@ static int dce_v10_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>  #endif
>               break;
>       default:
> -             DRM_ERROR("Unsupported screen format %s\n",
> -                       drm_get_format_name(target_fb->format->format, 
> &format_name));
> +             DRM_ERROR("Unsupported screen format %p4cc\n",
> +                       &target_fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c 
> b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
> index 1b6ff0470011..a360a6dec198 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
> @@ -1904,7 +1904,6 @@ static int dce_v11_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>       u32 tmp, viewport_w, viewport_h;
>       int r;
>       bool bypass_lut = false;
> -     struct drm_format_name_buf format_name;
>  
>       /* no fb bound */
>       if (!atomic && !crtc->primary->fb) {
> @@ -2023,8 +2022,8 @@ static int dce_v11_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>  #endif
>               break;
>       default:
> -             DRM_ERROR("Unsupported screen format %s\n",
> -                       drm_get_format_name(target_fb->format->format, 
> &format_name));
> +             DRM_ERROR("Unsupported screen format %p4cc\n",
> +                       &target_fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c 
> b/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
> index 83a88385b762..ef124ac853b6 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
> @@ -1820,7 +1820,6 @@ static int dce_v6_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>       u32 viewport_w, viewport_h;
>       int r;
>       bool bypass_lut = false;
> -     struct drm_format_name_buf format_name;
>  
>       /* no fb bound */
>       if (!atomic && !crtc->primary->fb) {
> @@ -1929,8 +1928,8 @@ static int dce_v6_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>  #endif
>               break;
>       default:
> -             DRM_ERROR("Unsupported screen format %s\n",
> -                       drm_get_format_name(target_fb->format->format, 
> &format_name));
> +             DRM_ERROR("Unsupported screen format %p4cc\n",
> +                       &target_fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c 
> b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
> index 224b30214427..c98650183828 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
> @@ -1791,7 +1791,6 @@ static int dce_v8_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>       u32 viewport_w, viewport_h;
>       int r;
>       bool bypass_lut = false;
> -     struct drm_format_name_buf format_name;
>  
>       /* no fb bound */
>       if (!atomic && !crtc->primary->fb) {
> @@ -1902,8 +1901,8 @@ static int dce_v8_0_crtc_do_set_base(struct drm_crtc 
> *crtc,
>  #endif
>               break;
>       default:
> -             DRM_ERROR("Unsupported screen format %s\n",
> -                       drm_get_format_name(target_fb->format->format, 
> &format_name));
> +             DRM_ERROR("Unsupported screen format %p4cc\n",
> +                       &target_fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index c6da89df055d..fcef3bf14952 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -4465,7 +4465,6 @@ fill_dc_plane_info_and_addr(struct amdgpu_device *adev,
>       const struct drm_framebuffer *fb = plane_state->fb;
>       const struct amdgpu_framebuffer *afb =
>               to_amdgpu_framebuffer(plane_state->fb);
> -     struct drm_format_name_buf format_name;
>       int ret;
>  
>       memset(plane_info, 0, sizeof(*plane_info));
> @@ -4513,8 +4512,8 @@ fill_dc_plane_info_and_addr(struct amdgpu_device *adev,
>               break;
>       default:
>               DRM_ERROR(
> -                     "Unsupported screen format %s\n",
> -                     drm_get_format_name(fb->format->format, &format_name));
> +                     "Unsupported screen format %p4cc\n",
> +                     &fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h 
> b/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h
> index 32273cf18f7c..cf7a183f773d 100644
> --- a/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h
> +++ b/drivers/gpu/drm/arm/display/komeda/komeda_format_caps.h
> @@ -82,17 +82,6 @@ struct komeda_format_caps_table {
>  
>  extern u64 komeda_supported_modifiers[];
>  
> -static inline const char *komeda_get_format_name(u32 fourcc, u64 modifier)
> -{
> -     struct drm_format_name_buf buf;
> -     static char name[64];
> -
> -     snprintf(name, sizeof(name), "%s with modifier: 0x%llx.",
> -              drm_get_format_name(fourcc, &buf), modifier);
> -
> -     return name;
> -}
> -
>  const struct komeda_format_caps *
>  komeda_get_format_caps(struct komeda_format_caps_table *table,
>                      u32 fourcc, u64 modifier);
> diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c 
> b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c
> index 170f9dc8ec19..3c372d2deb0a 100644
> --- a/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c
> +++ b/drivers/gpu/drm/arm/display/komeda/komeda_framebuffer.c
> @@ -276,8 +276,8 @@ bool komeda_fb_is_layer_supported(struct komeda_fb *kfb, 
> u32 layer_type,
>       supported = komeda_format_mod_supported(&mdev->fmt_tbl, layer_type,
>                                               fourcc, modifier, rot);
>       if (!supported)
> -             DRM_DEBUG_ATOMIC("Layer TYPE: %d doesn't support fb FMT: %s.\n",
> -                     layer_type, komeda_get_format_name(fourcc, modifier));
> +             DRM_DEBUG_ATOMIC("Layer TYPE: %d doesn't support fb FMT: %p4cc 
> with modifier: 0x%llx.\n",
> +                              layer_type, &fourcc, modifier);
>  
>       return supported;
>  }
> diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_plane.c 
> b/drivers/gpu/drm/arm/display/komeda/komeda_plane.c
> index 98e915e325dd..2d5066ea270c 100644
> --- a/drivers/gpu/drm/arm/display/komeda/komeda_plane.c
> +++ b/drivers/gpu/drm/arm/display/komeda/komeda_plane.c
> @@ -49,10 +49,8 @@ komeda_plane_init_data_flow(struct drm_plane_state *st,
>  
>       dflow->rot = drm_rotation_simplify(st->rotation, caps->supported_rots);
>       if (!has_bits(dflow->rot, caps->supported_rots)) {
> -             DRM_DEBUG_ATOMIC("rotation(0x%x) isn't supported by %s.\n",
> -                              dflow->rot,
> -                              komeda_get_format_name(caps->fourcc,
> -                                                     fb->modifier));
> +             DRM_DEBUG_ATOMIC("rotation(0x%x) isn't supported by %p4cc with 
> modifier: 0x%llx.\n",
> +                              dflow->rot, &caps->fourcc, fb->modifier);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/arm/malidp_mw.c b/drivers/gpu/drm/arm/malidp_mw.c
> index 7d0e7b031e44..f5847a79dd7e 100644
> --- a/drivers/gpu/drm/arm/malidp_mw.c
> +++ b/drivers/gpu/drm/arm/malidp_mw.c
> @@ -151,11 +151,8 @@ malidp_mw_encoder_atomic_check(struct drm_encoder 
> *encoder,
>               malidp_hw_get_format_id(&malidp->dev->hw->map, SE_MEMWRITE,
>                                       fb->format->format, !!fb->modifier);
>       if (mw_state->format == MALIDP_INVALID_FORMAT_ID) {
> -             struct drm_format_name_buf format_name;
> -
> -             DRM_DEBUG_KMS("Invalid pixel format %s\n",
> -                           drm_get_format_name(fb->format->format,
> -                                               &format_name));
> +             DRM_DEBUG_KMS("Invalid pixel format %p4cc\n",
> +                           &fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index dda60051854b..ce2ee6b8bf34 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -578,13 +578,9 @@ static int drm_atomic_plane_check(const struct 
> drm_plane_state *old_plane_state,
>       ret = drm_plane_check_pixel_format(plane, fb->format->format,
>                                          fb->modifier);
>       if (ret) {
> -             struct drm_format_name_buf format_name;
> -
> -             DRM_DEBUG_ATOMIC("[PLANE:%d:%s] invalid pixel format %s, 
> modifier 0x%llx\n",
> +             DRM_DEBUG_ATOMIC("[PLANE:%d:%s] invalid pixel format %p4cc, 
> modifier 0x%llx\n",
>                                plane->base.id, plane->name,
> -                              drm_get_format_name(fb->format->format,
> -                                                  &format_name),
> -                              fb->modifier);
> +                              &fb->format->format, fb->modifier);
>               return ret;
>       }
>  
> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> index 74090fc3aa55..9ba2d3640b47 100644
> --- a/drivers/gpu/drm/drm_crtc.c
> +++ b/drivers/gpu/drm/drm_crtc.c
> @@ -663,11 +663,8 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,
>                                                          fb->format->format,
>                                                          fb->modifier);
>                       if (ret) {
> -                             struct drm_format_name_buf format_name;
> -
> -                             DRM_DEBUG_KMS("Invalid pixel format %s, 
> modifier 0x%llx\n",
> -                                           
> drm_get_format_name(fb->format->format,
> -                                                               &format_name),
> +                             DRM_DEBUG_KMS("Invalid pixel format %p4cc, 
> modifier 0x%llx\n",
> +                                           &fb->format->format,
>                                             fb->modifier);
>                               goto out;
>                       }
> diff --git a/drivers/gpu/drm/drm_fourcc.c b/drivers/gpu/drm/drm_fourcc.c
> index 03262472059c..5cf45aa6eedc 100644
> --- a/drivers/gpu/drm/drm_fourcc.c
> +++ b/drivers/gpu/drm/drm_fourcc.c
> @@ -30,11 +30,6 @@
>  #include <drm/drm_device.h>
>  #include <drm/drm_fourcc.h>
>  
> -static char printable_char(int c)
> -{
> -     return isascii(c) && isprint(c) ? c : '?';
> -}

If it goes as an ABI than your dot is incompatible with this and '?' should be
used instead in the patch 1. And I bend towards suggested '?' rather than '.'.

Also it means that you probably would need different specifiers for full and
short formats.

>  /**
>   * drm_mode_legacy_fb_format - compute drm fourcc code from legacy 
> description
>   * @bpp: bits per pixels
> @@ -130,26 +125,6 @@ uint32_t drm_driver_legacy_fb_format(struct drm_device 
> *dev,
>  }
>  EXPORT_SYMBOL(drm_driver_legacy_fb_format);
>  
> -/**
> - * drm_get_format_name - fill a string with a drm fourcc format's name
> - * @format: format to compute name of
> - * @buf: caller-supplied buffer
> - */
> -const char *drm_get_format_name(uint32_t format, struct drm_format_name_buf 
> *buf)
> -{
> -     snprintf(buf->str, sizeof(buf->str),
> -              "%c%c%c%c %s-endian (0x%08x)",
> -              printable_char(format & 0xff),
> -              printable_char((format >> 8) & 0xff),
> -              printable_char((format >> 16) & 0xff),
> -              printable_char((format >> 24) & 0x7f),
> -              format & DRM_FORMAT_BIG_ENDIAN ? "big" : "little",
> -              format);
> -
> -     return buf->str;
> -}
> -EXPORT_SYMBOL(drm_get_format_name);
> -
>  /*
>   * Internal function to query information for a given format. See
>   * drm_format_info() for the public API.
> diff --git a/drivers/gpu/drm/drm_framebuffer.c 
> b/drivers/gpu/drm/drm_framebuffer.c
> index aca62ed51e82..4d01464b6f95 100644
> --- a/drivers/gpu/drm/drm_framebuffer.c
> +++ b/drivers/gpu/drm/drm_framebuffer.c
> @@ -177,11 +177,8 @@ static int framebuffer_check(struct drm_device *dev,
>  
>       /* check if the format is supported at all */
>       if (!__drm_format_info(r->pixel_format)) {
> -             struct drm_format_name_buf format_name;
> -
> -             DRM_DEBUG_KMS("bad framebuffer format %s\n",
> -                           drm_get_format_name(r->pixel_format,
> -                                               &format_name));
> +             DRM_DEBUG_KMS("bad framebuffer format %p4cc\n",
> +                           &r->pixel_format);
>               return -EINVAL;
>       }
>  
> @@ -1160,14 +1157,12 @@ EXPORT_SYMBOL(drm_framebuffer_plane_height);
>  void drm_framebuffer_print_info(struct drm_printer *p, unsigned int indent,
>                               const struct drm_framebuffer *fb)
>  {
> -     struct drm_format_name_buf format_name;
>       unsigned int i;
>  
>       drm_printf_indent(p, indent, "allocated by = %s\n", fb->comm);
>       drm_printf_indent(p, indent, "refcount=%u\n",
>                         drm_framebuffer_read_refcount(fb));
> -     drm_printf_indent(p, indent, "format=%s\n",
> -                       drm_get_format_name(fb->format->format, 
> &format_name));
> +     drm_printf_indent(p, indent, "format=%p4cc\n", &fb->format->format);
>       drm_printf_indent(p, indent, "modifier=0x%llx\n", fb->modifier);
>       drm_printf_indent(p, indent, "size=%ux%u\n", fb->width, fb->height);
>       drm_printf_indent(p, indent, "layers:\n");
> diff --git a/drivers/gpu/drm/drm_mipi_dbi.c b/drivers/gpu/drm/drm_mipi_dbi.c
> index 230c4fd7131c..43a9b739bba7 100644
> --- a/drivers/gpu/drm/drm_mipi_dbi.c
> +++ b/drivers/gpu/drm/drm_mipi_dbi.c
> @@ -203,7 +203,6 @@ int mipi_dbi_buf_copy(void *dst, struct drm_framebuffer 
> *fb,
>       struct drm_gem_object *gem = drm_gem_fb_get_obj(fb, 0);
>       struct drm_gem_cma_object *cma_obj = to_drm_gem_cma_obj(gem);
>       struct dma_buf_attachment *import_attach = gem->import_attach;
> -     struct drm_format_name_buf format_name;
>       void *src = cma_obj->vaddr;
>       int ret = 0;
>  
> @@ -225,8 +224,8 @@ int mipi_dbi_buf_copy(void *dst, struct drm_framebuffer 
> *fb,
>               drm_fb_xrgb8888_to_rgb565(dst, src, fb, clip, swap);
>               break;
>       default:
> -             drm_err_once(fb->dev, "Format is not supported: %s\n",
> -                          drm_get_format_name(fb->format->format, 
> &format_name));
> +             drm_err_once(fb->dev, "Format is not supported: %p4cc\n",
> +                          &fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/drm_plane.c b/drivers/gpu/drm/drm_plane.c
> index a0cb746bcb0a..4d8429917d7d 100644
> --- a/drivers/gpu/drm/drm_plane.c
> +++ b/drivers/gpu/drm/drm_plane.c
> @@ -623,12 +623,8 @@ static int __setplane_check(struct drm_plane *plane,
>       ret = drm_plane_check_pixel_format(plane, fb->format->format,
>                                          fb->modifier);
>       if (ret) {
> -             struct drm_format_name_buf format_name;
> -
> -             DRM_DEBUG_KMS("Invalid pixel format %s, modifier 0x%llx\n",
> -                           drm_get_format_name(fb->format->format,
> -                                               &format_name),
> -                           fb->modifier);
> +             DRM_DEBUG_KMS("Invalid pixel format %p4cc, modifier 0x%llx\n",
> +                           &fb->format->format, fb->modifier);
>               return ret;
>       }
>  
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c 
> b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> index aa6c53f88f7c..70aa6c8844c0 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> @@ -549,16 +549,15 @@ static void ade_rdma_set(void __iomem *base, struct 
> drm_framebuffer *fb,
>                        u32 ch, u32 y, u32 in_h, u32 fmt)
>  {
>       struct drm_gem_cma_object *obj = drm_fb_cma_get_gem_obj(fb, 0);
> -     struct drm_format_name_buf format_name;
>       u32 reg_ctrl, reg_addr, reg_size, reg_stride, reg_space, reg_en;
>       u32 stride = fb->pitches[0];
>       u32 addr = (u32)obj->paddr + y * stride;
>  
>       DRM_DEBUG_DRIVER("rdma%d: (y=%d, height=%d), stride=%d, paddr=0x%x\n",
>                        ch + 1, y, in_h, stride, (u32)obj->paddr);
> -     DRM_DEBUG_DRIVER("addr=0x%x, fb:%dx%d, pixel_format=%d(%s)\n",
> +     DRM_DEBUG_DRIVER("addr=0x%x, fb:%dx%d, pixel_format=%d(%p4cc)\n",
>                        addr, fb->width, fb->height, fmt,
> -                      drm_get_format_name(fb->format->format, &format_name));
> +                      &fb->format->format);
>  
>       /* get reg offset */
>       reg_ctrl = RD_CH_CTRL(ch);
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
> b/drivers/gpu/drm/i915/display/intel_display.c
> index 53a00cf3fa32..7981627390a0 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -13319,7 +13319,6 @@ static void intel_dump_plane_state(const struct 
> intel_plane_state *plane_state)
>       struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>       struct drm_i915_private *i915 = to_i915(plane->base.dev);
>       const struct drm_framebuffer *fb = plane_state->hw.fb;
> -     struct drm_format_name_buf format_name;
>  
>       if (!fb) {
>               drm_dbg_kms(&i915->drm,
> @@ -13330,10 +13329,9 @@ static void intel_dump_plane_state(const struct 
> intel_plane_state *plane_state)
>       }
>  
>       drm_dbg_kms(&i915->drm,
> -                 "[PLANE:%d:%s] fb: [FB:%d] %ux%u format = %s modifier = 
> 0x%llx, visible: %s\n",
> +                 "[PLANE:%d:%s] fb: [FB:%d] %ux%u format = %p4cc modifier = 
> 0x%llx, visible: %s\n",
>                   plane->base.base.id, plane->base.name,
> -                 fb->base.id, fb->width, fb->height,
> -                 drm_get_format_name(fb->format->format, &format_name),
> +                 fb->base.id, fb->width, fb->height, &fb->format->format,
>                   fb->modifier, yesno(plane_state->uapi.visible));
>       drm_dbg_kms(&i915->drm, "\trotation: 0x%x, scaler: %d\n",
>                   plane_state->hw.rotation, plane_state->scaler_id);
> @@ -17927,13 +17925,9 @@ static int intel_framebuffer_init(struct 
> intel_framebuffer *intel_fb,
>       if (!drm_any_plane_has_format(&dev_priv->drm,
>                                     mode_cmd->pixel_format,
>                                     mode_cmd->modifier[0])) {
> -             struct drm_format_name_buf format_name;
> -
>               drm_dbg_kms(&dev_priv->drm,
> -                         "unsupported pixel format %s / modifier 0x%llx\n",
> -                         drm_get_format_name(mode_cmd->pixel_format,
> -                                             &format_name),
> -                         mode_cmd->modifier[0]);
> +                         "unsupported pixel format %p4cc / modifier 
> 0x%llx\n",
> +                         &mode_cmd->pixel_format, mode_cmd->modifier[0]);
>               goto err;
>       }
>  
> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c 
> b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> index ca41e8c00ad7..a5c9fe2e56b3 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> @@ -771,21 +771,21 @@ static void intel_plane_uapi_info(struct seq_file *m, 
> struct intel_plane *plane)
>       const struct intel_plane_state *plane_state =
>               to_intel_plane_state(plane->base.state);
>       const struct drm_framebuffer *fb = plane_state->uapi.fb;
> -     struct drm_format_name_buf format_name;
>       struct drm_rect src, dst;
>       char rot_str[48];
>  
>       src = drm_plane_state_src(&plane_state->uapi);
>       dst = drm_plane_state_dest(&plane_state->uapi);
>  
> -     if (fb)
> -             drm_get_format_name(fb->format->format, &format_name);
> -
>       plane_rotation(rot_str, sizeof(rot_str),
>                      plane_state->uapi.rotation);
>  
> -     seq_printf(m, "\t\tuapi: [FB:%d] %s,0x%llx,%dx%d, visible=%s, src=" 
> DRM_RECT_FP_FMT ", dst=" DRM_RECT_FMT ", rotation=%s\n",
> -                fb ? fb->base.id : 0, fb ? format_name.str : "n/a",
> +     seq_printf(m, "\t\tuapi: [FB:%d] ", fb ? fb->base.id : 0);
> +     if (fb)
> +             seq_printf(m, "%p4cc", &fb->format->format);
> +     else
> +             seq_puts(m, "n/a");

> +     seq_printf(m, ",0x%llx,%dx%d, visible=%s, src=" DRM_RECT_FP_FMT ", 
> dst=" DRM_RECT_FMT ", rotation=%s\n",

Why not to keep two seq_printf() calls?

if (fb) {
        seq_printf();
} else {
        seq_printf();
}

?

>                  fb ? fb->modifier : 0,
>                  fb ? fb->width : 0, fb ? fb->height : 0,
>                  plane_visibility(plane_state),
> @@ -804,19 +804,16 @@ static void intel_plane_hw_info(struct seq_file *m, 
> struct intel_plane *plane)
>       const struct intel_plane_state *plane_state =
>               to_intel_plane_state(plane->base.state);
>       const struct drm_framebuffer *fb = plane_state->hw.fb;
> -     struct drm_format_name_buf format_name;
>       char rot_str[48];
>  
>       if (!fb)
>               return;
>  
> -     drm_get_format_name(fb->format->format, &format_name);
> -
>       plane_rotation(rot_str, sizeof(rot_str),
>                      plane_state->hw.rotation);
>  
> -     seq_printf(m, "\t\thw: [FB:%d] %s,0x%llx,%dx%d, visible=%s, src=" 
> DRM_RECT_FP_FMT ", dst=" DRM_RECT_FMT ", rotation=%s\n",
> -                fb->base.id, format_name.str,
> +     seq_printf(m, "\t\thw: [FB:%d] %p4cc,0x%llx,%dx%d, visible=%s, src=" 
> DRM_RECT_FP_FMT ", dst=" DRM_RECT_FMT ", rotation=%s\n",
> +                fb->base.id, &fb->format->format,
>                  fb->modifier, fb->width, fb->height,
>                  yesno(plane_state->uapi.visible),
>                  DRM_RECT_FP_ARG(&plane_state->uapi.src),
> diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c 
> b/drivers/gpu/drm/i915/display/intel_sprite.c
> index 019a2d6d807a..e4e55d1aec10 100644
> --- a/drivers/gpu/drm/i915/display/intel_sprite.c
> +++ b/drivers/gpu/drm/i915/display/intel_sprite.c
> @@ -2285,7 +2285,6 @@ static int skl_plane_check_fb(const struct 
> intel_crtc_state *crtc_state,
>       struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
>       const struct drm_framebuffer *fb = plane_state->hw.fb;
>       unsigned int rotation = plane_state->hw.rotation;
> -     struct drm_format_name_buf format_name;
>  
>       if (!fb)
>               return 0;
> @@ -2333,9 +2332,8 @@ static int skl_plane_check_fb(const struct 
> intel_crtc_state *crtc_state,
>               case DRM_FORMAT_XVYU12_16161616:
>               case DRM_FORMAT_XVYU16161616:
>                       drm_dbg_kms(&dev_priv->drm,
> -                                 "Unsupported pixel format %s for 90/270!\n",
> -                                 drm_get_format_name(fb->format->format,
> -                                                     &format_name));
> +                                 "Unsupported pixel format %p4cc for 
> 90/270!\n",
> +                                 &fb->format->format);
>                       return -EINVAL;
>               default:
>                       break;
> diff --git a/drivers/gpu/drm/mcde/mcde_display.c 
> b/drivers/gpu/drm/mcde/mcde_display.c
> index 7c2e0b865441..83ac7493e751 100644
> --- a/drivers/gpu/drm/mcde/mcde_display.c
> +++ b/drivers/gpu/drm/mcde/mcde_display.c
> @@ -1161,7 +1161,6 @@ static void mcde_display_enable(struct 
> drm_simple_display_pipe *pipe,
>       int dsi_pkt_size;
>       int fifo_wtrmrk;
>       int cpp = fb->format->cpp[0];
> -     struct drm_format_name_buf tmp;
>       u32 dsi_formatter_frame;
>       u32 val;
>       int ret;
> @@ -1173,9 +1172,8 @@ static void mcde_display_enable(struct 
> drm_simple_display_pipe *pipe,
>               return;
>       }
>  
> -     dev_info(drm->dev, "enable MCDE, %d x %d format %s\n",
> -              mode->hdisplay, mode->vdisplay,
> -              drm_get_format_name(format, &tmp));
> +     dev_info(drm->dev, "enable MCDE, %d x %d format %p4cc\n",
> +              mode->hdisplay, mode->vdisplay, &format);
>  
>  
>       /* Clear any pending interrupts */
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c 
> b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
> index 56eb22554197..ea9d73983d13 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
> @@ -71,7 +71,6 @@ static void _dpu_crtc_setup_blend_cfg(struct dpu_crtc_mixer 
> *mixer,
>  {
>       struct dpu_hw_mixer *lm = mixer->hw_lm;
>       uint32_t blend_op;
> -     struct drm_format_name_buf format_name;
>  
>       /* default to opaque blending */
>       blend_op = DPU_BLEND_FG_ALPHA_FG_CONST |
> @@ -87,9 +86,8 @@ static void _dpu_crtc_setup_blend_cfg(struct dpu_crtc_mixer 
> *mixer,
>       lm->ops.setup_blend_config(lm, pstate->stage,
>                               0xFF, 0, blend_op);
>  
> -     DPU_DEBUG("format:%s, alpha_en:%u blend_op:0x%x\n",
> -             drm_get_format_name(format->base.pixel_format, &format_name),
> -             format->alpha_enable, blend_op);
> +     DPU_DEBUG("format:%p4cc, alpha_en:%u blend_op:0x%x\n",
> +               &format->base.pixel_format, format->alpha_enable, blend_op);
>  }
>  
>  static void _dpu_crtc_program_lm_output_roi(struct drm_crtc *crtc)
> diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c 
> b/drivers/gpu/drm/nouveau/nouveau_display.c
> index bceb48a2dfca..a305b749c321 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_display.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_display.c
> @@ -322,12 +322,9 @@ nouveau_framebuffer_new(struct drm_device *dev,
>            mode_cmd->pitches[0] >= 0x10000 || /* at most 64k pitch */
>            (mode_cmd->pitches[1] && /* pitches for planes must match */
>             mode_cmd->pitches[0] != mode_cmd->pitches[1]))) {
> -             struct drm_format_name_buf format_name;
> -             DRM_DEBUG_KMS("Unsuitable framebuffer: format: %s; pitches: 
> 0x%x\n 0x%x\n",
> -                           drm_get_format_name(mode_cmd->pixel_format,
> -                                               &format_name),
> -                           mode_cmd->pitches[0],
> -                           mode_cmd->pitches[1]);
> +             DRM_DEBUG_KMS("Unsuitable framebuffer: format: %p4cc; pitches: 
> 0x%x\n 0x%x\n",
> +                           &mode_cmd->pixel_format,
> +                           mode_cmd->pitches[0], mode_cmd->pitches[1]);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/radeon/atombios_crtc.c 
> b/drivers/gpu/drm/radeon/atombios_crtc.c
> index 1979ed3d6547..c94e429e75f9 100644
> --- a/drivers/gpu/drm/radeon/atombios_crtc.c
> +++ b/drivers/gpu/drm/radeon/atombios_crtc.c
> @@ -1157,7 +1157,6 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc,
>       u32 tmp, viewport_w, viewport_h;
>       int r;
>       bool bypass_lut = false;
> -     struct drm_format_name_buf format_name;
>  
>       /* no fb bound */
>       if (!atomic && !crtc->primary->fb) {
> @@ -1267,8 +1266,8 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc,
>  #endif
>               break;
>       default:
> -             DRM_ERROR("Unsupported screen format %s\n",
> -                       drm_get_format_name(target_fb->format->format, 
> &format_name));
> +             DRM_ERROR("Unsupported screen format %p4cc\n",
> +                       &target_fb->format->format);
>               return -EINVAL;
>       }
>  
> @@ -1478,7 +1477,6 @@ static int avivo_crtc_do_set_base(struct drm_crtc *crtc,
>       u32 viewport_w, viewport_h;
>       int r;
>       bool bypass_lut = false;
> -     struct drm_format_name_buf format_name;
>  
>       /* no fb bound */
>       if (!atomic && !crtc->primary->fb) {
> @@ -1579,8 +1577,8 @@ static int avivo_crtc_do_set_base(struct drm_crtc *crtc,
>  #endif
>               break;
>       default:
> -             DRM_ERROR("Unsupported screen format %s\n",
> -                       drm_get_format_name(target_fb->format->format, 
> &format_name));
> +             DRM_ERROR("Unsupported screen format %p4cc\n",
> +                       &target_fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/sun4i/sun4i_backend.c 
> b/drivers/gpu/drm/sun4i/sun4i_backend.c
> index 522e51a404cc..bf8cfefa0365 100644
> --- a/drivers/gpu/drm/sun4i/sun4i_backend.c
> +++ b/drivers/gpu/drm/sun4i/sun4i_backend.c
> @@ -510,7 +510,6 @@ static int sun4i_backend_atomic_check(struct sunxi_engine 
> *engine,
>               struct sun4i_layer_state *layer_state =
>                       state_to_sun4i_layer_state(plane_state);
>               struct drm_framebuffer *fb = plane_state->fb;
> -             struct drm_format_name_buf format_name;
>  
>               if (!sun4i_backend_plane_is_supported(plane_state,
>                                                     
> &layer_state->uses_frontend))
> @@ -527,9 +526,8 @@ static int sun4i_backend_atomic_check(struct sunxi_engine 
> *engine,
>                       }
>               }
>  
> -             DRM_DEBUG_DRIVER("Plane FB format is %s\n",
> -                              drm_get_format_name(fb->format->format,
> -                                                  &format_name));
> +             DRM_DEBUG_DRIVER("Plane FB format is %p4cc\n",
> +                              &fb->format->format);
>               if (fb->format->has_alpha || (plane_state->alpha != 
> DRM_BLEND_ALPHA_OPAQUE))
>                       num_alpha_planes++;
>  
> diff --git a/drivers/gpu/drm/vkms/vkms_writeback.c 
> b/drivers/gpu/drm/vkms/vkms_writeback.c
> index 78fdc1d59186..0935686475a0 100644
> --- a/drivers/gpu/drm/vkms/vkms_writeback.c
> +++ b/drivers/gpu/drm/vkms/vkms_writeback.c
> @@ -42,11 +42,8 @@ static int vkms_wb_encoder_atomic_check(struct drm_encoder 
> *encoder,
>       }
>  
>       if (fb->format->format != vkms_wb_formats[0]) {
> -             struct drm_format_name_buf format_name;
> -
> -             DRM_DEBUG_KMS("Invalid pixel format %s\n",
> -                           drm_get_format_name(fb->format->format,
> -                                               &format_name));
> +             DRM_DEBUG_KMS("Invalid pixel format %p4cc\n",
> +                           &fb->format->format);
>               return -EINVAL;
>       }
>  
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c 
> b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> index bc67f2b930e1..0cd2c55036bb 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> @@ -895,7 +895,6 @@ static int vmw_kms_new_framebuffer_surface(struct 
> vmw_private *dev_priv,
>       struct vmw_framebuffer_surface *vfbs;
>       enum SVGA3dSurfaceFormat format;
>       int ret;
> -     struct drm_format_name_buf format_name;
>  
>       /* 3D is only supported on HWv8 and newer hosts */
>       if (dev_priv->active_display_unit == vmw_du_legacy)
> @@ -933,8 +932,8 @@ static int vmw_kms_new_framebuffer_surface(struct 
> vmw_private *dev_priv,
>               format = SVGA3D_A1R5G5B5;
>               break;
>       default:
> -             DRM_ERROR("Invalid pixel format: %s\n",
> -                       drm_get_format_name(mode_cmd->pixel_format, 
> &format_name));
> +             DRM_ERROR("Invalid pixel format: %p4cc\n",
> +                       &mode_cmd->pixel_format);
>               return -EINVAL;
>       }
>  
> @@ -1149,7 +1148,6 @@ static int vmw_create_bo_proxy(struct drm_device *dev,
>       uint32_t format;
>       struct vmw_resource *res;
>       unsigned int bytes_pp;
> -     struct drm_format_name_buf format_name;
>       int ret;
>  
>       switch (mode_cmd->pixel_format) {
> @@ -1171,8 +1169,8 @@ static int vmw_create_bo_proxy(struct drm_device *dev,
>               break;
>  
>       default:
> -             DRM_ERROR("Invalid framebuffer format %s\n",
> -                       drm_get_format_name(mode_cmd->pixel_format, 
> &format_name));
> +             DRM_ERROR("Invalid framebuffer format %p4cc\n",
> +                       &mode_cmd->pixel_format);
>               return -EINVAL;
>       }
>  
> @@ -1216,7 +1214,6 @@ static int vmw_kms_new_framebuffer_bo(struct 
> vmw_private *dev_priv,
>       struct drm_device *dev = dev_priv->dev;
>       struct vmw_framebuffer_bo *vfbd;
>       unsigned int requested_size;
> -     struct drm_format_name_buf format_name;
>       int ret;
>  
>       requested_size = mode_cmd->height * mode_cmd->pitches[0];
> @@ -1236,8 +1233,8 @@ static int vmw_kms_new_framebuffer_bo(struct 
> vmw_private *dev_priv,
>               case DRM_FORMAT_RGB565:
>                       break;
>               default:
> -                     DRM_ERROR("Invalid pixel format: %s\n",
> -                               drm_get_format_name(mode_cmd->pixel_format, 
> &format_name));
> +                     DRM_ERROR("Invalid pixel format: %p4cc\n",
> +                               &mode_cmd->pixel_format);
>                       return -EINVAL;
>               }
>       }
> diff --git a/include/drm/drm_fourcc.h b/include/drm/drm_fourcc.h
> index 156b122c0ad5..3ea17b8a79d3 100644
> --- a/include/drm/drm_fourcc.h
> +++ b/include/drm/drm_fourcc.h
> @@ -318,6 +318,5 @@ unsigned int drm_format_info_block_height(const struct 
> drm_format_info *info,
>                                         int plane);
>  uint64_t drm_format_info_min_pitch(const struct drm_format_info *info,
>                                  int plane, unsigned int buffer_width);
> -const char *drm_get_format_name(uint32_t format, struct drm_format_name_buf 
> *buf);
>  
>  #endif /* __DRM_FOURCC_H__ */
> -- 
> 2.29.2
> 

-- 
With Best Regards,
Andy Shevchenko


Reply via email to