From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [RFC] handling of alpha mode (pre-multiplied/straight) in ARGB modes Date: Mon, 11 Jan 2016 16:07:50 +0100 Message-ID: <20160111150749.GY8076@phenom.ffwll.local> References: <5693B9C4.2040209@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f68.google.com (mail-wm0-f68.google.com [74.125.82.68]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4BF236E38F for ; Mon, 11 Jan 2016 07:07:50 -0800 (PST) Received: by mail-wm0-f68.google.com with SMTP id l65so26678567wmf.3 for ; Mon, 11 Jan 2016 07:07:50 -0800 (PST) Content-Disposition: inline In-Reply-To: <5693B9C4.2040209@samsung.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Marek Szyprowski Cc: Bartlomiej Zolnierkiewicz , DRI mailing list List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBKYW4gMTEsIDIwMTYgYXQgMDM6MTg6NDRQTSArMDEwMCwgTWFyZWsgU3p5cHJvd3Nr aSB3cm90ZToKPiBEZWFyIEFsbCwKPiAKPiBJIHdvdWxkIGxpa2UgdG8gYWRkIHN1cHBvcnQgZm9y IGNvbmZpZ3VyaW5nIGFscGhhIG1vZGVzOiBzdHJhaWdodCBhbmQKPiBwcmUtbXVsdGlwbGllZCBm b3IgYmxlbmRpbmcgdG8gRXh5bm9zIERSTSBkcml2ZXIuIEZvciB0aG9zZSB3aG8gc2VlIHRob3Nl Cj4gdGVybXMgZm9yIHRoZSBmaXJzdCB0aW1lOgo+IDEuIHN0cmFpZ2h0IGFscGhhIG1vZGUgbWVh bnMgbWVhbnMgdGhhdCBhbGwgQSBhbmQgUkdCIHZhbHVlcyBhcmUgZnJvbSBmdWxsCj4gMC4yNTUg cmFuZ2UsCj4gMi4gcHJlLW11bHRpcGxpZWQgYWxwaGEgbW9kZSBtZWFucyB0aGF0IEEgaXMgZnJv bSAwLi4yNTUgcmFuZ2UgYW5kIFJHQgo+IHZhbHVlcyBhcmUgc2NhbGVkIHRvIDAuLkFMUEhBIHJh bmdlICh3aGVyZSBBTFBIQSBpcyB0aGUgQSB2YWx1ZSBmb3IgdGhlCj4gZ2l2ZW4gcGl4ZWwpLgo+ IFRoZSBwcmUtbXVsdGlwbGllZCBtb2RlIGlzIHF1aXRlIGNvbW1vbiBpbiB0ZXh0dXJlIHByb2Nl c3NpbmcuCj4gCj4gSSBkaWQgYSBsaXR0bGUgcmVzZWFyY2ggYW5kIGZvdW5kIHRoYXQgdGhlcmUg aXMgbm8gY29tbW9uIGFwcHJvYWNoIGZvcgo+IGRlZmluaW5nIHN0cmFpZ2h0IG9yIHByZS1tdWx0 aXBsaWVkIGFscGhhIG1vZGVzIGZvciBBUkdCIGZyYW1lYnVmZmVycy4KPiAKPiBGcm9tIHJlYWRp bmcgdGhlIHNvdXJjZXMgYW5kIHRoZSByZWdpc3RlciBuYW1lcyBJIGZvdW5kIHRoYXQgZm9sbG93 aW5nCj4gZHJpdmVycyB1c2UgcHJlLW11bHRpcGxpZWQgbW9kZXMgZm9yIEFSR0IgZnJhbWVidWZm ZXJzOgo+IHJhZGVvbiAoYXQgbGVhc3QgZm9yIEFSR0IgY3Vyc29ycyksCj4gYW1kZ3B1IChjdXJz b3IpLAo+IGludGVsIChhbGwgQVJHQiBwbGFuZXMpLAo+IHJvY2sgY2hpcC4KPiAKPiBPbiB0aGUg b3RoZXIgaGFuZCwgdGhlcmUgYXJlIGRybSBkcml2ZXJzIHdoaWNoIHN1cHBvcnQgQVJHQiBtb2Rl cyBhbmQgdXNlCj4gc3RyYWlnaHQgYWxwaGEgbW9kZXM6Cj4gb21hcCwKPiBtc20uCj4gCj4gRm9y IHRoZSByZXN0IG9mIGRyaXZlcnMsIHdoaWNoIG1pZ2h0IGRlYWwgd2l0aCBwZXItcGl4ZWwgYWxw aGEsIEkgd2FzIG5vdAo+IGFibGUgdG8gZGV0ZXJtaW5lIGZyb20gdGhlIGNvZGUgaWYgdGhlIHBp eGVsIFJHQiB2YWx1ZXMgYXJlIGludGVycHJldGVkIGFzCj4gcGVyLW11bHRpcGxpZWQgb3Igc3Ry YWlnaHQ6Cj4gYXRtZWxfaGxjZGMsCj4gc3RpLAo+IG1kcDUsCj4gc2htb2JpbGUsCj4gcmNhciwK PiB2YzQsCj4gaW14LgoKSW1vIGluIGNhc2Ugb2YgZG91YnQvbWl4ZWQgZGVmaW5pdGlvbnMgdGhl IHNlbWFudGljcyBvZiB0aGUgYmlnIGRlc2t0b3AKZHJpdmVycyBzaG91bGQgd2luLiBUcnVlIGdl bmVyaWMgdXNlcnNwYWNlIGlzIG1vc3QgbGlrZWx5IGRldmVsb3BlZCBvbgp0aG9zZSwgZXZlcnl0 aGluZyBlbHNlIHNob3VsZCBqdXN0IGFkanVzdC4gQW5kIGluIG1vc3QgY2FzZXMgd2UgY2FuIGdl dAphd2F5IHdpdGggdGhhdCBvbiBhcm0gZHJpdmVycyBzaW5jZSB0aGV5IHRlbmQgdG8gc2hpcCB1 c2Vyc3BhY2UgYW5kIGtlcm5lbAppbiBsb2Nrc3RlcC4gQXQgbGVhc3Qgd2hlcmUgaXQgcmVhbGx5 IG1hdHRlcnMuCgo+IEV4eW5vcyBEUk0gZHJpdmVyIG5vdyBtaXhlcyBwcmUtbXVsdGlwbGllZCBh bmQgc3RyYWlnaHQgbW9kZXMsIGRlcGVuZGluZyBvbgo+IHRoZSBDUlRDIHN1Yi1kcml2ZXIuCj4g Cj4gV2hpbGUgY2hlY2tpbmcgdGhlIGNvZGUgSSBmb3VuZCBhIGZvbGxvd2luZyBjb21tZW50IGlu Cj4gZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGluIHNrbF9wbGFuZV9jdGxfZm9ybWF0KCkgZnVu Y3Rpb246Cj4gLyoKPiAgKiBYWFg6IEZvciBBUkJHL0FCR1IgZm9ybWF0cyB3ZSBkZWZhdWx0IHRv IGV4cGVjdGluZyBzY2Fub3V0IGJ1ZmZlcnMKPiAgKiB0byBiZSBhbHJlYWR5IHByZS1tdWx0aXBs aWVkLiBXZSBuZWVkIHRvIGFkZCBhIGtub2IgKG9yIGEgZGlmZmVyZW50Cj4gICogRFJNX0ZPUk1B VCkgZm9yIHVzZXItc3BhY2UgdG8gY29uZmlndXJlIHRoYXQuCj4gICovCj4gCj4gVGhlIHF1ZXN0 aW9uIGlzIGhvdyB0byBjbGVhbnVwIHRoaXMgYW1iaWd1aXRpZXMgYW5kIGxldCBnZW5lcmljIHVz ZXJzcGFjZSB0bwo+IHByb3Blcmx5IHVzZSBBUkdCL0FSR0IgbW9kZXMgd2l0aCBwcm9wZXIgYmxl bmRpbmcgbW9kZS4gSSBjYW1lIHVwIHdpdGggdGhlCj4gZm9sbG93aW5nIDMgc29sdXRpb25zOgo+ IAo+IDEuIERlZmluZSBuZXcgZm91cmNjIHZhbHVlcyBmb3IgcHJlLW11bHRpcGxpZWQgKG9yL2Fu ZCBzdHJhaWdodCkgYWxwaGEKPiBtb2RlcywKPiAyLiBJbnRyb2R1Y2UgYSBuZXcgZnJhbWVidWZm ZXIgZmxhZyBmb3IgcHJlLW11bHRpcGxpZWQgb3Igc3RyYWlnaHQgYWxwaGEgKG9yCj4gYm90aCks Cj4gMy4gSW50cm9kdWNlIGEgbmV3IHBsYW5lIHByb3BlcnR5IGZvciBjb250cm9sbGluZyBhbHBo YSBibGVuZGluZyBtb2RlLgo+IAo+IFRoZSBmaXJzdCBzb2x1dGlvbiBoYXMgc2VyaW91cyBjb21w YXRpYmlsaXR5IHByb2JsZW0sIGJlY2F1c2Ugd2UgY2FuIGVpdGhlcgo+IG1hcCBleGlzdGluZyBm b3VyY2MgdG8gcHJlLW11bHRpcGxpZWQgKHRvIGZvbGxvdyByYWRlb24vYW1kZ3B1LCBpbnRlbCBh bmQKPiByb2NrY2hpcCBiZWhhdmlvcikgb3Igc3RyYWlnaHQgbW9kZS4gQm90aCB3YXlzIGl0IHdp bGwgYnJlYWsgc29tZSBleGlzdGluZwo+IGFwcGxpY2F0aW9ucy4gVG8gYXZvaWQgY29tcGF0aWJp bGl0eSBwcm9ibGVtIHdlIHdvdWxkIG5lZWQgdG8gYWRkIDIgbW9yZQo+IHNldHMgb2YgZm91cmNj IGFuZCBsZWF2ZSBleGlzdGluZyBBUkdCIG1vZGVzIGFzICdkcml2ZXIgZGVwZW5kZW50Jy4KPiAK PiBUaGUgc2Vjb25kIHNvbHV0aW9uIGlzIHByb2JhYmx5IGEgYml0IGxlc3MgaW50cnVzaXZlLCBi dXQgaXQgc3VmZmVycyBmb3IgdGhlCj4gc2ltaWxhciBjb21wYXRpYmlsaXR5IHByb2JsZW0uIFRv IG1ha2UgdGhpcyBmZWF0dXJlIGNvbXBhdGlibGUgd2l0aCBleGlzdGluZwo+IGNvZGUsIHByb2Jh Ymx5IDIgZmxhZ3Mgd2lsbCBiZSBuZWVkZWQ6IERSTV9NT0RFX0ZCX0FMUEhBX0ZPUkNFX1BSRU1V TFRJUExJRUQKPiBhbmQgRFJNX01PREVfRkJfQUxQSEFfRk9SQ0VfU1RSQUlHSFQuIFRoaXMgd2F5 IHdoZW4gdXNlcnNwYWNlIHByb3ZpZGVzIG5vCj4gZmxhZywgdGhlIGRyaXZlciBjYW4gdXNlIGl0 cyBkZWZhdWx0IG1vZGUuCj4gCj4gVGhpcmQgc29sdXRpb24gKGFkZGl0aW9uYWwgcGxhbmUgcHJv cGVydHkpIGhhcyBiZWVuIGFscmVhZHkgcHJvcG9zZWQ6Cj4gaHR0cHM6Ly9sa21sLm9yZy9sa21s LzIwMTUvNi8xOS8zMzAsIGhvd2V2ZXIgSSBmb3VuZCBubyBmb2xsb3ctdXAgbm9yCj4gY29tbWVu dHMuIFNlcGFyYXRlIHByb3BlcnR5IGxldHMgYXQgbGVhc3QgZHJpdmVycyB0byBub3RpZnkgdXNl cnNwYWNlIGFib3V0Cj4gZHJpdmVyJ3MgZGVmYXVsdCBhbHBoYSBtb2RlIGFuZCBsZXRzIGdlbmVy aWMgYXBwbGljYXRpb24gdG8gcHJvcGVybHkgc2V0IHRoZQo+IHJlcXVlc3RlZCBtb2RlLiBUaGUg b25seSBwcm9ibGVtIGlzIHRoYXQgdGhlIGFscGhhIG1vZGUgaXMgbm90IGRpcmVjdGx5Cj4gY29u ZmlndXJlZCBvbiB0aGUgZnJhbWVidWZmZXIgb2JqZWN0LCB3aGVyZSBpbiBteSBvcGluaW9uIGl0 IHNob3VsZCBiZQo+IHN0b3JlZC4KPiAKPiBQbGVhc2UgbGV0IG1lIGtub3cgd2hpY2ggYXBwcm9h Y2ggWW91IGxpa2UgYmVzdCBhbmQgd2hpY2ggc2hvdWxkIEkgdGFrZSBmb3IKPiBpbnRyb2R1Y2lu ZyBnZW5lcmljIHdheSBvZiBjb25maWd1cmluZyBhbHBoYSBtb2RlLgoKT25lIGlkZWEgdGhhdCB3 YXMgdG9zc2VkIGFyb3VuZCBhIGZldyB0aW1lcyBpcyB0byBnbyBmdWxsIGdlbmVyaWMgYW5kCmlt cGxlbWVudCBzb21ldGhpbmcgbGlrZSBnbEJsZW5kRnVuYyBmb3IgcGxhbmVzLCBleGNlcHQgdGhh dCB3ZSdkIGFsc28KcHJlLW11bHRpcGxpZWQvc3RyYWlnaHQgdmVyc2lvbnMgd2hlcmUgaXQgbWFr ZXMgc2Vuc2UuIEZvciBkcml2ZXJzIHRoYXQKY2FuJ3Qgc3VwcG9ydCBwcmUtbXVsdGlwbGllZCBh bHBoYSB0aGV5IGNvdWxkIHNpbXBseSBsZWF2ZSBvdXQgdGhlc2UKdmFsdWVzIGZyb20gdGhlIGJs ZW5kLWZ1bmMgcHJvcGVydHkgKGxpa2Ugd2UgYWxyZWFkeSBhbGxvdyB3aXRoIGUuZy4Kcm90YXRp b24sIHdoZW4gYSBkcml2ZXIgY2FuJ3QgZG8gOTAvMjcwwrApLgoKV3J0IGJhY2t3YXJkcyBjb21w YXQgYSBwcm9wZXJ0eSB3b3VsZCB3b3JrIHdlbGwgdG9vOiBJZiBpdCdzIG5vdCB0aGVyZQp0aGVu IHVzZXJzcGFjZSBzaG91bGQgYXNzdW1lIG9sZCBiZWhhdmlvdXIgKHdoaWNoIHNob3VsZCBiZSBw cmUtbXVsdGlwbGllZApyZWFsbHksIGJ1dCBtaWdodCBiZSBzb21ld2hhdCBicm9rZW4gb24gc29t ZSBkcml2ZXJzL2tlcm5lbCkuCgpEYW1pZW4gaGFkIHNvbWUgUkZDIGFib3V0IGFsbCB0aGlzIHdh eSBiYWNrLCBidXQgY2FuJ3QgZmluZCBpdCByaWdodCBub3cuCi1EYW5pZWwKLS0gCkRhbmllbCBW ZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZm d2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==