All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Ville Syrjala <ville.syrjala@linux.intel.com>,
	intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 10/12] drm/i915: Relocate intel_{rotation, remapped}_info_size()
Date: Thu, 13 Feb 2025 21:21:51 +0200	[thread overview]
Message-ID: <87r041wsz4.fsf@intel.com> (raw)
In-Reply-To: <20250213150220.13580-11-ville.syrjala@linux.intel.com>

On Thu, 13 Feb 2025, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Move intel_{rotation,remapped}_info_size() into intel_fb.c as
> that seems a slightly better place than intel_display.c. I suppose
> these should live somewhere outside the display code as they are
> also used by the gem code.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display.c | 36 --------------------
>  drivers/gpu/drm/i915/display/intel_display.h |  4 ---
>  drivers/gpu/drm/i915/display/intel_fb.c      | 36 ++++++++++++++++++++
>  drivers/gpu/drm/i915/display/intel_fb.h      |  5 +++
>  drivers/gpu/drm/i915/i915_vma.c              |  2 +-
>  5 files changed, 42 insertions(+), 41 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 4800fefd6321..c38c37afc154 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -601,42 +601,6 @@ void intel_disable_transcoder(const struct intel_crtc_state *old_crtc_state)
>  		intel_wait_for_pipe_off(old_crtc_state);
>  }
>  
> -unsigned int intel_rotation_info_size(const struct intel_rotation_info *rot_info)
> -{
> -	unsigned int size = 0;
> -	int i;
> -
> -	for (i = 0 ; i < ARRAY_SIZE(rot_info->plane); i++)
> -		size += rot_info->plane[i].dst_stride * rot_info->plane[i].width;
> -
> -	return size;
> -}
> -
> -unsigned int intel_remapped_info_size(const struct intel_remapped_info *rem_info)
> -{
> -	unsigned int size = 0;
> -	int i;
> -
> -	for (i = 0 ; i < ARRAY_SIZE(rem_info->plane); i++) {
> -		unsigned int plane_size;
> -
> -		if (rem_info->plane[i].linear)
> -			plane_size = rem_info->plane[i].size;
> -		else
> -			plane_size = rem_info->plane[i].dst_stride * rem_info->plane[i].height;
> -
> -		if (plane_size == 0)
> -			continue;
> -
> -		if (rem_info->plane_alignment)
> -			size = ALIGN(size, rem_info->plane_alignment);
> -
> -		size += plane_size;
> -	}
> -
> -	return size;
> -}
> -
>  /*
>   * Convert the x/y offsets into a linear offset.
>   * Only valid with 0/180 degree rotation, which is fine since linear
> diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h
> index d3afd134f70e..a7bd82662adf 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.h
> +++ b/drivers/gpu/drm/i915/display/intel_display.h
> @@ -59,8 +59,6 @@ struct intel_link_m_n;
>  struct intel_plane;
>  struct intel_plane_state;
>  struct intel_power_domain_mask;
> -struct intel_remapped_info;
> -struct intel_rotation_info;
>  struct pci_dev;
>  struct work_struct;
>  
> @@ -467,8 +465,6 @@ unsigned int intel_fb_xy_to_linear(int x, int y,
>  				   int plane);
>  void intel_add_fb_offsets(int *x, int *y,
>  			  const struct intel_plane_state *state, int plane);
> -unsigned int intel_rotation_info_size(const struct intel_rotation_info *rot_info);
> -unsigned int intel_remapped_info_size(const struct intel_remapped_info *rem_info);
>  bool intel_has_pending_fb_unpin(struct drm_i915_private *dev_priv);
>  void intel_encoder_destroy(struct drm_encoder *encoder);
>  struct drm_display_mode *
> diff --git a/drivers/gpu/drm/i915/display/intel_fb.c b/drivers/gpu/drm/i915/display/intel_fb.c
> index 5875af2b61e6..c1923b4c13d6 100644
> --- a/drivers/gpu/drm/i915/display/intel_fb.c
> +++ b/drivers/gpu/drm/i915/display/intel_fb.c
> @@ -1891,6 +1891,42 @@ static void intel_plane_remap_gtt(struct intel_plane_state *plane_state)
>  	}
>  }
>  
> +unsigned int intel_rotation_info_size(const struct intel_rotation_info *rot_info)
> +{
> +	unsigned int size = 0;
> +	int i;
> +
> +	for (i = 0 ; i < ARRAY_SIZE(rot_info->plane); i++)
> +		size += rot_info->plane[i].dst_stride * rot_info->plane[i].width;
> +
> +	return size;
> +}
> +
> +unsigned int intel_remapped_info_size(const struct intel_remapped_info *rem_info)
> +{
> +	unsigned int size = 0;
> +	int i;
> +
> +	for (i = 0 ; i < ARRAY_SIZE(rem_info->plane); i++) {
> +		unsigned int plane_size;
> +
> +		if (rem_info->plane[i].linear)
> +			plane_size = rem_info->plane[i].size;
> +		else
> +			plane_size = rem_info->plane[i].dst_stride * rem_info->plane[i].height;
> +
> +		if (plane_size == 0)
> +			continue;
> +
> +		if (rem_info->plane_alignment)
> +			size = ALIGN(size, rem_info->plane_alignment);
> +
> +		size += plane_size;
> +	}
> +
> +	return size;
> +}
> +
>  void intel_fb_fill_view(const struct intel_framebuffer *fb, unsigned int rotation,
>  			struct intel_fb_view *view)
>  {
> diff --git a/drivers/gpu/drm/i915/display/intel_fb.h b/drivers/gpu/drm/i915/display/intel_fb.h
> index 63728520eb06..d04d9274bb71 100644
> --- a/drivers/gpu/drm/i915/display/intel_fb.h
> +++ b/drivers/gpu/drm/i915/display/intel_fb.h
> @@ -19,6 +19,8 @@ struct intel_fb_view;
>  struct intel_framebuffer;
>  struct intel_plane;
>  struct intel_plane_state;
> +struct intel_remapped_info;
> +struct intel_rotation_info;
>  
>  #define INTEL_PLANE_CAP_NONE		0
>  #define INTEL_PLANE_CAP_CCS_RC		BIT(0)
> @@ -80,6 +82,9 @@ bool intel_fb_needs_pot_stride_remap(const struct intel_framebuffer *fb);
>  bool intel_plane_uses_fence(const struct intel_plane_state *plane_state);
>  bool intel_fb_supports_90_270_rotation(const struct intel_framebuffer *fb);
>  
> +unsigned int intel_rotation_info_size(const struct intel_rotation_info *rot_info);
> +unsigned int intel_remapped_info_size(const struct intel_remapped_info *rem_info);
> +
>  int intel_fill_fb_info(struct intel_display *display, struct intel_framebuffer *fb);
>  void intel_fb_fill_view(const struct intel_framebuffer *fb, unsigned int rotation,
>  			struct intel_fb_view *view);
> diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c
> index 61b49007ecd4..632e316f8b05 100644
> --- a/drivers/gpu/drm/i915/i915_vma.c
> +++ b/drivers/gpu/drm/i915/i915_vma.c
> @@ -26,7 +26,7 @@
>  #include <linux/dma-fence-array.h>
>  #include <drm/drm_gem.h>
>  
> -#include "display/intel_display.h"
> +#include "display/intel_fb.h"

More specific includes from outside of display are always welcome!

Reviewed-by: Jani Nikula <jani.nikula@intel.com>


>  #include "display/intel_frontbuffer.h"
>  #include "gem/i915_gem_lmem.h"
>  #include "gem/i915_gem_object_frontbuffer.h"

-- 
Jani Nikula, Intel

  reply	other threads:[~2025-02-13 19:22 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-13 15:02 [PATCH 00/12] drm/i915: Hoist some stuff out from intel_display.c Ville Syrjala
2025-02-13 15:02 ` [PATCH 01/12] drm/i915: Move modeset_retry stuff into intel_connector.c Ville Syrjala
2025-02-13 19:11   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 02/12] drm/i915: Always initialize connector->modeset_retry_work Ville Syrjala
2025-02-13 19:11   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 03/12] drm/i915: Extract intel_connector_cancel_modeset_retry_work() Ville Syrjala
2025-02-13 19:12   ` Jani Nikula
2025-02-13 19:13   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 04/12] drm/i915: Extract intel_hdcp_cancel_works() Ville Syrjala
2025-02-13 19:14   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 05/12] drm/i915: Move intel_hpd_poll_fini() into intel_hotplug.c Ville Syrjala
2025-02-13 19:15   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 06/12] drm/i915: Move intel_plane_destroy() into intel_atomic_plane.c Ville Syrjala
2025-02-13 19:17   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 07/12] drm/i915: Relocate vlv_wait_port_ready() Ville Syrjala
2025-02-13 19:18   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 08/12] drm/i915: Simplify vlv_wait_port_ready() arguments Ville Syrjala
2025-02-13 19:19   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 09/12] drm/i915: Relocate intel_plane_uses_fence() Ville Syrjala
2025-02-13 19:20   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 10/12] drm/i915: Relocate intel_{rotation, remapped}_info_size() Ville Syrjala
2025-02-13 19:21   ` Jani Nikula [this message]
2025-02-13 15:02 ` [PATCH 11/12] drm/i915: Relocate some other plane fb related stuff into intel_fb.c Ville Syrjala
2025-02-13 19:22   ` Jani Nikula
2025-02-13 15:02 ` [PATCH 12/12] drm/i915: s/state/plane_state/ Ville Syrjala
2025-02-13 19:23   ` Jani Nikula
2025-02-13 15:25 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Hoist some stuff out from intel_display.c Patchwork
2025-02-13 15:25 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-02-13 15:44 ` ✗ i915.CI.BAT: failure " Patchwork
2025-02-14 18:22 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Hoist some stuff out from intel_display.c (rev2) Patchwork
2025-02-14 18:22 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-02-14 18:39 ` ✗ i915.CI.BAT: failure " Patchwork
2025-02-15  3:02 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Hoist some stuff out from intel_display.c (rev3) Patchwork
2025-02-15  3:02 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-02-15  3:18 ` ✓ i915.CI.BAT: success " Patchwork
2025-02-15  6:56 ` ✗ i915.CI.Full: failure " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r041wsz4.fsf@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=ville.syrjala@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.