From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: "Hogander, Jouni" <jouni.hogander@intel.com>
Cc: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [Intel-gfx] [PATCH v4 2/3] drm/i915/display: Convert intel_fb_modifier_to_tiling as non-static
Date: Tue, 21 Nov 2023 10:39:17 +0200 [thread overview]
Message-ID: <ZVxstRLrEgKTi6HD@intel.com> (raw)
In-Reply-To: <8c19dbcf8b70eb5e1bdb929229310e741c690878.camel@intel.com>
On Tue, Nov 21, 2023 at 07:35:03AM +0000, Hogander, Jouni wrote:
> On Mon, 2023-11-20 at 16:19 +0200, Ville Syrjälä wrote:
> > On Mon, Nov 20, 2023 at 12:08:32PM +0200, Jouni Högander wrote:
> > > We are about to split i915 specific code from intel_fb.c. Convert
> > > intel_fb_modifier_to_tiling as non-static to allow calling it from
> > > split
> > > code.
> >
> > We should only need this in the i915 path.
>
> If I move it into i915 specific source file I need to convert
> lookup_modifier as non-static. Would you prefer that or do you have
> some other suggestion?
Why does this even use lookup_modifier()? Hmm, I guess it's just
using that to reduce all the compressed modifiers to the Y-tiled
"class".
One alternative would be to just list the modifiers by hand, but
dunno if that's any better. I suppose we can just go with your
original idea.
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> BR,
>
> Jouni Högander
> >
> > >
> > > Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
> > > ---
> > > drivers/gpu/drm/i915/display/intel_fb.c | 40 ++++++++++++---------
> > > ----
> > > drivers/gpu/drm/i915/display/intel_fb.h | 2 ++
> > > 2 files changed, 22 insertions(+), 20 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_fb.c
> > > b/drivers/gpu/drm/i915/display/intel_fb.c
> > > index 7c2df6c1f377..a235ec0f192d 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_fb.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_fb.c
> > > @@ -301,6 +301,26 @@ lookup_format_info(const struct
> > > drm_format_info formats[],
> > > return NULL;
> > > }
> > >
> > > +unsigned int intel_fb_modifier_to_tiling(u64 fb_modifier)
> > > +{
> > > + u8 tiling_caps = lookup_modifier(fb_modifier)->plane_caps &
> > > + INTEL_PLANE_CAP_TILING_MASK;
> > > +
> > > + switch (tiling_caps) {
> > > + case INTEL_PLANE_CAP_TILING_Y:
> > > + return I915_TILING_Y;
> > > + case INTEL_PLANE_CAP_TILING_X:
> > > + return I915_TILING_X;
> > > + case INTEL_PLANE_CAP_TILING_4:
> > > + case INTEL_PLANE_CAP_TILING_Yf:
> > > + case INTEL_PLANE_CAP_TILING_NONE:
> > > + return I915_TILING_NONE;
> > > + default:
> > > + MISSING_CASE(tiling_caps);
> > > + return I915_TILING_NONE;
> > > + }
> > > +}
> > > +
> > > /**
> > > * intel_fb_get_format_info: Get a modifier specific format
> > > information
> > > * @cmd: FB add command structure
> > > @@ -737,26 +757,6 @@ intel_fb_align_height(const struct
> > > drm_framebuffer *fb,
> > > return ALIGN(height, tile_height);
> > > }
> > >
> > > -static unsigned int intel_fb_modifier_to_tiling(u64 fb_modifier)
> > > -{
> > > - u8 tiling_caps = lookup_modifier(fb_modifier)->plane_caps &
> > > - INTEL_PLANE_CAP_TILING_MASK;
> > > -
> > > - switch (tiling_caps) {
> > > - case INTEL_PLANE_CAP_TILING_Y:
> > > - return I915_TILING_Y;
> > > - case INTEL_PLANE_CAP_TILING_X:
> > > - return I915_TILING_X;
> > > - case INTEL_PLANE_CAP_TILING_4:
> > > - case INTEL_PLANE_CAP_TILING_Yf:
> > > - case INTEL_PLANE_CAP_TILING_NONE:
> > > - return I915_TILING_NONE;
> > > - default:
> > > - MISSING_CASE(tiling_caps);
> > > - return I915_TILING_NONE;
> > > - }
> > > -}
> > > -
> > > bool intel_fb_modifier_uses_dpt(struct drm_i915_private *i915, u64
> > > modifier)
> > > {
> > > return HAS_DPT(i915) && modifier != DRM_FORMAT_MOD_LINEAR;
> > > diff --git a/drivers/gpu/drm/i915/display/intel_fb.h
> > > b/drivers/gpu/drm/i915/display/intel_fb.h
> > > index e85167d6bc34..23db6628f53e 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_fb.h
> > > +++ b/drivers/gpu/drm/i915/display/intel_fb.h
> > > @@ -95,4 +95,6 @@ intel_user_framebuffer_create(struct drm_device
> > > *dev,
> > > bool intel_fb_modifier_uses_dpt(struct drm_i915_private *i915, u64
> > > modifier);
> > > bool intel_fb_uses_dpt(const struct drm_framebuffer *fb);
> > >
> > > +unsigned int intel_fb_modifier_to_tiling(u64 fb_modifier);
> > > +
> > > #endif /* __INTEL_FB_H__ */
> > > --
> > > 2.34.1
> >
>
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2023-11-21 8:39 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-20 10:08 [Intel-gfx] [PATCH v4 0/3] Prepare intel_fb for Xe Jouni Högander
2023-11-20 10:08 ` [Intel-gfx] [PATCH v4 1/3] drm/i915/display: use intel_bo_to_drm_bo in intel_fb.c Jouni Högander
2023-11-20 10:08 ` [Intel-gfx] [PATCH v4 2/3] drm/i915/display: Convert intel_fb_modifier_to_tiling as non-static Jouni Högander
2023-11-20 14:19 ` Ville Syrjälä
2023-11-21 7:35 ` Hogander, Jouni
2023-11-21 8:39 ` Ville Syrjälä [this message]
2023-11-20 10:08 ` [Intel-gfx] [PATCH v4 3/3] drm/i915/display: Split i915 specific code away from intel_fb.c Jouni Högander
2023-11-20 14:23 ` Ville Syrjälä
2023-11-21 7:40 ` Hogander, Jouni
2023-11-21 8:51 ` Ville Syrjälä
2023-11-21 8:57 ` Hogander, Jouni
2023-11-21 9:07 ` Ville Syrjälä
2023-11-20 23:19 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Prepare intel_fb for Xe (rev4) Patchwork
2023-11-20 23:19 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2023-11-20 23:33 ` [Intel-gfx] ✓ Fi.CI.BAT: success " 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=ZVxstRLrEgKTi6HD@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jouni.hogander@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox