On Thu, Jul 19, 2018 at 09:22:04PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrj...@linux.intel.com>
> 
> To reduce the confusion between a drm plane and the planes of
> framebuffers let's desiginate the latter as "color plane".


what about fb_plane instead of color?


> 
> Signed-off-by: Ville Syrjälä <ville.syrj...@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/intel_display.c | 106 
> ++++++++++++++++++-----------------
>  drivers/gpu/drm/i915/intel_drv.h     |   2 +-
>  2 files changed, 56 insertions(+), 52 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c 
> b/drivers/gpu/drm/i915/intel_display.c
> index e6cb8238f257..bc2a712311ba 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -1916,10 +1916,10 @@ static unsigned int intel_tile_size(const struct 
> drm_i915_private *dev_priv)
>  }
>  
>  static unsigned int
> -intel_tile_width_bytes(const struct drm_framebuffer *fb, int plane)
> +intel_tile_width_bytes(const struct drm_framebuffer *fb, int color_plane)
>  {
>       struct drm_i915_private *dev_priv = to_i915(fb->dev);
> -     unsigned int cpp = fb->format->cpp[plane];
> +     unsigned int cpp = fb->format->cpp[color_plane];
>  
>       switch (fb->modifier) {
>       case DRM_FORMAT_MOD_LINEAR:
> @@ -1930,7 +1930,7 @@ intel_tile_width_bytes(const struct drm_framebuffer 
> *fb, int plane)
>               else
>                       return 512;
>       case I915_FORMAT_MOD_Y_TILED_CCS:
> -             if (plane == 1)
> +             if (color_plane == 1)
>                       return 128;
>               /* fall through */
>       case I915_FORMAT_MOD_Y_TILED:
> @@ -1939,7 +1939,7 @@ intel_tile_width_bytes(const struct drm_framebuffer 
> *fb, int plane)
>               else
>                       return 512;
>       case I915_FORMAT_MOD_Yf_TILED_CCS:
> -             if (plane == 1)
> +             if (color_plane == 1)
>                       return 128;
>               /* fall through */
>       case I915_FORMAT_MOD_Yf_TILED:
> @@ -1964,22 +1964,22 @@ intel_tile_width_bytes(const struct drm_framebuffer 
> *fb, int plane)
>  }
>  
>  static unsigned int
> -intel_tile_height(const struct drm_framebuffer *fb, int plane)
> +intel_tile_height(const struct drm_framebuffer *fb, int color_plane)
>  {
>       if (fb->modifier == DRM_FORMAT_MOD_LINEAR)
>               return 1;
>       else
>               return intel_tile_size(to_i915(fb->dev)) /
> -                     intel_tile_width_bytes(fb, plane);
> +                     intel_tile_width_bytes(fb, color_plane);
>  }
>  
>  /* Return the tile dimensions in pixel units */
> -static void intel_tile_dims(const struct drm_framebuffer *fb, int plane,
> +static void intel_tile_dims(const struct drm_framebuffer *fb, int 
> color_plane,
>                           unsigned int *tile_width,
>                           unsigned int *tile_height)
>  {
> -     unsigned int tile_width_bytes = intel_tile_width_bytes(fb, plane);
> -     unsigned int cpp = fb->format->cpp[plane];
> +     unsigned int tile_width_bytes = intel_tile_width_bytes(fb, color_plane);
> +     unsigned int cpp = fb->format->cpp[color_plane];
>  
>       *tile_width = tile_width_bytes / cpp;
>       *tile_height = intel_tile_size(to_i915(fb->dev)) / tile_width_bytes;
> @@ -1987,9 +1987,9 @@ static void intel_tile_dims(const struct 
> drm_framebuffer *fb, int plane,
>  
>  unsigned int
>  intel_fb_align_height(const struct drm_framebuffer *fb,
> -                   int plane, unsigned int height)
> +                   int color_plane, unsigned int height)
>  {
> -     unsigned int tile_height = intel_tile_height(fb, plane);
> +     unsigned int tile_height = intel_tile_height(fb, color_plane);
>  
>       return ALIGN(height, tile_height);
>  }
> @@ -2043,12 +2043,12 @@ static unsigned int intel_linear_alignment(const 
> struct drm_i915_private *dev_pr
>  }
>  
>  static unsigned int intel_surf_alignment(const struct drm_framebuffer *fb,
> -                                      int plane)
> +                                      int color_plane)
>  {
>       struct drm_i915_private *dev_priv = to_i915(fb->dev);
>  
>       /* AUX_DIST needs only 4K alignment */
> -     if (plane == 1)
> +     if (color_plane == 1)
>               return 4096;
>  
>       switch (fb->modifier) {
> @@ -2178,13 +2178,13 @@ void intel_unpin_fb_vma(struct i915_vma *vma, 
> unsigned long flags)
>       i915_vma_put(vma);
>  }
>  
> -static int intel_fb_pitch(const struct drm_framebuffer *fb, int plane,
> +static int intel_fb_pitch(const struct drm_framebuffer *fb, int color_plane,
>                         unsigned int rotation)
>  {
>       if (drm_rotation_90_or_270(rotation))
> -             return to_intel_framebuffer(fb)->rotated[plane].pitch;
> +             return to_intel_framebuffer(fb)->rotated[color_plane].pitch;
>       else
> -             return fb->pitches[plane];
> +             return fb->pitches[color_plane];
>  }
>  
>  /*
> @@ -2195,11 +2195,11 @@ static int intel_fb_pitch(const struct 
> drm_framebuffer *fb, int plane,
>   */
>  u32 intel_fb_xy_to_linear(int x, int y,
>                         const struct intel_plane_state *state,
> -                       int plane)
> +                       int color_plane)
>  {
>       const struct drm_framebuffer *fb = state->base.fb;
> -     unsigned int cpp = fb->format->cpp[plane];
> -     unsigned int pitch = state->color_plane[plane].stride;
> +     unsigned int cpp = fb->format->cpp[color_plane];
> +     unsigned int pitch = state->color_plane[color_plane].stride;
>  
>       return y * pitch + x * cpp;
>  }
> @@ -2211,18 +2211,18 @@ u32 intel_fb_xy_to_linear(int x, int y,
>   */
>  void intel_add_fb_offsets(int *x, int *y,
>                         const struct intel_plane_state *state,
> -                       int plane)
> +                       int color_plane)
>  
>  {
>       const struct intel_framebuffer *intel_fb = 
> to_intel_framebuffer(state->base.fb);
>       unsigned int rotation = state->base.rotation;
>  
>       if (drm_rotation_90_or_270(rotation)) {
> -             *x += intel_fb->rotated[plane].x;
> -             *y += intel_fb->rotated[plane].y;
> +             *x += intel_fb->rotated[color_plane].x;
> +             *y += intel_fb->rotated[color_plane].y;
>       } else {
> -             *x += intel_fb->normal[plane].x;
> -             *y += intel_fb->normal[plane].y;
> +             *x += intel_fb->normal[color_plane].x;
> +             *y += intel_fb->normal[color_plane].y;
>       }
>  }
>  
> @@ -2254,13 +2254,14 @@ static u32 intel_adjust_tile_offset(int *x, int *y,
>  }
>  
>  static u32 intel_adjust_aligned_offset(int *x, int *y,
> -                                    const struct drm_framebuffer *fb, int 
> plane,
> +                                    const struct drm_framebuffer *fb,
> +                                    int color_plane,
>                                      unsigned int rotation,
>                                      unsigned int pitch,
>                                      u32 old_offset, u32 new_offset)
>  {
>       struct drm_i915_private *dev_priv = to_i915(fb->dev);
> -     unsigned int cpp = fb->format->cpp[plane];
> +     unsigned int cpp = fb->format->cpp[color_plane];
>  
>       WARN_ON(new_offset > old_offset);
>  
> @@ -2269,7 +2270,7 @@ static u32 intel_adjust_aligned_offset(int *x, int *y,
>               unsigned int pitch_tiles;
>  
>               tile_size = intel_tile_size(dev_priv);
> -             intel_tile_dims(fb, plane, &tile_width, &tile_height);
> +             intel_tile_dims(fb, color_plane, &tile_width, &tile_height);
>  
>               if (drm_rotation_90_or_270(rotation)) {
>                       pitch_tiles = pitch / tile_height;
> @@ -2297,12 +2298,12 @@ static u32 intel_adjust_aligned_offset(int *x, int *y,
>   */
>  static u32 intel_plane_adjust_aligned_offset(int *x, int *y,
>                                            const struct intel_plane_state 
> *state,
> -                                          int plane,
> +                                          int color_plane,
>                                            u32 old_offset, u32 new_offset)
>  {
> -     return intel_adjust_aligned_offset(x, y, state->base.fb, plane,
> +     return intel_adjust_aligned_offset(x, y, state->base.fb, color_plane,
>                                          state->base.rotation,
> -                                        state->color_plane[plane].stride,
> +                                        
> state->color_plane[color_plane].stride,
>                                          old_offset, new_offset);
>  }
>  
> @@ -2322,13 +2323,14 @@ static u32 intel_plane_adjust_aligned_offset(int *x, 
> int *y,
>   */
>  static u32 intel_compute_aligned_offset(struct drm_i915_private *dev_priv,
>                                       int *x, int *y,
> -                                     const struct drm_framebuffer *fb, int 
> plane,
> +                                     const struct drm_framebuffer *fb,
> +                                     int color_plane,
>                                       unsigned int pitch,
>                                       unsigned int rotation,
>                                       u32 alignment)
>  {
>       uint64_t fb_modifier = fb->modifier;
> -     unsigned int cpp = fb->format->cpp[plane];
> +     unsigned int cpp = fb->format->cpp[color_plane];
>       u32 offset, offset_aligned;
>  
>       if (alignment)
> @@ -2339,7 +2341,7 @@ static u32 intel_compute_aligned_offset(struct 
> drm_i915_private *dev_priv,
>               unsigned int tile_rows, tiles, pitch_tiles;
>  
>               tile_size = intel_tile_size(dev_priv);
> -             intel_tile_dims(fb, plane, &tile_width, &tile_height);
> +             intel_tile_dims(fb, color_plane, &tile_width, &tile_height);
>  
>               if (drm_rotation_90_or_270(rotation)) {
>                       pitch_tiles = pitch / tile_height;
> @@ -2373,41 +2375,42 @@ static u32 intel_compute_aligned_offset(struct 
> drm_i915_private *dev_priv,
>  
>  static u32 intel_plane_compute_aligned_offset(int *x, int *y,
>                                             const struct intel_plane_state 
> *state,
> -                                           int plane)
> +                                           int color_plane)
>  {
>       struct intel_plane *intel_plane = to_intel_plane(state->base.plane);
>       struct drm_i915_private *dev_priv = to_i915(intel_plane->base.dev);
>       const struct drm_framebuffer *fb = state->base.fb;
>       unsigned int rotation = state->base.rotation;
> -     int pitch = state->color_plane[plane].stride;
> +     int pitch = state->color_plane[color_plane].stride;
>       u32 alignment;
>  
>       if (intel_plane->id == PLANE_CURSOR)
>               alignment = intel_cursor_alignment(dev_priv);
>       else
> -             alignment = intel_surf_alignment(fb, plane);
> +             alignment = intel_surf_alignment(fb, color_plane);
>  
> -     return intel_compute_aligned_offset(dev_priv, x, y, fb, plane,
> +     return intel_compute_aligned_offset(dev_priv, x, y, fb, color_plane,
>                                           pitch, rotation, alignment);
>  }
>  
>  /* Convert the fb->offset[] into x/y offsets */
>  static int intel_fb_offset_to_xy(int *x, int *y,
> -                              const struct drm_framebuffer *fb, int plane)
> +                              const struct drm_framebuffer *fb,
> +                              int color_plane)
>  {
>       struct drm_i915_private *dev_priv = to_i915(fb->dev);
>  
>       if (fb->modifier != DRM_FORMAT_MOD_LINEAR &&
> -         fb->offsets[plane] % intel_tile_size(dev_priv))
> +         fb->offsets[color_plane] % intel_tile_size(dev_priv))
>               return -EINVAL;
>  
>       *x = 0;
>       *y = 0;
>  
>       intel_adjust_aligned_offset(x, y,
> -                                 fb, plane, DRM_MODE_ROTATE_0,
> -                                 fb->pitches[0],
> -                                 fb->offsets[plane], 0);
> +                                 fb, color_plane, DRM_MODE_ROTATE_0,
> +                                 fb->pitches[color_plane],
> +                                 fb->offsets[color_plane], 0);
>  
>       return 0;
>  }
> @@ -2899,10 +2902,11 @@ intel_find_initial_plane_obj(struct intel_crtc 
> *intel_crtc,
>                 &obj->frontbuffer_bits);
>  }
>  
> -static int skl_max_plane_width(const struct drm_framebuffer *fb, int plane,
> +static int skl_max_plane_width(const struct drm_framebuffer *fb,
> +                            int color_plane,
>                              unsigned int rotation)
>  {
> -     int cpp = fb->format->cpp[plane];
> +     int cpp = fb->format->cpp[color_plane];
>  
>       switch (fb->modifier) {
>       case DRM_FORMAT_MOD_LINEAR:
> @@ -3462,12 +3466,12 @@ static bool i9xx_plane_get_hw_state(struct 
> intel_plane *plane,
>  }
>  
>  static u32
> -intel_fb_stride_alignment(const struct drm_framebuffer *fb, int plane)
> +intel_fb_stride_alignment(const struct drm_framebuffer *fb, int color_plane)
>  {
>       if (fb->modifier == DRM_FORMAT_MOD_LINEAR)
>               return 64;
>       else
> -             return intel_tile_width_bytes(fb, plane);
> +             return intel_tile_width_bytes(fb, color_plane);
>  }
>  
>  static void skl_detach_scaler(struct intel_crtc *intel_crtc, int id)
> @@ -3498,13 +3502,13 @@ static void skl_detach_scalers(struct intel_crtc 
> *intel_crtc)
>  }
>  
>  u32 skl_plane_stride(const struct intel_plane_state *plane_state,
> -                  int plane)
> +                  int color_plane)
>  {
>       const struct drm_framebuffer *fb = plane_state->base.fb;
>       unsigned int rotation = plane_state->base.rotation;
> -     u32 stride = plane_state->color_plane[plane].stride;
> +     u32 stride = plane_state->color_plane[color_plane].stride;
>  
> -     if (plane >= fb->format->num_planes)
> +     if (color_plane >= fb->format->num_planes)
>               return 0;
>  
>       /*
> @@ -3512,9 +3516,9 @@ u32 skl_plane_stride(const struct intel_plane_state 
> *plane_state,
>        * linear buffers or in number of tiles for tiled buffers.
>        */
>       if (drm_rotation_90_or_270(rotation))
> -             stride /= intel_tile_height(fb, plane);
> +             stride /= intel_tile_height(fb, color_plane);
>       else
> -             stride /= intel_fb_stride_alignment(fb, plane);
> +             stride /= intel_fb_stride_alignment(fb, color_plane);
>  
>       return stride;
>  }
> diff --git a/drivers/gpu/drm/i915/intel_drv.h 
> b/drivers/gpu/drm/i915/intel_drv.h
> index d70276ff3d0e..cc381f680338 100644
> --- a/drivers/gpu/drm/i915/intel_drv.h
> +++ b/drivers/gpu/drm/i915/intel_drv.h
> @@ -1438,7 +1438,7 @@ void icl_unmap_plls_to_ports(struct drm_crtc *crtc,
>                            struct drm_atomic_state *old_state);
>  
>  unsigned int intel_fb_align_height(const struct drm_framebuffer *fb,
> -                                int plane, unsigned int height);
> +                                int color_plane, unsigned int height);
>  
>  /* intel_audio.c */
>  void intel_init_audio_hooks(struct drm_i915_private *dev_priv);
> -- 
> 2.16.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to