From mboxrd@z Thu Jan 1 00:00:00 1970 From: Damien Lespiau Subject: Re: [PATCH 3/4] drm/i915: Enabling pre-multiplied alpha drm property Date: Thu, 20 Mar 2014 11:38:18 +0000 Message-ID: <20140320113818.GL6912@strange.amr.corp.intel.com> References: <1394266879-20522-1-git-send-email-sagar.a.kamble@intel.com> <1394266879-20522-4-git-send-email-sagar.a.kamble@intel.com> <20140319151008.GB27717@strange.amr.corp.intel.com> <1395309582.2740.9.camel@sagar-desktop> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 8ECFE6E02E for ; Thu, 20 Mar 2014 04:38:20 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1395309582.2740.9.camel@sagar-desktop> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Sagar Arun Kamble Cc: David Airlie , Daniel Vetter , intel-gfx@lists.freedesktop.org, "Srinivas, Vidya" List-Id: intel-gfx@lists.freedesktop.org On Thu, Mar 20, 2014 at 03:29:42PM +0530, Sagar Arun Kamble wrote: > Hi Damien, > > On Wed, 2014-03-19 at 15:10 +0000, Damien Lespiau wrote: > > On Sat, Mar 08, 2014 at 01:51:18PM +0530, sagar.a.kamble@intel.com wrote: > > > From: Sagar Kamble > > > > > > This patch enables property for changin the pixel format > > > of plane to enable/disable pre-multiplied alpha format. > > > Client has to set BIT(DRM_BLEND_PREMULTIPLIED_ALPHA) | 0x0/0x1 > > > to disable/enable pre-multiplied alpha format. > > > > > > Cc: Daniel Vetter > > > Cc: Jani Nikula > > > Cc: David Airlie > > > Signed-off-by: Srinivas, Vidya > > > Signed-off-by: Sagar Kamble > > > > Huum, the alpha being premultiplied or not seems to be a property of the > > framebuffer to me, not of the plane. It seems to me that we should > > define alternative premultiplied DRM_FORMATs and make the sprite planes > > advertise support for premultiplied fbs in the format list when the > > hardware indeed supports them. > This is what i think of usage of this property: > > Composer/user mode starts using plane with XRGB format and then it wants > to add transparency to the plane. So it will set the format to ARGB > format and provide buffer for that plane that will have pixels with > pre-multiplied alpha (a*r, a*g, a*b, a). > This can be done with primary plane(CRTC) as well, however I have > not added this as CRTC property since CRTCs are going to be drm_plane > soon. > > Will this kind of interface for usermode to toggle the pixel format's > alpha be useful? I don't think so, nop. Besides being a convoluted apocalyptic scenario, one cannot simply change the format of the FB without re-adding it with AddFB2(). There's a usage model for the compositor to add a plane-global alpha to a plane (fades the client provided render target) and that's indeed a plane property. As far I as can tell, the premultiplied alpha format ban be sued support scanning out OpenGL blended fbs. -- Damien