All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Ayan Halder <ayan.halder@arm.com>
Cc: airlied@linux.ie, liviu.dudau@arm.com,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	daniel.vetter@intel.com, maxime.ripard@free-electrons.com,
	nd@arm.com
Subject: Re: [PATCH] drm: add drm_format_alpha_bits
Date: Fri, 12 Jan 2018 17:53:33 +0200	[thread overview]
Message-ID: <20180112155333.GD10981@intel.com> (raw)
In-Reply-To: <20180112154349.GE16548@arm.com>

On Fri, Jan 12, 2018 at 03:43:49PM +0000, Ayan Halder wrote:
> On Fri, Jan 12, 2018 at 04:28:34PM +0200, Ville Syrj?l? wrote:
> > On Fri, Jan 12, 2018 at 02:21:16PM +0000, Ayan Halder wrote:
> > > drm_format_info does not describe the number of bits used for the alpha
> > > channel. That information is useful in a central place like drm_fourcc.c
> > > where it can be queried by the drivers that want to determine if 'alpha
> > > blending' is to be enabled or not.
> > > 
> > > Signed-off-by: Ayan Kumar Halder <ayan.halder@arm.com>
> > > Reviewed-by: Liviu Dudau <liviu.dudau@arm.com>
> > > ---
> > >  drivers/gpu/drm/drm_fourcc.c | 154 ++++++++++++++++++++++++-------------------
> > >  include/drm/drm_fourcc.h     |   3 +
> > >  2 files changed, 89 insertions(+), 68 deletions(-)
> > > 
> > > diff --git a/drivers/gpu/drm/drm_fourcc.c b/drivers/gpu/drm/drm_fourcc.c
> > > index 9c0152d..073001b 100644
> > > --- a/drivers/gpu/drm/drm_fourcc.c
> > > +++ b/drivers/gpu/drm/drm_fourcc.c
> > <snip>
> > > @@ -348,3 +348,21 @@ int drm_format_plane_height(int height, uint32_t format, int plane)
> > >  	return height / info->vsub;
> > >  }
> > >  EXPORT_SYMBOL(drm_format_plane_height);
> > > +
> > > +/**
> > > + * drm_format_alpha_bits - get the number of bits per pixel
> > > + * representing alpha for format
> > > + * @format: pixel format (DRM_FORMAT_*)
> > > + *
> > > + * Returns:
> > > + * The number of bits per pixel representing alpha used by the
> > > + * specified pixel format.
> > > + */
> > > +int drm_format_alpha_bits(uint32_t format)
> > > +{
> > > +	const struct drm_format_info *info;
> > > +
> > > +	info = drm_format_info(format);
> > > +	return info ? info->alpha : 0;
> > > +}
> > > +EXPORT_SYMBOL(drm_format_alpha_bits);
> > 
> > Do you have an actual use for this function somewhere?
> Currently, we do not have a usage for this function.

No point in adding the function then IMO.

> We need 'alpha'
> field for each entry in 'drm_format_info' so as to determine whether
> to enable/disable alpha blending in Mali display processor for the
> particular color format. 

I think that's OK. Not sure if it really helps much though since you
generally have to configure other things based on the format as well, so
I would expect almost everyone will end up with some kind of
swicth/table to configure the hardware based on the format. Based on a
quick look this doesn't really help i915 at least.

> > 
> > > diff --git a/include/drm/drm_fourcc.h b/include/drm/drm_fourcc.h
> > > index 6942e84..5513510 100644
> > > --- a/include/drm/drm_fourcc.h
> > > +++ b/include/drm/drm_fourcc.h
> > > @@ -38,6 +38,7 @@ struct drm_mode_fb_cmd2;
> > >   * @cpp: Number of bytes per pixel (per plane)
> > >   * @hsub: Horizontal chroma subsampling factor
> > >   * @vsub: Vertical chroma subsampling factor
> > > + * @alpha: Number of bits per pixel representing alpha
> > >   */
> > >  struct drm_format_info {
> > >  	u32 format;
> > > @@ -46,6 +47,7 @@ struct drm_format_info {
> > >  	u8 cpp[3];
> > >  	u8 hsub;
> > >  	u8 vsub;
> > > +	u8 alpha;
> > >  };
> > >  
> > >  /**
> > > @@ -57,6 +59,7 @@ struct drm_format_name_buf {
> > >  };
> > >  
> > >  const struct drm_format_info *__drm_format_info(u32 format);
> > > +int drm_format_alpha_bits(u32 format);
> > >  const struct drm_format_info *drm_format_info(u32 format);
> > >  const struct drm_format_info *
> > >  drm_get_format_info(struct drm_device *dev,
> > > -- 
> > > 2.7.4
> > > 
> > > _______________________________________________
> > > dri-devel mailing list
> > > dri-devel@lists.freedesktop.org
> > > https://lists.freedesktop.org/mailman/listinfo/dri-devel
> > 
> > -- 
> > Ville Syrj??l??
> > Intel OTC
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2018-01-12 15:53 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-12 14:21 [PATCH] drm: add drm_format_alpha_bits Ayan Halder
2018-01-12 14:21 ` Ayan Halder
2018-01-12 14:28 ` Ville Syrjälä
2018-01-12 14:28   ` Ville Syrjälä
2018-01-12 15:43   ` Ayan Halder
2018-01-12 15:51     ` Maxime Ripard
2018-01-12 16:18       ` Ayan Halder
2018-01-12 16:18         ` Ayan Halder
2018-01-12 15:53     ` Ville Syrjälä [this message]
2018-01-12 16:11       ` Ayan Halder
2018-01-12 16:25         ` Ville Syrjälä
2018-01-12 16:25           ` Ville Syrjälä

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=20180112155333.GD10981@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=airlied@linux.ie \
    --cc=ayan.halder@arm.com \
    --cc=daniel.vetter@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=liviu.dudau@arm.com \
    --cc=maxime.ripard@free-electrons.com \
    --cc=nd@arm.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.