From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v2,1/2] drm/vkms: Use alpha for blending in blend() function Date: Fri, 1 Feb 2019 18:15:30 +0100 Message-ID: <20190201171530.GC3271@phenom.ffwll.local> References: <48ecdf48d153d0ca3b954ba737ae9a0b35ef3ad5.1548798106.git.mamtashukla555@gmail.com> <20190131124409.c2dimvn4ztpnp35j@smtp.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x543.google.com (mail-ed1-x543.google.com [IPv6:2a00:1450:4864:20::543]) by gabe.freedesktop.org (Postfix) with ESMTPS id E2B1B6EE9A for ; Fri, 1 Feb 2019 17:15:34 +0000 (UTC) Received: by mail-ed1-x543.google.com with SMTP id p6so6095655eds.0 for ; Fri, 01 Feb 2019 09:15:34 -0800 (PST) Content-Disposition: inline In-Reply-To: <20190131124409.c2dimvn4ztpnp35j@smtp.gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Rodrigo Siqueira Cc: dri-devel@lists.freedesktop.org, Mamta Shukla , hamohammed.sa@gmail.com List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBKYW4gMzEsIDIwMTkgYXQgMTA6NDQ6MDlBTSAtMDIwMCwgUm9kcmlnbyBTaXF1ZWly YSB3cm90ZToKPiBIaSwKPiAKPiBGaXJzdCBvZiBhbGwsIHRoYW5rcyBmb3IgeW91ciBwYXRjaCA6 KQo+IAo+IEkgdGVzdGVkIHlvdXIgcGF0Y2ggYWdhaW5zdCB0aGUgdGVzdHMgdGhhdCB5b3UgaW1w bGVtZW50ZWQgaW4gdGhlIElHVAo+IFsxXS4gQWxsIHRoZSBhbHBoYSB0ZXN0cyBwYXNzZWQsIGJ1 dCB0aGVyZSB3YXMgYSB3ZWlyZCB3YXJuaW5nIHRoYXQKPiBzYXlzOgo+IAo+ICAkIHN1ZG8gSUdU X0ZPUkNFX0RSSVZFUj12a21zIC4vdGVzdHMva21zX2N1cnNvcl9jcmMgLS1ydW4tc3VidGVzdCBj dXJzb3ItYWxwaGEtb3BhcXVlCj4gIElHVC1WZXJzaW9uOiAxLjIzLWc4ZDgxYzJjMiAoeDg2XzY0 KSAoTGludXg6IDUuMC4wLXJjMS1WS01TLVJVTEVTKyB4ODZfNjQpCj4gIEZvcmNlIG9wdGlvbiB1 c2VkOiBVc2luZyBkcml2ZXIgdmttcwo+ICBTdGFydGluZyBzdWJ0ZXN0OiBjdXJzb3ItYWxwaGEt b3BhcXVlCj4gIChrbXNfY3Vyc29yX2NyYzo0MjMpIGlndF9kZWJ1Z2ZzLVdBUk5JTkc6IFdhcm5p bmcgb24gY29uZGl0aW9uIGFsbF96ZXJvIGluIGZ1bmN0aW9uIGNyY19zYW5pdHlfY2hlY2tzLCBm aWxlIC4uL2xpYi9pZ3RfZGVidWdmcy5jOjkwMQo+ICAoa21zX2N1cnNvcl9jcmM6NDIzKSBpZ3Rf ZGVidWdmcy1XQVJOSU5HOiBTdXNwaWNpb3VzIENSQzogQWxsIHZhbHVlcyBhcmUgMC4KCklmIHRo aXMgb25seSBoYXBwZW5zIG9uY2UgdGhlbiBtYXliZSB3ZSBoYXZlIGEgcmFjZSBjb25kaXRpb24g c29tZXdoZXJlIGluCm91ciBDUkMgY29kZS4gT3Igd2UgbmVlZCB0byBzZWVkIGl0IHdpdGggc29t ZXRoaW5nIHRvIGF2b2lkIGEgc2lsbHkgY29ybmVyCmNhc2UuIElmIGl0IGhhcHBlbnMgYWxsIHRo ZSB0aW1lIChpLmUuIGV2ZXJ5IHRpbWUgdGhlIHRlc3QgY2FwdHVyZXMgYSBjcmMpCnRoZW4gdGhl cmUncyBhIGJ1ZyBpbiBvdXIgY3JjIGNvZGUuCi1EYW5pZWwKCj4gIEJlZ2lubmluZyBjdXJzb3It YWxwaGEtb3BhcXVlIG9uIHBpcGUgQSwgY29ubmVjdG9yIFZpcnR1YWwtMgo+ICAKPiAgY3Vyc29y LWFscGhhLW9wYXF1ZSBvbiBwaXBlIEEsIGNvbm5lY3RvciBWaXJ0dWFsLTI6IFBBU1NFRAo+ICAK PiAgU3VidGVzdCBjdXJzb3ItYWxwaGEtb3BhcXVlOiBTVUNDRVNTICgwLjMxNXMpCj4gCj4gRG8g eW91IGtub3cgdGhlIHJlYXNvbiBmb3IgdGhhdD8gQ291bGQgeW91IGRldGFpbCB0aGlzIGlzc3Vl PyBJcyBpdAo+IHBvc3NpYmxlIHRvIGZpeCBpdD8KPiAKPiBZb3UgY2FuIHNlZSB0aGUgb3RoZXIg Y29tbWVudHMgaW5saW5lLgo+IAo+IFsxXSBodHRwczovL3BhdGNod29yay5mcmVlZGVza3RvcC5v cmcvc2VyaWVzLzU1OTQ0Lwo+IAo+IE9uIDAxLzMwLCBNYW10YSBTaHVrbGEgd3JvdGU6Cj4gPiBV c2UgdGhlIGFscGhhIHZhbHVlIHRvIGJsZW5kIHZhZGRyX3NyYyB3aXRoIHZhZGRyX2RzdCBpbnN0 ZWFkCj4gPiBvZiBvdmVyd3JpdGluZyBpdCBpbiBibGVuZCgpLgo+ID4gCj4gPiBTaWduZWQtb2Zm LWJ5OiBNYW10YSBTaHVrbGEgPG1hbXRhc2h1a2xhNTU1QGdtYWlsLmNvbT4KPiA+IC0tLQo+ID4g Y2hhbmdlcyBpbiB2MjoKPiA+IC1Vc2UgbWFjcm8gdG8gYXZvaWQgY29kZSBkdXBsaWNhdGlvbgo+ ID4gLUFkZCBzcGFjZXMgYXJvdW5kICcvJyBhbmQgJy0nCj4gPiAtUmVtb3ZlIHNwYWNlcyBhdCB0 aGUgZW5kIG9mIHRoZSBsaW5lCj4gPiAKPiA+ICBkcml2ZXJzL2dwdS9kcm0vdmttcy92a21zX2Ny Yy5jIHwgMjUgKysrKysrKysrKysrKysrKysrKysrKystLQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCAy MyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+ID4gCj4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3ZrbXMvdmttc19jcmMuYyBiL2RyaXZlcnMvZ3B1L2RybS92a21zL3ZrbXNf Y3JjLmMKPiA+IGluZGV4IDlkOWU4MTQ2ZGI5MC4uZGM2Y2I0YzJjY2VkIDEwMDY0NAo+ID4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL3ZrbXMvdmttc19jcmMuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL3ZrbXMvdmttc19jcmMuYwo+ID4gQEAgLTUsNiArNSw4IEBACj4gPiAgI2luY2x1ZGUgPGRy bS9kcm1fYXRvbWljX2hlbHBlci5oPgo+ID4gICNpbmNsdWRlIDxkcm0vZHJtX2dlbV9mcmFtZWJ1 ZmZlcl9oZWxwZXIuaD4KPiA+ICAKPiA+ICsjZGVmaW5lIEJJVFNISUZUKHZhbCxpKSAgKHU4KSgo Kih1MzIgKikodmFsKSkgPj4gaSAmIDB4ZmYpCj4gCj4gLSBUYWtlIGNhcmUgd2l0aCB0aGUgbWFj cm9zIGRlZmluaXRpb24sIHNpbmNlIHlvdSBjYW4gY3JlYXRlIGEgcHJlY2VkZW5jZQo+ICAgcHJv YmxlbS4gRm9yIGV4YW1wbGUsIGhlcmUsIHlvdSBkaWRuJ3Qgc3Vycm91bmQg4oCcaeKAnSB3aXRo IOKAnCgp4oCdLgo+IC0gQXQgdGhlIGVuZCBvZiB0aGlzIG9wZXJhdGlvbiB5b3UgY2FzdCBhbGwg dGhlIHZhbHVlIHRvIHU4LiBJbiB0aGlzCj4gICBzZW5zZSwgd2h5IGRvIHlvdSBuZWVkIHRoZSAw eGZmIGluIHRoZSBlbmQ/Cj4gLSBJ4oCZbSB3b3JyaWVkIGFib3V0IHRoZSBsaXR0bGUgYW5kIGJp ZyBlbmRpYW4gaXNzdWVzIGhlcmUuIElmIEkKPiAgIHVuZGVyc3Rvb2Qgd2VsbCwgdGhpcyBtYWNy byBjb3VsZCBmYWlsIG9uIGEgYmlnLWVuZGlhbiBlbnZpcm9ubWVudC4gSXMgaXQKPiAgIHJpZ2h0 PyBEaWQgSSBtaXNzIHNvbWV0aGluZz8gQ291bGQgeW91IGV4cGxhaW4gdG8gbWUgd2hhdCBnb2lu ZyB0bwo+ICAgaGFwcGVuIGluIHRoZSBiaWcgYW5kIGVuZGlhbiBjYXNlPwo+IC0gRmluYWxseSwg ZGlkIHlvdSB0YWtlIGEgbG9vayBhdCDigJxpbmNsdWRlL2xpbnV4L2JpdG9wcy5o4oCdIGFuZAo+ ICAg4oCcaW5jbHVkZS9saW51eC9rZXJuZWwuaOKAnT8gVGhlc2UgaGVhZGVycyBoYXZlIGEgYnVu Y2ggb2YgdXNlZnVsIG1hY3Jvcwo+ICAgYW5kIGZ1bmN0aW9uczsgcHJvYmFibHkgeW91IGNhbiBm aW5kIHNvbWV0aGluZyB1c2VmdWwgZm9yIHlvdSBpbiB0aGlzCj4gICBmaWxlLiAKPiAKPiA+ICsK PiA+ICAvKioKPiA+ICAgKiBjb21wdXRlX2NyYyAtIENvbXB1dGUgQ1JDIHZhbHVlIG9uIG91dHB1 dCBmcmFtZQo+ID4gICAqCj4gPiBAQCAtNzEsNiArNzMsOSBAQCBzdGF0aWMgdm9pZCBibGVuZCh2 b2lkICp2YWRkcl9kc3QsIHZvaWQgKnZhZGRyX3NyYywKPiA+ICAJaW50IHlfbGltaXQgPSB5X3Ny YyArIGhfZHN0Owo+ID4gIAlpbnQgeF9saW1pdCA9IHhfc3JjICsgd19kc3Q7Cj4gPiAgCj4gPiAr CXU4IGFscGhhLCByX3NyYywgcl9kc3QsIGdfc3JjLCBnX2RzdCwgYl9zcmMsIGJfZHN0Owo+ID4g Kwl1OCByX2FscGhhLCBnX2FscGhhLCBiX2FscGhhOwo+ID4gKwo+ID4gIAlmb3IgKGkgPSB5X3Ny YywgaV9kc3QgPSB5X2RzdDsgaSA8IHlfbGltaXQ7ICsraSkgewo+ID4gIAkJZm9yIChqID0geF9z cmMsIGpfZHN0ID0geF9kc3Q7IGogPCB4X2xpbWl0OyArK2opIHsKPiA+ICAJCQlvZmZzZXRfZHN0 ID0gY3JjX2RzdC0+b2Zmc2V0Cj4gPiBAQCAtNzksOSArODQsMjUgQEAgc3RhdGljIHZvaWQgYmxl bmQodm9pZCAqdmFkZHJfZHN0LCB2b2lkICp2YWRkcl9zcmMsCj4gPiAgCQkJb2Zmc2V0X3NyYyA9 IGNyY19zcmMtPm9mZnNldAo+ID4gIAkJCQkgICAgICsgKGkgKiBjcmNfc3JjLT5waXRjaCkKPiA+ ICAJCQkJICAgICArIChqICogY3JjX3NyYy0+Y3BwKTsKPiA+ICsJCQkKPiA+ICsJCQkvKkN1cnJl bnRseSBoYW5kbGVzIGFscGhhIHZhbHVlcyBmb3IgZnVsbHkgb3BhcXVlIG9yIGZ1bGx5IHRyYW5z cGFyZW50Ki8KPiA+ICsJCQlhbHBoYSA9ICh1OCkoKCoodTMyICopdmFkZHJfc3JjICsgb2Zmc2V0 X3NyYykgPj4gMjQpOwo+ID4gKwkJCWFscGhhID0gYWxwaGEgLyAyNTU7Cj4gPiArCQkJcl9zcmMg PSBCSVRTSElGVCh2YWRkcl9zcmMgKyBvZmZzZXRfc3JjLCAxNik7Cj4gPiArCQkJZ19zcmMgPSBC SVRTSElGVCh2YWRkcl9zcmMgKyBvZmZzZXRfc3JjLCA4KTsKPiA+ICsJCQliX3NyYyA9IEJJVFNI SUZUKHZhZGRyX3NyYyArIG9mZnNldF9zcmMsIDApOwo+IAo+IElmIEkgY29ycmVjdGx5IHVuZGVy c3Rvb2QsIHlvdSBoYXZlIGFuIHUzMiB2YWx1ZXMgd2hpY2ggZ2F2ZSB5b3UgNAo+IGJ5dGVzOyBi ZWNhdXNlIG9mIHRoaXMsIHlvdSBoYXZlIG9uZSBieXRlIGZvciBSZWQsIEdyZWVuLCBCbHVlLCBh bmQKPiBBbHBoYS4gVGhlIGFib3ZlIG9wZXJhdGlvbnMgZXh0cmFjdHMgZWFjaCB2YWx1ZSwgb25l IGJ5IG9uZS4gSW4gdGhpcwo+IHNlbnNlLCB3aHkgZG8gd2UgbmVlZCBhbGwgb2YgdGhpcyBiaXR3 aXNlIG9wZXJhdGlvbiBzaW5jZSB5b3UgY2FuIGFjY2Vzcwo+IGl0IGFzIGFuIGFycmF5IG9mIGNo YXJzPyBTb21ldGhpbmcgbGlrZSB0aGlzIChkcmFmdCBhbGVydCk6Cj4gCj4gICAgIGNoYXIgKmN1 cnNvcl9hZGRyID0gKGNoYXIqKXZhZGRyX3NyYyArIG9mZnNldF9zcmM7Cj4gICAgIHJfc3JjID0g Y3Vyc29yX2FkZHJbMl07Cj4gICAgIGdfc3JjID0gY3Vyc29yX2FkZHJbMV07Cj4gICAgIGJfc3Jj ID0gY3Vyc29yX2FkZHJbMF07Cj4gICAgIC4uLgo+IAo+IFRoZXJlJ3MgYW55IHJlc3RyaWN0aW9u IGZvciB0aGF0PyBJcyBpdCByZWxhdGVkIHRvIHRoZSBiaWcgYW5kIGxpdHRsZQo+IGVuZGlhbiBp c3N1ZT8gRmluYWxseSwgaXMgaXQgb2sgdG8gbWFrZSBwb2ludGVyIG9wZXJhdGlvbiB3aXRoIHZv aWQqIGluCj4gdGhlIGtlcm5lbD8KPiAKPiA+ICsJCQlyX2RzdCA9IEJJVFNISUZUKHZhZGRyX2Rz dCArIG9mZnNldF9kc3QsIDE2KTsKPiA+ICsJCQlnX2RzdCA9IEJJVFNISUZUKHZhZGRyX2RzdCAr IG9mZnNldF9kc3QsIDgpOwo+ID4gKwkJCWJfZHN0ID0gQklUU0hJRlQodmFkZHJfZHN0ICsgb2Zm c2V0X2RzdCwgMCk7Cj4gPiArCj4gPiArCQkJLypQcmUtbXVsdGlwbGllZCBhbHBoYSBmb3IgYmxl bmRpbmcgKi8KPiA+ICsJCQlyX2FscGhhID0gKHJfc3JjKSArIChyX2RzdCAqICgxIC0gYWxwaGEp KTsKPiA+ICsJCQlnX2FscGhhID0gKGdfc3JjKSArIChnX2RzdCAqICgxIC0gYWxwaGEpKTsKPiA+ ICsJCQliX2FscGhhID0gKGJfc3JjKSArIChiX2RzdCAqICgxIC0gYWxwaGEpKTsKPiA+ICsJCQlt ZW1zZXQodmFkZHJfZHN0ICsgb2Zmc2V0X2RzdCwgYl9hbHBoYSwgc2l6ZW9mKHU4KSk7Cj4gPiAr CQkJbWVtc2V0KHZhZGRyX2RzdCArIG9mZnNldF9kc3QgKyAxLCBnX2FscGhhLCBzaXplb2YodTgp KTsKPiA+ICsJCQltZW1zZXQodmFkZHJfZHN0ICsgb2Zmc2V0X2RzdCArIDIsIHJfYWxwaGEsIHNp emVvZih1OCkpOwo+IAo+IElNSE8sIEkgcHJlZmVyIHRvIG1vdmUgYWxsIGFib3ZlIGFscGhhIG9w ZXJhdGlvbnMgZm9yIGFuIGlubGluZSBmdW5jdGlvbgo+IG9uIHRvcCBvZiDigJxibGVuZCgp4oCd IHdpdGggdGhlIGdvYWwgb2YgaW1wcm92ZSB0aGUgY29kZSByZWFkYWJpbGl0eS4gCj4gICAKPiA+ IC0JCQltZW1jcHkodmFkZHJfZHN0ICsgb2Zmc2V0X2RzdCwKPiA+IC0JCQkgICAgICAgdmFkZHJf c3JjICsgb2Zmc2V0X3NyYywgc2l6ZW9mKHUzMikpOwo+ID4gIAkJfQo+ID4gIAkJaV9kc3QrKzsK PiA+ICAJfQo+ID4gLS0gCj4gPiAyLjE3LjEKPiA+IAo+IAo+IEZpbmFsbHksIHlvdXIgcGF0Y2gg aW50cm9kdWNlcyBzb21lIGNoZWNrcGF0Y2ggd2FybmluZ3MgYW5kIGVycm9ycy4gSQo+IGhpZ2hs eSByZWNvbW1lbmQgeW91IHRvIHVzZSBjaGVja3BhdGNoIGluIHlvdXIgcGF0Y2hlcyBiZWZvcmUg eW91IHNlbmQKPiBpdC4gSW4gdGhlIGxpbmsgYmVsb3cgWzJdLCB0aGVyZeKAmXMgYSBzZWN0aW9u IG5hbWVkIOKAnEdpdCBwb3N0LWNvbW1pdAo+IGhvb2tz4oCdOyB0YWtlIGEgbG9vayBhdCBpdC4K PiAKPiBbMl0gaHR0cHM6Ly9rZXJuZWxuZXdiaWVzLm9yZy9GaXJzdEtlcm5lbFBhdGNoCj4gCj4g QWdhaW4sIHRoYW5rcyBmb3IgeW91ciBwYXRjaC4KPiBCZXN0IFJlZ2FyZHMKPiAKPiAtLSAKPiBS b2RyaWdvIFNpcXVlaXJhCj4gaHR0cHM6Ly9zaXF1ZWlyYS50ZWNoCj4gR3JhZHVhdGUgU3R1ZGVu dAo+IERlcGFydG1lbnQgb2YgQ29tcHV0ZXIgU2NpZW5jZQo+IFVuaXZlcnNpdHkgb2YgU8OjbyBQ YXVsbwoKCgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9y YXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vZHJpLWRldmVsCg==